Instagram Scraper: Posts, Reels, Comments, Followers & Likes avatar

Instagram Scraper: Posts, Reels, Comments, Followers & Likes

Pricing

from $1.00 / 1,000 instagram posts

Go to Apify Store
Instagram Scraper: Posts, Reels, Comments, Followers & Likes

Instagram Scraper: Posts, Reels, Comments, Followers & Likes

Scrape Instagram profiles, posts, reels, stories, tagged posts, comments + replies, followers, following, post likers, hashtags and search. No login or cookies. $1 per 1,000 posts. Pay only per result.

Pricing

from $1.00 / 1,000 instagram posts

Rating

0.0

(0)

Developer

Pika Choo

Pika Choo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

📸 Instagram Scraper: Posts, Reels, Comments, Followers & Likes

Scrape Instagram without login: posts, reels, stories, profiles, comments with replies, followers, post likers, hashtags and search. $1 per 1,000 posts.

📋 Table of contents

What does it do?

Instagram Scraper collects public Instagram data and returns clean rows. Give it profile links, @usernames, post or reel links, hashtags or keywords and it returns posts and reels with captions and engagement, stories, profile details, comment threads, follower and following lists, the accounts that liked a post, similar profiles, hashtag posts and search results. Your own Instagram account is never used, so it can't get blocked.

Features

🎬 What you can scrape on Instagram

ModeWhat you give itWhat you get
user_postsprofile link / @usernameProfile posts — photos, videos and reels from a profile
user_reelsprofile link / @usernameProfile reels
user_taggedprofile link / @usernameTagged posts — posts a profile is tagged in
user_storiesprofile link / @usernameStories — a profile's current stories
user_profileprofile link / @usernameProfile details — bio, followers, following, verified
video_detailvideo or post linkPost details — one post or reel per link
video_commentsvideo or post linkPost comments (+ replies)
post_likespost link or shortcodePost likers — accounts that liked a post
followersprofile link / @usernameFollowers of a profile
followingprofile link / @usernameAccounts a profile follows
related_profilesprofile link / @usernameSimilar profiles
hashtag_videos#hashtag, tag link or IDHashtag posts
search_userskeywordsSearch profiles (keywords)
search_hashtagskeywordsSearch hashtags (keywords)
search_videoskeywordsSearch reels (keywords)

✨ Smart features

  • Share links and shortcodes work as input
  • Replies are placed right under their comment (comments with 3+ replies)
  • Post likers: up to about 1,000 accounts per post
  • Carousel items, music and tagged users kept in raw
  • Image and video file URLs on every post
  • Duplicates are removed automatically
  • 🔓 No login, no cookies, no proxy setup
  • 💸 Pay only for results: hint and error rows are free

🧭 More scrapers from us

Pricing

You pay per result. No compute or proxy charges on top, and hint and error rows are free.

What you getPrice per 1,000
📸 Posts, reels and stories from any list$1.00
💬 Comments and replies$0.50
👥 Accounts from followers, following, likers, similar profiles or search$1.00
#️⃣ Hashtags from search$1.00
🔍 Single lookups: one post by link or one full profile$2.00

How much does it cost to scrape Instagram data?

JobCost
1,000 Instagram posts$1.00
10,000 Instagram posts$10
100,000 Instagram posts$100
1,000 profiles$2.00

Set Max cost per run in the run options and the actor stops cleanly at that amount.

🆓 Free plan

On the free Apify plan each run returns up to 10 results, so you can check the data before you buy. Comment replies need a paid plan. Any paid Apify plan removes the limit.

⚡ Speed

Profile lists return 12 posts per request, comment pages about 15, and post likers up to 1,000 at once.

Input

FieldWhat it does
modeLinks, @usernames or IDs: user_posts, user_reels, user_tagged, user_stories, user_profile, video_detail, video_comments, post_likes, followers, following, related_profiles, hashtag_videos. Keywords: search_users, search_hashtags, search_videos.
urlsOne per line: profile links or @usernames, post / reel links or shortcodes, #hashtags. Share links work too.
queriesKeywords for the search modes, one per line.
maxItemsStop after this many rows per link or keyword (comments include their replies).
includeRepliesIn video_comments mode, also fetch the replies under each comment that has 3 or more replies (TikTok, Douyin, Bilibili). Replies are billed as comments. Paid Apify plans only.
downloadVideosAdd the direct video file URL to each video row when the platform provides one.

🧪 Example inputs

Latest 100 posts from a profile

{"mode": "user_posts", "urls": ["https://www.instagram.com/natgeo/"], "maxItems": 100}

Reels of several creators

{"mode": "user_reels", "urls": ["@natgeo", "@nasa"], "maxItems": 50}

Comments with replies

{"mode": "video_comments", "urls": ["https://www.instagram.com/reel/DdG4RIxIPyf/"], "maxItems": 500, "includeReplies": true}

Followers of a profile

{"mode": "followers", "urls": ["natgeo"], "maxItems": 2000}

Profile details for a list of creators

{"mode": "user_profile", "urls": ["natgeo", "nasa"]}

Search reels by keyword

{"mode": "search_videos", "queries": ["iced coffee recipe"], "maxItems": 100}

Output

Every row uses the same fields. Export as JSON, CSV, Excel, XML or HTML.

📦 Example output

{
"platform": "instagram",
"item_type": "video",
"item_id": "DdG4RIxIPyf",
"url": "https://www.instagram.com/p/DdG4RIxIPyf/",
"title": "Presented by @Rolex. Welcome to Africa 🌍 Africa Earth’s Wild Home takes you deep into the heart of o…",
"description": "Presented by @Rolex. Welcome to Africa 🌍 Africa Earth’s Wild Home takes you deep into the heart of o…",
"author_id": "787132",
"author_name": "National Geographic",
"author_username": "natgeo",
"duration_sec": 72.6,
"cover_url": "https://scontent-fra3-1.cdninstagram.com/v/t51.82787-15/802503979_1869…",
"video_url_nowm": "https://scontent-fra5-1.cdninstagram.com/o1/v/t2/f2/m86/AQPDJtVww4K_68…",
"hashtags": [
"Rolex",
"PerpetualPlanet"
],
"created_at": "2026-09-10T13:00:14+00:00",
"play_count": 3329391,
"like_count": 79038,
"comment_count": 545,
"mode": "user_posts",
"source_input": "natgeo",
"scraped_at": "2026-10-08T19:59:47.565081+00:00",
"raw": {
"…": "full original record"
}
}

📤 Main fields

FieldDescription
platform, item_type, mode, source_inputWhere the row came from and what it is (video, user, comment, hint, error…)
item_id, urlNative ID and a link back to the item
title, description, hashtags, created_atText and publish time (ISO 8601)
author_id, author_name, author_usernameCreator or account
play_count, like_count, comment_count, share_count, collect_countEngagement counts
rawThe full original record, every field the platform returned
error_messageExplanation on free hint / error rows

Troubleshooting

Stories or similar profiles come back empty?

Stories last 24 hours and some accounts have none; similar profiles are shown only for some accounts. You get a free hint row.

Getting no results?

Check that the link or username is public and typed correctly. Private accounts, deleted posts and hidden lists return a free hint row that says why. Keyword modes need the Keywords field, link modes need Links.

Getting fewer results than maxItems?

The platform ran out of items for that input (a small profile, a niche keyword), or the run reached its Max cost per run limit. The log says which one.

Some fields are empty?

Platforms don't return every field for every item. Everything the platform did return is kept in raw.

Media URLs from these platforms expire after a few hours. Download files right after the run.

The run failed or shows an error row?

Retry once: the platforms sometimes refuse a request for a few minutes. If it keeps failing, open an issue with the run link and we'll fix it fast.

Who uses this Instagram Scraper?

📣 Social media managers

Track competitors' posts, reels and engagement.

🧑‍🤝‍🧑 Influencer agencies

Vet creators: followers, engagement and similar profiles.

🛒 Brands and e-commerce teams

Monitor hashtags, mentions and tagged posts.

🎯 Growth teams

Build audiences from followers and post likers.

📊 Market researchers

Read comments for sentiment and product feedback.

🤖 AI and data teams

Collect captions and comments as training data.

Use cases

Influencer vetting

Pull a creator's profile and last 50 posts, then compute engagement rate from likes and comments.

Audience building

Collect likers of a competitor's top posts as a warm audience list.

Hashtag research

Pull posts for a hashtag and see which formats get the most likes.

Comment monitoring

Collect comments on your brand's posts every day.

FAQ

Can I scrape Instagram without logging in?

Yes. No Instagram account, cookies or API keys, so your account can't be blocked.

Does Instagram have an official API I could use instead?

The Graph API only covers business accounts you manage and limited hashtag search. It can't read other accounts' followers, likers or comments.

Can I scrape Instagram followers?

Yes, with followers and following on public profiles.

Can I see who liked an Instagram post?

Yes, post_likes returns up to about 1,000 likers per post.

How much does it cost to scrape 10,000 Instagram posts?

About $10, at $1 per 1,000 posts.

Can I scrape Instagram comments and replies?

Yes, with video_comments and Include comment replies on.

Can I scrape Instagram reels and stories?

Yes: user_reels, user_stories and reel search.

Can I scrape private profiles?

No. Only public data.

Is there a free tier?

Yes. On the free Apify plan each run returns up to 10 results.

Can I use it from Python, JavaScript or an AI agent?

Yes, through the Apify API, the client libraries, or MCP.

API, Python, JavaScript and MCP

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("openclawai/instagram-scraper").call(run_input={"mode": "user_posts", "urls": ["https://www.instagram.com/natgeo/"], "maxItems": 100})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_APIFY_TOKEN" });
const run = await client.actor("openclawai/instagram-scraper").call({"mode": "user_posts", "urls": ["https://www.instagram.com/natgeo/"], "maxItems": 100});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

MCP (Claude, ChatGPT, Cursor and other MCP clients): https://mcp.apify.com/?tools=openclawai/instagram-scraper

Works with Zapier, Make, n8n, Google Sheets, Slack, webhooks and scheduled runs.

Collects public data only. You are responsible for complying with Instagram's terms and with privacy laws such as GDPR, CCPA and PIPL when you store personal data.

⭐ Support

Something not working? Check the hint / error rows, then open an issue with the run link. We reply fast.