Instagram Comments Scraper avatar

Instagram Comments Scraper

Pricing

from $0.30 / 1,000 comments

Go to Apify Store
Instagram Comments Scraper

Instagram Comments Scraper

Scrape comments from public Instagram posts and reels. Get comment text, author username and ID, profile picture, verified badge, likes, time and GIF comments, newest first. Hundreds of comments per post, date filter, no login.

Pricing

from $0.30 / 1,000 comments

Rating

0.0

(0)

Developer

Coder

Coder

Maintained by Community

Actor stats

0

Bookmarked

14

Total users

13

Monthly active users

3 days ago

Last modified

Categories

Share

Collect comments from public Instagram posts and reels: comment text, author, profile picture, verified badge, likes, time and GIF comments, newest first, in a clean, structured format.

Paste post or reel links, choose how many comments you need from each, and export the results as JSON, CSV or Excel, or pull them through the Apify API. No Instagram account or login needed.

What This Actor Does

  • Collects comments from public Instagram posts and reels by link
  • Returns hundreds of comments per post, not just the first handful
  • Returns the newest comments first
  • Includes GIF and sticker comments, with a direct link to the GIF
  • Filters by date, so scheduled runs pick up only new comments
  • Supports many posts in one run and never returns the same comment twice

Best For

  • Sentiment analysis and brand monitoring
  • Measuring audience reaction to campaigns, launches and influencer posts
  • Finding customer questions, complaints and leads in comment sections
  • Running giveaways and contests
  • Building datasets for dashboards, NLP or AI workflows

Input

Add one or more post or reel links and set how many comments to collect from each.

Main input fields

  • directUrls One link per row. Accepts post links (https://www.instagram.com/p/SHORTCODE/) and reel links (https://www.instagram.com/reel/SHORTCODE/).
  • resultsLimit How many comments to collect from each post, newest first.
  • onlyCommentsNewerThan Only collects comments written after a date (2026-01-31) or a relative period (1 day, 7 days, 2 weeks, 3 months).

Example input

{
"directUrls": [
"https://www.instagram.com/p/DdtbP_rv0p2/",
"https://www.instagram.com/reel/DbA_2A4uL5K/"
],
"resultsLimit": 200,
"onlyCommentsNewerThan": "7 days"
}

Output

Each dataset item is one comment.

Fields

FieldDescription
id, commentUrlComment identifier and direct link
textComment text (empty for GIF-only comments)
timestampWhen the comment was written (ISO 8601, UTC)
likesCountLikes on the comment
ownerUsername, ownerIdWho wrote the comment
ownerProfilePicUrl, ownerIsVerifiedAuthor's profile picture and verified badge
ownerThe same author details as one object
gifUrl, mediaGIF or sticker attached to the comment
postUrl, postIdThe post or reel the comment belongs to

Example output

{
"postUrl": "https://www.instagram.com/p/DdtbP_rv0p2/",
"commentUrl": "https://www.instagram.com/p/DdtbP_rv0p2/c/17903495850589245/",
"postId": "3993968290975140470",
"id": "17903495850589245",
"text": "Incredible shot!",
"ownerUsername": "example_user",
"ownerId": "2091941066",
"ownerProfilePicUrl": "https://scontent.cdninstagram.com/v/t51.2885-19/...",
"ownerIsVerified": false,
"timestamp": "2026-09-28T09:29:08.000Z",
"likesCount": 4,
"repliesCount": null,
"replies": [],
"owner": {
"id": "2091941066",
"username": "example_user",
"is_verified": false,
"profile_pic_url": "https://scontent.cdninstagram.com/v/t51.2885-19/..."
},
"hasTranslation": null,
"gifUrl": null,
"media": null
}

Profile picture and GIF links are provided by Instagram and expire after a while, so download any files you need soon after the run.

How To Use

  1. Paste one or more Instagram post or reel links into directUrls.
  2. Set resultsLimit to how many comments you need from each post.
  3. Optionally set onlyCommentsNewerThan to collect recent comments only.
  4. Run the actor and open the dataset, or export it as JSON, CSV or Excel, or read it through the Apify API.

Pricing

This actor uses pay-per-event pricing, so you only pay for results you receive:

  • Comment — charged once for each comment saved to your dataset.
  • Actor start — a small fixed fee of $0.001 per run.

Links that cannot be collected (private, deleted or unavailable) and posts without comments are not charged. Platform usage is included in these prices. Current prices for each Apify plan are shown on the actor's Pricing tab.

Free plan

On the Apify free plan, each run processes up to 5 links and up to 20 comments per post. Upgrade to a paid Apify plan to remove these limits.

Best Practices

  • Start with a small resultsLimit to check the output quickly.
  • For monitoring, schedule the actor with onlyCommentsNewerThan set to your schedule's interval (for example 1 day), so each run collects only new comments.
  • Need the post links first? Use the Instagram Post Scraper to list a profile's posts, then pass their links here.

FAQ

Are replies to comments included?

No. Instagram shows replies only to logged-in users, so this actor collects top-level comments. The comment count on the post (commentsCount in the Post Scraper) includes replies, so it is usually higher than the number of comments you can collect.

Why did a post return fewer comments than I asked for?

The post may have fewer public comments, your date filter may exclude older ones, or Instagram hides some comments (for example ones filtered as offensive or spam). The run log names each link that returned nothing.

Why is text empty on some comments?

Those are GIF or sticker comments. The GIF is in gifUrl.

Can I collect comments from a whole profile?

Paste the post links here, or use the Instagram Post Scraper with comments turned on to get the latest comments on every post of a profile.

How long does a run take?

Around 600 comments from two posts typically finish in under a minute.

Responsible Use

Use this actor only for publicly available content, and make sure your use complies with applicable laws (including data protection rules such as GDPR) and Instagram's terms. Comments contain personal data, so collect only what you need.

Troubleshooting

  • Open each link in a logged-out browser window to confirm the post is public.
  • Check the run log: it names any link that was skipped and why.
  • Make sure the links point to posts or reels, not profiles or hashtags.
  • Test with a small resultsLimit before large runs.