Instagram Post Scraper - Posts, Likes, Comments & Media avatar

Instagram Post Scraper - Posts, Likes, Comments & Media

Pricing

from $0.99 / 1,000 post scrapeds

Go to Apify Store
Instagram Post Scraper - Posts, Likes, Comments & Media

Instagram Post Scraper - Posts, Likes, Comments & Media

Scrape Instagram posts and carousels from any profile, hashtag, location or post URL - caption, hashtags, mentions, likes, comments, views, timestamp, author and media links. No login, deep export. $0.99 per 1,000 posts. Export CSV, JSON, Excel.

Pricing

from $0.99 / 1,000 post scrapeds

Rating

0.0

(0)

Developer

Zaver

Zaver

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Instagram Post Scraper — Download Posts, Captions, Likes & Media to CSV

Download all posts from any public Instagram profile, hashtag or location. Get captions, hashtags, mentions, like and comment counts, media type and image URLs — exported to CSV, Excel, JSON or XML. No login, no API key, no Business account.

Built for bulk post export: point it at a username and pull the whole feed, or filter to only what was published since your last run.

What data does the Instagram Post Scraper extract?

Post fields

FieldDescription
urlCanonical post URL
shortcodeInstagram shortcode, e.g. DcOX3hWFiey
post_idNumeric post ID
media_typephoto, video, carousel or reel
product_typefeed, clips or igtv
captionFull caption text, emoji and line breaks preserved
taken_atISO publish timestamp
thumbnail_urlDirect image URL

Engagement fields

FieldDescription
likesLike count at scrape time
comments_countNumber of comments

Parsed caption fields

FieldDescription
hashtagsArray of hashtags pulled out of the caption
mentionsArray of @accounts mentioned

Author fields

username, user_id, user_full_name, is_verified — plus source, which records the input that produced the row, so multi-target exports stay separable.

Why use this Instagram post scraper

Works from a username, a hashtag or a location

Pass nasa, a full profile URL, a hashtag or a place — the Actor resolves the target type for you. No separate tool per source.

Hashtags and mentions arrive pre-parsed

hashtags and mentions come back as arrays rather than buried in caption text, so you can build a tag co-occurrence map or a mention graph without writing a parser.

Incremental exports with a date filter

onlyPostsNewerThan skips anything published before a date — and skipped posts are not billed. Schedule a daily run and you pay only for new content.

Export to CSV, Excel or JSON

Download as CSV, Excel, JSON, XML or JSONL, or pull through the Apify API into your own pipeline.

How to use it

  1. Open the Actor in Apify Console.
  2. Put usernames, profile URLs, hashtags or post URLs into directUrls.
  3. Set resultsLimit — posts per target, and your cost ceiling.
  4. Optionally set onlyPostsNewerThan for an incremental export.
  5. Save & Start, then download from Storage.

Input example

{
"directUrls": ["nasa", "https://www.instagram.com/natgeo/"],
"resultsLimit": 200,
"onlyPostsNewerThan": "2026-09-01"
}

resultsLimit applies per target, so two profiles at 200 returns up to 400 posts.

Output example

{
"source": "nasa",
"url": "https://www.instagram.com/p/DcOX3hWFiey/",
"shortcode": "DcOX3hWFiey",
"post_id": "3967213292204992434",
"media_type": "photo",
"product_type": "feed",
"caption": "With your powers combined… This colorful picture of the cosmos is the product of teamwork between our @NASAHubble, @NASAWebb, and @NASAChandraXray telescopes…",
"hashtags": ["NASA", "Universe", "Nebula"],
"mentions": ["NASAHubble", "NASAWebb", "NASAChandraXray"],
"likes": 566179,
"comments_count": 4223,
"taken_at": "2026-08-19T14:11:47+00:00",
"username": "nasa",
"user_id": "528817151",
"user_full_name": "NASA",
"is_verified": true,
"thumbnail_url": "https://scontent…jpg"
}

Pricing

$0.00099 per post scraped — the same rate on every Apify plan, including the free one.

Posts exportedCost
1,000$0.99
10,000$9.90
100,000$99.00

Not billed: unreachable usernames, private profiles, and posts excluded by your onlyPostsNewerThan filter.

Use cases

Competitor content audit

Export a rival's last 500 posts with captions and engagement, then sort by likes to see what actually works in your category.

Campaign hashtag tracking

Run it against your campaign hashtag daily and measure reach and engagement while the campaign is live, not after it.

Caption and creative research

A few thousand captions from top accounts in a niche is a training set for your own copy — or for an LLM writing in that voice.

Instagram content archive

Schedule it and keep a permanent record of what an account published, including posts later deleted.

FAQ

How do I download all posts from an Instagram profile? Put the username or profile URL into directUrls, raise resultsLimit to cover the account's post count, and run it. Export the dataset as CSV or Excel from the Storage tab.

Can I scrape Instagram posts without an API key? Yes. There is nothing to register. Instagram's official Graph API requires app review, a Business account and a connected Facebook Page, and only covers accounts you own. This reads public posts directly.

How much does it cost to scrape 10,000 Instagram posts? $9.90 — a flat $0.00099 per post on every plan, including the free tier. You pay only for posts actually delivered.

Does the Instagram Post Scraper include Reels and carousels? Yes. media_type distinguishes photo, video, carousel and reel, so you can filter after export. For reels-only extraction with play counts, use the Instagram Reel Scraper.

Can I scrape Instagram posts by hashtag? Yes. Pass a hashtag in directUrls and it returns posts carrying that tag, with the same fields as profile posts.

How do I get only new Instagram posts since my last export? Set onlyPostsNewerThan to the date of your previous run. Older posts are skipped and not billed, so a daily incremental export costs only what is new.

Can I export Instagram captions and hashtags to a spreadsheet? Yes. caption holds the full text, and hashtags and mentions come back as arrays that flatten into spreadsheet columns on CSV export.

Can I scrape posts from a private Instagram account? No. Only public profiles return content. A private account yields no posts and is not billed.

Is it legal to scrape Instagram posts? This Actor collects only publicly available data and never accesses private content. Public data may still be personal data under GDPR and similar regimes, so only collect what you have a legitimate reason to process. See Apify's guidance on the legality of web scraping.

Integrations

Connect to Make, Zapier, n8n, Slack, Google Sheets, Google Drive, Airbyte and GitHub, or use webhooks on run completion. Official Node.js and Python SDKs are available, and the Apify MCP server lets an AI agent call this Actor directly.


Built and maintained by Zaver. For bugs, feature requests or custom data needs, open an issue on this Actor.