Instagram Comments Scraper
Scrape Instagram post and reel comments at $0.40 per 1,000, flat at every volume, plus a $0.001 run start. Text, likes, replies, author, verified badge.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
postUrls,shortcodes,maxComments(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Pricing
$0.0004 per result = $0.4 per 1,000
| You are charged for | When | Price |
|---|---|---|
| Result returned | Charged per result returned. Failed/empty runs not charged. | $0.0004 |
| Actor Start | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). | $0.001 |
Pay-per-event pricing: you are billed per result, not per subscription — a run that returns nothing costs nothing beyond the start fee. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-08-04, and they are what you are actually charged.
Inputs
| Field | What it does | Type |
|---|---|---|
postUrls | Instagram post/reel URLs to scrape comments from. | array |
shortcodes | Or bare post shortcodes. | array |
maxComments | Charged per comment. | integer |
sessionCookies | Comment threads are login-gated, so every run needs a session; one is built in. Optional, and normally not needed. Runs use a built-in session by default. Supply your own Instagram account cookie here to get a private rate limit that no other run shares — worth doing for heavy or sustained volume. In Chrome: F12 -> Application -> Cookies -> https://www.instagram.com -> copy the `sessionid` value. Paste one per line; several are rotated. Use a throwaway account, never one you care about. | array |
notionConnector | Optional Notion delivery. | string |
notionParentId | Optional Notion data-source id. | string |
What you get
A structured dataset — each result includes fields like:
textlikeCountreplyCountownerUsernamemediaIdExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
5 ready-to-run use cases
Scrape Comments on Cristiano Ronaldo's Instagram Post
Scrape Comments on Cristiano Ronaldo's Instagram Post. Runs on the posts you choose — comment text, author, timestamp and like count. No login needed.
Scrape Comments on Kylie Jenner's Product Launch Post
Scrape Comments on Kylie Jenner's Product Launch Post. Runs on the posts you choose — comment text, author, timestamp and like count. No login needed.
Scrape Comments on MrBeast's Viral Instagram Post
Scrape Comments on MrBeast's Viral Instagram Post. Runs on the posts you choose — comment text, author, timestamp and like count. No login needed.
Scrape Comments on National Geographic Instagram Post
Scrape Comments on National Geographic Instagram Post. Runs on the posts you choose — comment text, author, timestamp and like count. No login needed.
Scrape Comments on Nike's Instagram Reel
Scrape Comments on Nike's Instagram Reel. Runs on the posts you choose — comment text, author, timestamp and like count. No login needed.
Related tools in Social Media Scrapers
Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.
Twitter (X) Search Scraper
Scrape X (Twitter) search results by keyword and advanced query. Full text, engagement, author, media. $0.40 per 1,000 tweets plus a $0.00005 run start.
Twitter (X) List Scraper
Scrape every tweet from any X (Twitter) list: full text, likes, retweets, views, media, hashtags and author profile.
Threads Scraper
Scrape public Threads profiles and recent posts without login: bios, followers, post text, likes, timestamps and media URLs. From $0.40 per 1,000 results.
Facebook Pages Scraper
Scrape public Facebook Page names, categories, likes, talking-about counts, verified badges and images without login.
LinkedIn Profile Posts Scraper
LinkedIn profile posts scraper at $0.90 per 1,000 posts, flat on every plan. Post text, author, image, publish time and URL.
LinkedIn Company Posts Scraper
LinkedIn company posts scraper at $0.90 per 1,000 posts plus a $0.001 run start. Public post text, reactions, comments and URLs. No login or cookies needed.
Where this tool sits
- Categories
- Social Media Scrapers
- Platforms
⚡ Instagram Comments Scraper — Post & Reel Comments
Scrape every comment from any Instagram post or reel — text, like count, reply count, author, verified badge, and timestamp. Flat JSON/CSV/Excel export or one-click Notion delivery. Pay per comment — a run that returns no comments costs only the $0.001 start fee.
Why it wins
- 💸 $0.40 / 1,000 comments, flat — no volume tiers and no plan gates: the price is the same on the first comment and the millionth.
- 🔄 Session handled for you — the login this data requires is built in, and the actor moves across a pool of fresh exit addresses as it goes, so a single block never sinks a run. Supply your own cookie instead if you want a private rate limit.
- 🧹 Clean, flat records — no nested GraphQL soup. One row per comment, ready for a sheet or a database.
- 📬 Notion delivery built in — pipe results straight into a Notion data source, no glue code.
- 🎯 Post URL or shortcode — paste
/p/,/reel/, or/tv/links, or bare shortcodes. Both work.
> Instagram gates comments behind a login — there is no keyless path for this data. This actor ships with a session, so a run works out of the box; supplying your own cookie is optional and buys you a rate limit nobody else shares.
🆓 Try it with no input (sample mode)
Run it with no post URLs and you get an instant, free, clearly-labeled sample of the exact output shape (each row carries sampleData: true and a _notice). Sample rows are never charged the per-comment fee — the run costs the $0.001 start fee and nothing else. Perfect for wiring up your pipeline before you point it at real posts.
Sessions and rate limits
Comment threads need a logged-in session and one is built in, so a run works out of the box with nothing to paste. That session is shared by everyone running this actor, so under heavy concurrent or sustained load you can meet a shared rate limit and see RATE_LIMITED diagnostic rows.
To get throughput nobody else can affect, paste your own Instagram account cookie into sessionCookies. When you supply one it is used on its own — the shared session is not mixed in — so the rate limit you get is entirely yours.
Getting the cookie (about a minute): log in to instagram.com on a throwaway account → F12 → Application → Cookies → copy the sessionid value → paste it into sessionCookies, one per line. Never use an account you care about: automated reading can get an account rate-limited or checkpointed, and Instagram invalidates sessions on its own schedule.
Input
| Field | Type | Description |
|---|---|---|
postUrls | array | Instagram post / reel / TV URLs (/p/…, /reel/…, /tv/…). |
shortcodes | array | Or bare post shortcodes (e.g. Bt_RWejnzWS). |
maxComments | integer | Cap on total comments returned (1–5000, default 100). Charged per comment. |
sessionCookies | array | Optional. Leave empty and the built-in session is used. Paste your own throwaway-account sessionid cookie(s), one per line, for a private rate limit. |
proxyConfiguration | object | Optional. Proxying is handled for you; set proxyUrls only if you want your own proxy servers used instead. |
notionConnector | string | Optional Notion connector ID for delivery. |
notionParentId | string | Optional Notion data-source ID. |
Output
One flat record per comment:
{
"type": "comment",
"id": "17912345678901234",
"mediaId": "1234567890123456789",
"text": "this is unreal 🔥",
"likeCount": 42,
"replyCount": 3,
"createdAt": "2026-06-20T14:08:31.000Z",
"ownerUsername": "real_user",
"ownerId": "9876543210",
"ownerVerified": false
}
Pricing
$0.40 per 1,000 comments ($0.0004 each), plus $0.001 each time a run starts. Flat rate — no volume tiers, no plan gates — and you are charged only for comments actually returned.
Failed or empty runs are not charged the per-comment fee; they cost only the $0.001 start fee.
FAQ
Do I need to supply a cookie? No. Instagram comments are login-gated — there is no keyless path — but a session is built in, so runs work with sessionCookies empty. Supplying your own is optional and buys you a rate limit nobody else shares.
When is it worth supplying my own? When you run at volume or on a schedule. The built-in session is shared, so heavy concurrent use divides one rate limit between everyone; your own cookie is used on its own and is unaffected by other runs. Add one sessionid per line — several are rotated.
Posts or reels? Both. Reels and IGTV (/reel/, /tv/) work exactly like feed posts (/p/).
Will I be charged if a post is private or returns nothing? Not the per-comment fee — you only pay that for comments actually returned. The $0.001 run-start fee is charged on every run, so a run that comes back empty costs $0.001.
How do I get results into Notion? Set notionConnector and notionParentId and the actor delivers each run automatically.
---
Want posts, profiles, hashtags, or locations too? Pair this with the companion Instagram Scraper and Instagram Hashtag Scraper.
Billing
Two charges apply: a $0.001 run-start fee each time a run begins, and the per-result fee for results actually delivered. Samples, diagnostics, duplicates, blocked look-ups and no-result runs never incur the per-result fee — a run that returns nothing costs only the $0.001 start fee.