Instagram Scraper Pro
Pricing
from $0.01 / verified instagram profile intelligence
Instagram Scraper Pro
Extract Instagram profiles, posts, stories, hashtags, and engagement metrics. Influencer research and social media analytics without an API key.
Pricing
from $0.01 / verified instagram profile intelligence
Rating
1.0
(1)
Developer
AutomateLab
Actor stats
2
Bookmarked
104
Total users
5
Monthly active users
4 days ago
Last modified
Categories
Share
AI AUTOMATION SOCIAL_MEDIA BUSINESS_INTELLIGENCE LEAD_GENERATION
Influencer ROI Auditor: Deep Instagram business intelligence for OpenClaw agents
Description
Influencer ROI Auditor: Deep Instagram business intelligence for OpenClaw agents. Extract engagement rates, verified emails, and brand DNA with 90% cost savings. No API key required.
Features
- Business intelligence and engagement analytics
- CRM-ready export formats including Salesforce, HubSpot, CSV, and Markdown
- Comment extraction and sentiment analysis
- Contains the Actor's definition and input/output schemas.
- Follower metrics and growth rate tracking
- Memory-optimized extraction pipeline
- Multi-target batch extraction
- Pay-per-event billing with no charge for empty results
- Premium residential proxy support for maximum success rate
- Smoke test and AI agent handshake for availability checks
- [2026-03-12] โ outputSchema description added (spec-005)
How It Works
- Configuration Node - Contains the Actor's definition and input/output schemas. ---
Quick Start
# Run via Apify APIapify run -a red.cars/instagram-scraper-pro# Or configure input and click Run on:# https://apify.com/red.cars/instagram-scraper-pro
Running on Apify Platform
Set API_KEY in your Apify Console secrets (if required), configure input via the Actor input schema UI, and click Run.
Input Schema
| Parameter | Type | Description | Default |
|-----------|------|-------------|---------|
Input
| target | string | Instagram username, URL, or comma-separated list (e.g., @nike, @tesla, https://instagram.com/nike, nike,adidas,tesla) Required (editor: textfield)
Example: @nike
Prefill: @tesla | "@nike" |
| search | string | Search Instagram for users, hashtags, or places (e.g., 'fitness', 'New York') (editor: textfield)
Example: fitness | - |
| searchType | enum | Type of Instagram search to perform (editor: select)
Options: user, hashtag, place, users, hashtags, places | "users" |
| resultsType | enum | What data to extract from found items (editor: select)
Options: details, posts | "details" |
| analysisType | enum | Type of Instagram analysis to perform (editor: select)
Options: profile, posts, competitors, hashtags, search, comments, location
Prefill: profile | "profile" |
| searchLimit | integer | Maximum search results to find (1-100) (editor: number)
Range: min: 1, max: 100 | 10 |
| resultsLimit | integer | Maximum results per found item (1-1000) (editor: number)
Range: min: 1, max: 1000
Prefill: 10 | 10 |
| maxResults | integer | Maximum number of results to extract (1-1000) - Backward compatibility (editor: number)
Range: min: 1, max: 1000
Prefill: 1 | 10 |
| debugMode | boolean | Enable minimal extraction for health checks and testing. Guarantees success within 300s. (editor: checkbox)
Prefill: true | false |
| includeBusinessIntelligence | boolean | Add engagement rate calculation, hashtag scoring, and competitive analysis (editor: checkbox)
Prefill: false | false |
| exportFormat | enum | Choose output format for your analysis (editor: select)
Options: json, csv, salesforce, hubspot, markdown
Prefill: json | "json" |
| checkOnly | boolean | When true, returns immediately with capability metadata without scraping. Used by AI agents to verify availability before committing to a paid run. Free, <5 seconds. (editor: checkbox) | false |
Infrastructure & Reliability
| proxyType | enum | Choose your preferred balance of cost vs reliability. Standard (Datacenter) is faster; Premium (Residential) is most reliable for high-security targets. (editor: select)
Options: DATACENTER, RESIDENTIAL
Prefill: DATACENTER | "RESIDENTIAL" |
Required fields:
target
Output Schema
The output conforms to the following TypeScript interfaces:
InstagramProfile
id?: string;url: string;username: string;fullName?: string;displayName: string;biography?: string;bio: string;externalUrl?: string | null;externalUrlShimmed?: string;NEW: Competitor has thiswebsite?: string | null;followersCount: number;followsCount?: number;followingCount: number;postsCount: number;verified?: boolean;isVerified: boolean;isBusinessAccount: boolean;businessCategoryName?: string | null;category?: string | null;private?: boolean;isPrivate?: boolean;NEW: Competitor uses this field name// Profile images (match competitor exactly)profilePicUrl?: string;profilePicUrlHD?: string;hasChannel?: boolean;highlightReelCount?: number;igtvVideoCount?: number;latestIgtvVideos?: any[];NEW: Competitor has this// Account status (match competitor exactly)joinedRecently?: boolean;facebookPage?: any;latestPosts?: InstagramPost[];following?: any[];followedBy?: any[];extractionMetadata: ExtractionMetadata;extractionMethod: string;extractedAt: string;confidence: number;
InstagramPost
id: string;url: string;inputUrl?: string;NEW: Competitor has thistype?: string;shortCode?: string;caption: string;hashtags: string[];mentions: string[];likesCount: number;commentsCount: number;firstComment?: string;NEW: Competitor has thislatestComments?: Array<{ownerUsername: string;text: string;NEW: Competitor has this// Media and dimensions (match competitor exactly)displayUrl?: string;dimensionsHeight?: number;NEW: Competitor has thisdimensionsWidth?: number;NEW: Competitor has thisimageUrl?: string;videoUrl?: string;images?: string[];NEW: Competitor has this for carouselsdisplayResourceUrls?: string[];NEW: Competitor has thisalt?: string;NEW: Competitor has this (accessibility caption)// Timing (match competitor exactly)timestamp: string;ownerUsername?: string;ownerFullName?: string;ownerId?: string;locationName?: string | null;locationId?: string | null;NEW: Competitor has this// Video specific (match competitor exactly)videoViewCount?: number;isSponsored?: boolean;contentType?: 'photo' | 'video' | 'carousel' | 'reel';childPosts?: Array<{type: string;displayUrl: string;dimensionsHeight: number;dimensionsWidth: number;NEW: Competitor has this// Enhanced with shared infrastructure metadataextractionMetadata: ExtractionMetadata;extractionMethod: string;extractedAt?: string;confidence?: number;
InstagramHashtag
id?: string;name: string;url?: string;postCount?: number;postsCount?: number;topPosts: InstagramPost[];latestPosts?: InstagramPost[];recentPosts?: InstagramPost[];topPostsOnly?: boolean;public?: boolean;profilePicUrl?: string;extractionMethod: string;extractedAt: string;confidence: number;
InstagramComment
id: string;text: string;author: {username: string;profilePicUrl: string;isVerified: boolean;likesCount: number;timestamp: string;replies: InstagramComment[];extractionMethod: string;extractedAt: string;confidence: number;
InstagramLocation
id: string;name: string;url?: string;slug?: string;lat?: number;lng?: number;addressStreetAddress?: string;addressCityName?: string;addressCountryCode?: string;description?: string;phone?: string;address?: any;coordinates?: {lat: number;lng: number;postCount?: number;postsCount?: number;topPosts: InstagramPost[];latestPosts?: InstagramPost[];recentPosts?: InstagramPost[];public?: boolean;extractionMethod: string;extractedAt: string;confidence: number;
BusinessIntelligence
engagementRate: number;averageLikes: number;averageComments: number;topHashtags: HashtagAnalysis[];competitorRank: number;contentTypes: ContentTypeBreakdown;optimalPostingTimes: PostingTimeAnalysis[];
HashtagAnalysis
hashtag: string;frequency: number;score: number;
ContentTypeBreakdown
photos: number;videos: number;carousels: number;reels: number;
PostingTimeAnalysis
day: string;time: string;engagementScore: number;
CompetitorComparison
profiles: InstagramProfile[];comparison: {engagementRates: number[];followerGrowth: number[];contentStrategy: string[];marketPositioning: string[];recommendations: string[];
ExtractionResult
profile?: InstagramProfile;posts?: InstagramPost[];hashtags?: InstagramHashtag[];businessIntelligence?: BusinessIntelligence;competitorComparison?: CompetitorComparison;metadata: {extractionMethod: string;processingTime: number;successRate: number;totalResults: number;batchIndex?: number;verticalScaling?: boolean;inputType?: string;extractionMode?: string;
ExtractionError
type: 'PLATFORM_ERROR' | 'VALIDATION_ERROR' | 'EXTRACTION_ERROR' | 'RATE_LIMIT_ERROR';message: string;suggestion: string;retryable: boolean;
Example Output
{"results": [{"url": "https://www.instagram.com/nike","username": "nike","fullName": "Nike","displayName": "Nike","biography": "Just do it.\n\nSwoosh.","externalUrl": "https://www.nike.com","website": "https://www.nike.com","followersCount": 286000000,"followsCount": 45,"followingCount": 45,"postsCount": 7850,"verified": true,"isVerified": true,"isBusinessAccount": true,"businessCategoryName": "Footwear","category": "Footwear","private": false,"isPrivate": false,"profilePicUrl": "https://scontent-xxfb5-1.cdninstagram.com/v/...","profilePicUrlHD": "https://scontent-xxfb5-1.cdninstagram.com/v/.../...jpg","highlightReelCount": 24,"igtvVideoCount": 142,"latestPosts": [{"id": "3456789012345678901","url": "https://www.instagram.com/p/DH5x1234567/","shortCode": "DH5x1234567","type": "image","caption": "Fresh drops. ๐โโ๏ธ #Nike #JustDoIt","hashtags": ["Nike","JustDoIt","Swoosh"],"mentions": [],"likesCount": 485200,"commentsCount": 3241,"firstComment": "Can't wait! ๐จ","latestComments": [{"ownerUsername": "sneakerhead_mike","text": "Need these in my size!"},{"ownerUsername": "fit_mom_23","text": "Obsessed with this colorway ๐ฅ"}],"displayUrl": "https://scontent-xxfb5-1.cdninstagram.com/v/...jpg","dimensionsHeight": 1080,"dimensionsWidth": 1080,"timestamp": "2026-03-22T14:30:00.000Z","ownerUsername": "nike","ownerFullName": "Nike","ownerId": "528817099","locationName": null,"locationId": null,"isSponsored": false,"contentType": "photo","childPosts": [],"extractionMetadata": {"extractionTimestamp": "2026-03-23T10:00:00.000Z","extractionMethod": "direct-instagram-service","confidence": 0.95,"dataFreshness": "live"},"extractionMethod": "direct-instagram-service","extractedAt": "2026-03-23T10:00:00.000Z","confidence": 0.95}],"extractionMetadata": {"extractionTimestamp": "2026-03-23T10:00:00.000Z","extractionMethod": "direct-instagram-service","confidence": 0.95,"dataFreshness": "live"},"extractionMethod": "direct-instagram-service","extractedAt": "2026-03-23T10:00:00.000Z","confidence": 0.95}],"metadata": {"extractionTimestamp": "2026-03-23T10:00:00.000Z","totalResults": 1,"successRate": 1,"processingTimeMs": 2340,"actorVersion": "1.1"}}
Pricing
Uses Apify's Pay-Per-Event (PPE) model โ you are charged per result returned. No charge for queries that return zero results.
| Event | Price | Available On |
|---|---|---|
| Event | Price | Available On |
| ------- | ------- | --------------- |
| Price for Instagram Profile Report Flat fee for a comprehensive Instagram profile intelligence report (includes posts, engagement, and metadata). | $0.01 | Free, Starter, Professional, Scale |
See Apify PPE documentation for details on how billing works.
Use Cases
1. RAG Pipelines โ Vector Search and LLM Context
Feed extracted profiles, posts, and engagement data into a vector database (Pinecone, Weaviate, Qdrant) for retrieval-augmented generation:
// Pseudocode: Ingest into vector storeconst profiles = await callActor('red.cars/instagram-scraper-pro', {target: '@nike, @tesla, @redbull',resultsLimit: 50,includeBusinessIntelligence: true});for (const profile of profiles) {const vector = await embedModel.embed(profile.biography + ' ' + profile.username);await vectorStore.upsert({id: profile.username,values: vector,metadata: { followers: profile.followersCount, platform: 'instagram', engagement: profile.engagementRate }});}// Query: "Which influencers in the beauty niche have >1M followers?"const results = await vectorStore.query({filter: { platform: 'instagram', followers: { $gt: 1000000 }, niche: 'beauty' },topK: 20});
2. AI Agents โ Autonomous Decision Making
Use the smoke test mode to verify availability before committing to a paid run:
// Pseudocode: AI agent workflowasync function auditInfluencer(handle: string) {// Step 1: Smoke test โ free, <5s, no chargeconst check = await callActor('red.cars/instagram-scraper-pro', {target: handle,checkOnly: true});if (!check.capabilities?.includes('instagram-scraper-pro-profiles')) {return { status: 'unavailable', reason: 'Actor not ready' };}// Step 2: Full extraction โ only if smoke test passesconst report = await callActor('red.cars/instagram-scraper-pro', {target: handle,resultsLimit: 20,includeBusinessIntelligence: true,exportFormat: 'json'});return { status: 'ready', report };}
3. Dashboards โ Real-Time KPI Monitoring
Aggregate results across multiple targets for a live dashboard:
// Pseudocode: Aggregate for BI dashboardconst targets = ['@nike', '@adidas', '@underarmour', '@puma', '@newbalance'];const batch = await Promise.all(targets.map(handle =>callActor('red.cars/instagram-scraper-pro', {target: handle,resultsLimit: 1,includeBusinessIntelligence: true})));const kpis = batch.map(r => ({handle: r.username,followers: r.followersCount,engagementRate: r.engagementRate,avgLikes: r.averageLikes,avgComments: r.averageComments,lastUpdated: new Date().toISOString()}));// Push to your BI tool (Metabase, Grafana, Superset, etc.)await dashboard.updateMetrics('instagram_brand_audit', kpis);
4. Market Intelligence โ Trend and Pattern Tracking
Track Instagram presence over time for competitive intelligence:
// Pseudocode: Scheduled competitive tracking// Run daily via Apify Schedulerconst competitors = ['@nike', '@adidas', '@underarmour'];const today = new Date().toISOString().split('T')[0];for (const handle of competitors) {const snapshot = await callActor('red.cars/instagram-scraper-pro', {target: handle,resultsLimit: 10});await db.competitorSnapshots.insert({date: today,handle: snapshot.username,followersCount: snapshot.followersCount,postsCount: snapshot.postsCount,engagementRate: snapshot.engagementRate,topHashtags: snapshot.topHashtags?.slice(0, 5)});}// Query: "Which brand is growing fastest?"const growth = await db.competitorSnapshots.aggregate([{ $group: { _id: '$handle', growth: { $last: '$followersCount' - $first: '$followersCount' } } },{ $sort: { growth: -1 } }]);
FAQ
How do I get started?
- Go to apify.com/red.cars/instagram-scraper-pro
- Configure input via the UI or pass a JSON payload
- Click Run or call via the Apify API
- Receive structured Instagram data in your dataset
Do I need an API key?
Yes. This actor requires a API_KEY secret. Set it in Apify Console, then go to Actors โ Instagram Scraper Pro โ Environment โ Secrets.
What is the rate limit?
Rate limits depend on your Apify plan. Higher tiers (Professional, Scale) get more compute units and faster extraction. Using Premium (Residential) proxy maximizes success rate for high-security targets.
Is this legal?
This actor extracts publicly available data. You are responsible for complying with Instagram's Terms of Service and applicable laws. Do not use extracted data for spam, harassment, or unauthorized commercial purposes. See Legal section for full details.
What happens if there are no results?
No charge for empty results under Pay-Per-Event pricing. If a profile is private, non-existent, or blocked, the actor returns an error with a suggested fix โ no charge is incurred.
Does this work outside the US?
Yes. Use the Premium (Residential) proxy option for best results internationally. Standard datacenter proxies work for most targets but may be rate-limited in certain regions.
How accurate is the data?
Extraction accuracy depends on target visibility and proxy settings:
- Public accounts: ~95%+ accuracy with residential proxy
- Business accounts: ~90%+ accuracy with engagement metrics
- Private accounts: Cannot be accessed (by platform design)
- Data reflects the moment of extraction โ use Apify Scheduler for continuous monitoring
How is this different from the official API?
| Factor | Official API | This Actor |
|---|---|---|
| Cost | High (per-request fees) | Pay-per-event, ~90% cheaper |
| Rate limits | Strict | Flexible with proxy options |
| Data depth | Limited fields | Full profile + engagement |
| Auth required | Yes | No |
| Setup time | Hours | Minutes |
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| Error | Cause | Fix |
| ------- | ------- | ----- |
| NETWORK_ERROR | Network connectivity issue or proxy failure | Check your internet connection. Retry with a different proxy type. |
| VALIDATION_ERROR | Invalid input parameters or missing required field | Review the input schema and ensure all required fields are provided. |
| PLATFORM_ERROR | Target platform is experiencing issues | Instagram may be down or rate-limiting. Try again in 10-15 minutes. |
| MEMORY_ERROR | Extraction exceeded memory limits | Reduce resultsLimit or maxResults to stay within memory constraints. |
| BUDGET_EXCEEDED | Pay-per-event budget limit reached | Increase your event charge limit in Apify Console or wait for reset. |
Known Limitations
- Private accounts: Cannot extract data from private accounts without an active follow relationship
- Rate limiting: Platform may temporarily block repeated requests from the same IP โ use residential proxy for high-security targets
- Data freshness: Extracted data reflects the moment of extraction. Historical data retrieval is limited by platform constraints.
- Content limits: Platforms impose retrieval limits on historical posts (typically 18-24 months of posts).
- Geographic restrictions: Some content may be hidden based on user region settings. Residential proxy helps bypass geographic blocks.
Legal
Data Source: Instagram (instagram.com)
This actor extracts publicly available data from Instagram. Users must comply with:
- Instagram Terms of Service โ Review at instagram.com/legal
- Community Guidelines โ No spam, harassment, or automated scraping in violation of ToS
- Privacy Rights โ Do not use extracted data for unlawful purposes or privacy violations
- Attribution โ When displaying Instagram data, comply with attribution requirements
Disclaimer: This actor is provided as-is for legitimate data collection. Red.cars is not responsible for misuse. Users bear full responsibility for compliance with applicable laws and platform terms.
License: MIT โ Free to use, modify, and distribute. See LICENSE for details.
red.cars Intelligence Fleet โข apify.com/red.cars โข Version 1.1