Instagram Post Scraper - Captions, Likes and Comments by URL avatar

Instagram Post Scraper - Captions, Likes and Comments by URL

Pricing

$1.00 / 1,000 post returneds

Go to Apify Store
Instagram Post Scraper - Captions, Likes and Comments by URL

Instagram Post Scraper - Captions, Likes and Comments by URL

Paste Instagram post or reel URLs and get caption, likes, comment count, views, hashtags, mentions, music track, video URL and owner stats. Optionally pull the comments. No login required.

Pricing

$1.00 / 1,000 post returneds

Rating

0.0

(0)

Developer

SR

SR

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Paste Instagram post or reel URLs and get caption, likes, comments, views, hashtags, music and owner stats. No login, no cookies and no API key: the actor reads Instagram's public surface directly.

This is a single-purpose instagram post scraper. It does one thing, takes a handful of inputs and returns one clean row per post.

What you get

  • caption, hashtags and mentions - full caption text with tags and handles already parsed out
  • likes, comments_count and views - engagement, as numbers rather than display strings
  • owner_username, owner_followers and owner_is_verified - who posted it and how big they are
  • music_title and music_artist - the audio track for reels
  • video_url, image_url, thumbnail_url and duration_seconds - media URLs and length
  • comments - the visible comments, when you switch them on

Why scrape this from Instagram

A post URL is the unit people actually work in. Someone sends you a link and the question is how it performed, who posted it and what audio it used. Getting that from the Graph API requires owning the account; getting it from the page requires parsing a render that changes shape regularly.

This actor takes the URL exactly as copied from the app or browser and returns the post as a row. Post, reel and TV URLs all work, including the canonical form with the username in the path. Hashtags and mentions come out as arrays rather than leaving you to regex the caption.

Input

FieldTypeRequiredDefaultDescription
searcharrayyes['https://www.instagram.com/p/C1sQZ1sLQ8w/']Instagram post, reel or TV URLs, one per line.
includeCommentsbooleannoFalseAlso return the visible comments on each post.
maxCommentsintegerno20Only used when comments are included.

Output

One row per post.

FieldDescription
shortcodePost shortcode from the URL
urlPublic Instagram URL for this record
captionPost caption text
likesLike count
comments_countComment count
viewsView count for video posts
posted_atPublication timestamp
is_videoWhether the post is a video
video_urlDirect video URL when available
image_urlFull size image URL
thumbnail_urlThumbnail URL
hashtagsHashtags found in the caption
mentionsAccounts mentioned in the caption
owner_usernameHandle that published the post
owner_followersFollower count of the publishing account
owner_is_verifiedWhether the publisher is verified
music_titleAudio track title
music_artistAudio track artist
duration_secondsVideo length in seconds
commentsComment records when comments are requested
record_typeWhich kind of row this is

Use cases

Campaign reporting on creator posts. When creators deliver links rather than analytics screenshots, this turns a list of URLs into a performance table. owner_followers alongside likes gives an engagement rate per post, which is the number that survives scrutiny in a wrap report.

Competitive content teardowns. Collect a competitor's best-performing posts and pull them in one run. Caption structure, hashtag sets and audio choices become comparable across dozens of posts at once, which is where content patterns actually become visible.

Audio and trend tracking for reels. music_title and music_artist on every reel let you see which tracks are attached to the posts that performed. Audio choice is one of the strongest reach levers on reels and one of the least documented.

Compliance and disclosure auditing. For regulated categories, the caption and its parsed hashtags are the evidence trail for whether required disclosure was present. Running a creator's delivered links through this produces a dated, structured record.

How it compares

The closest competitor is apify/instagram-post-scraper, the platform-official actor, at $0.0017 per post. This actor is $0.0010, a 41% undercut. Theirs also offers a separate post-details event at $0.001. The honest comparison: theirs is the more configurable actor from the platform owner, this one takes URLs and returns rows at a lower rate with comments as a single switch.

Pricing

$0.0010 per post returned, which is $1.00 per 1,000 rows. All pricing is pay-per-event - you only pay for results you receive. No actor-start fee, no per-compute-unit charges.

Limits and gotchas

  • Public posts only. Private accounts do not resolve.
  • Comments are the visible set, not the complete thread. Very large comment counts are truncated by Instagram before this actor sees them.
  • View counts exist for video posts only. Image posts return no view figure, which is Instagram's behaviour rather than a gap here.
  • Media URLs are time-limited by Instagram's CDN. Fetch them promptly or re-run.
  • Free Apify plans are capped at 10 rows per run. Paid plans have no cap.
  • Deleted or region-blocked posts return an error row rather than a blank record.

FAQ

Can I scrape an Instagram post without logging in?

Yes. This actor reads the public post surface logged out, so there is no account involved and nothing to get rate limited.

Does it work on reels as well as posts?

Yes. Post, reel and TV URLs are all accepted, including the canonical form with the username in the path. The type is detected from the URL.

Can I get the comments?

Yes, switch on include comments and set how many per post. It is off by default because most reporting use cases only need the count.

Does it return video files?

It returns the video URL Instagram serves, plus the thumbnail and image URLs. It does not re-host or download the media.

What if the post is from a private account?

It will not resolve. Private posts have no public surface, and this actor does not authenticate.