Instagram Scraper: Posts, Reels, Comments and Profiles
This Actor returns public Instagram posts and reels from profiles, links or keyword searches, with captions, likes, views, media links and owner details, and can add comments and profile rows. It suits creator research, competitor tracking and social listening teams who need Instagram data without a login.
Main price: $1.50 per 1,000 posts or reels, same on every Apify plan.
What you can do with it
- Collect a profile's feed, its Reels tab, or both, for competitor and creator research.
- Find reels by keyword to spot trending content in a niche.
- Pull comments under posts for sentiment analysis.
- Refresh likes, views and captions for posts you already track by pasting their links.
- Get bio, followers, category and website for influencer lists.
What you get
Results come as rows in an Apify dataset, which you can export as JSON, CSV or Excel or read over the API. These are the main fields:
| Field | Example | Meaning |
|---|---|---|
type | reel | post, reel, comment or profile |
shortcode, url | DH3tWudxIKB | Post ID used in instagram.com/p/ and /reel/ links |
caption | Dana is neglecting... | Post caption, with hashtags and mentions in separate arrays |
likes, commentsCount | 387, 12 | Engagement counts |
views | 35499 | Reel views, null for photos |
postedAt | 2025-03-31T16:29:30.000Z | Publish time (UTC) |
owner.username | barstoolsports | Account that posted it |
Pricing
This Actor is pay per event, with one price for every Apify plan, the free plan included. Prices are per 1,000 events.
| Event | What is charged | Price per 1,000 |
|---|---|---|
| Post or reel | One post or reel row from a profile or a reels search | $1.50 |
| Post fetched by link | One post or reel fetched from a link you gave | $6.50 |
| Comment | One comment row | $1.00 |
| Profile | One profile row with followers, bio and post count | $6.50 |
No run start fee. Prices come from the Apify Store and can change; the Actor's Apify page always shows the current ones. Platform usage is billed through your Apify account.
Run it from code
Create an API token in Apify Console (Settings, API and Integrations) and replace YOUR_APIFY_TOKEN. This call starts a run with a small input and returns the rows when it finishes. Synchronous calls suit small inputs; for big jobs, start a run and read the dataset later.
curl
curl -X POST "https://api.apify.com/v2/acts/apisamurai~instagram-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"profiles": [
"natgeo"
],
"maxItemsPerSource": 12
}'Python (pip install apify-client)
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run_input = {
"profiles": ["natgeo"],
"maxItemsPerSource": 12,
}
# Start the Actor and wait for it to finish.
run = client.actor("apisamurai/instagram-scraper").call(run_input=run_input)
# Read the results from the run's default dataset.
items = client.dataset(run.default_dataset_id).list_items().items
for item in items:
print(item)JavaScript (npm install apify-client)
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const input = {
profiles: ['natgeo'],
maxItemsPerSource: 12,
};
// Start the Actor and wait for it to finish.
const run = await client.actor('apisamurai/instagram-scraper').call(input);
// Read the results from the run's default dataset.
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Client calls follow the Python and JavaScript client docs. The full input reference is on the Actor's Apify page.
FAQ
- Do I need an Instagram login?
- No. You never enter Instagram credentials, cookies or a session. Only an Apify account is needed.
- Can it scrape private accounts?
- No. Only public data is collected. A private or missing profile is reported in the SUMMARY record and costs nothing.
- How many posts can I get?
- Up to 100,000 posts per input item on paid plans and up to 100 results per run on the free Apify plan. Reels search returns at most 11 result pages per keyword.
- What is not charged?
- Duplicates, posts outside your date or engagement filters, placeholder rows and private or missing profiles. There is no start fee.
- Where do I report a problem?
- Email hello@apisamurai.com, or open an issue on the Actor's Apify page.