Instagram Profile & Posts Scraper
Pricing
from $0.01 / 1,000 results
Instagram Profile & Posts Scraper
Scrape Instagram profiles and their recent posts. Get follower counts, engagement metrics, and detailed post data. Profile scraping (followers, following, bio, etc.). Recent posts with engagement metrics. Supports reels and regular posts. No login required (public profiles only).
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer
The Howlers
Maintained by CommunityActor stats
0
Bookmarked
82
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Instagram Scraper
Stop paying $2/1000 profiles. This free Instagram scraper extracts profile data and recent posts without per-use fees. Use your own compute credits instead of paying per-result.
BYOK (Bring Your Own Key) -- you provide your own API credentials.
Before You Start
This actor requires your own API credentials to fetch real data.
Where to get your key: JSON array of cookies from Cookie-Editor browser extension. Required for reliable scraping — Instagram gates most content behind login. Install Cookie-Editor, log into Instagram, export cookies as JSON, paste here. Not needed if using Cookie Manager.
Quick Start
Run with real data
{"usernames": ["instagram"],"maxPosts": 12,"includeReels": true,"includeComments": false,"maxCommentsPerPost": 20,"includeReactions": false,"sessionCookies": "YOUR_API_KEY_HERE","cookieKvStoreName": "cookie-sessions","useFirecrawl": false,"firecrawlApiKey": "YOUR_API_KEY_HERE","enableSentimentAnalysis": false,"aiProvider": "none","aiApiKey": "YOUR_API_KEY_HERE"}
Input Parameters
| Parameter | Type | Default | Required | Description |
|---|---|---|---|---|
usernames | array | - | No | List of Instagram usernames to scrape (without @). Example: nike, adidas, puma |
maxPosts | integer | 12 | No | Maximum number of posts to scrape per profile (includes reels if enabled) |
includeReels | boolean | true | No | Include reels in the scraped posts |
includeComments | boolean | false | No | Scrape comments on each post (increases run time) |
maxCommentsPerPost | integer | 20 | No | Maximum number of comments to scrape per post |
includeReactions | boolean | false | No | Include detailed engagement metrics (likes, shares, saves) |
sessionCookies | string | - | Yes* | JSON array of cookies from Cookie-Editor browser extension. Required for reliable scraping — Instagram gates most content behind login. Install Cookie-Editor, log into Instagram, export cookies as JSON, paste here. Not needed if using Cookie Manager. |
cookieStorageKey | string | - | No | Key to load cookies from the Cookie Manager KV store (e.g. 'instagram-myaccount'). Use this instead of pasting cookies manually. Requires a prior run of the Cookie Manager actor to capture and store your session. |
cookieKvStoreName | string | "cookie-sessions" | No | Name of the Key-Value store where Cookie Manager saved the session. Defaults to 'cookie-sessions'. |
useFirecrawl | boolean | false | No | Use Firecrawl API for enhanced scraping reliability (requires API key) |
firecrawlApiKey | string | - | Yes* | Your Firecrawl API key from firecrawl.dev |
proxy | object | - | No | Proxy settings for avoiding blocks |
webhookUrl | string | - | No | URL to POST results when scraping completes (Zapier, Make, n8n) |
enableSentimentAnalysis | boolean | false | No | Use AI to analyze sentiment of comments and captions |
aiProvider | string | "none" | No | Which AI provider to use for sentiment analysis |
aiApiKey | string | - | Yes* | API key for your chosen AI provider |
aiModel | string | - | No | Custom model name (leave empty for default). Examples: gpt-4o, claude-3-5-sonnet-20241022, gemini-1.5-pro |
Pricing
This actor uses pay-per-event billing:
| Event | Description | Price |
|---|---|---|
| Profile Scraped | Each Instagram profile scraped | $0.08 |
Troubleshooting
"API key is required"
- Add your API key in the input
"API error 403" or "Unauthorized"
Your API key is invalid, expired, or doesn't have access to this specific API endpoint. Double-check your key and account permissions.
"API error 429" or "Rate limit"
Too many requests. Wait a minute and try again, or reduce the number of items per run.
No results or empty dataset
Check the run log for error messages. Common causes:
- Invalid input format (check the examples above)
- API key without proper permissions
- The target data doesn't exist or is too small to track
How do I test without an API key?
Built by John Rippy | Actor Arsenal