Instagram: scrapers and the official API, compared

Public profiles, posts, reels, comments, follower counts and transcripts.

Short answer

For most Instagram jobs, start with Instagram Profile Scraper - Bio & Posts: it covers 4 of 7 core fields (username, caption, likes, url) at $0.70 per 1,000 results on Apify's Free plan. The top published score for Instagram goes to Instagram Scraper by apify (80 of 100), a Store tool from another publisher, listed for reference.

From published Store listings, output schemas and the official documentation. Checked 2026-11-12. How the ranking works.

Instagram Profile Scraper - Bio & Posts: inputs, code and costOpen in Apify Store

4 catalogue Actors 8 other Store tools Official API: Limited access Lowest rate  $0.49 per 1K

What do you need from Instagram?

Route map

Each line is one way to get Instagram data; each stop is a field you probably need. Green lines are catalogue Actors, ranked by the published formula.

Route diagram for Instagram dataInstagram Profile Scraper - Bio & Posts: stops at 3 of the 10 fields shown; Instagram Posts & Reels Data Scraper: stops at 3 of the 10 fields shown; Instagram Downloader API - Reels, Video & Photo: stops at 1 of the 10 fields shown; Instagram Transcript Scraper - Reels & Video: stops at 2 of the 10 fields shown; Other Store tools (8): stops at 10 of the 10 fields shown; Instagram Platform API: limited, field coverage not compared.Instagramusernamecaptionlikescommentsposted atmedia urliderrorerrorDescripti…facebookPage1234+API

Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.

Catalogue Actors for Instagram

Instagram Profile Scraper - Bio & Posts

Scrape public Instagram profiles from a list of usernames: bio, followers, following, post count, verified badge and bio links. Add recent posts…

4/7 core fields 25 output fields $0.70 per 1K Open in Apify Store

Instagram Posts & Reels Data Scraper

Scrape public Instagram posts, Reels, IGTV and carousels from a list of links, no login. Get caption, hashtags, author, photo and video links,…

4/7 core fields 25 output fields $0.99 per 1K Open in Apify Store

Instagram Downloader API - Reels, Video & Photo

Download Instagram photos, videos, Reels and carousel posts from post links or usernames, up to 100 of each per run. Public posts and profiles…

2/7 core fields 11 output fields $0.49 per 1K Open in Apify Store

Which route for which job

The catalogue Actors for Instagram return different records. "Only this route" lists the published fields no other Actor in this table returns, which is usually what decides the choice. Cost is the published per-result rate; start events and platform usage are extra.

Catalogue Actors for Instagram by job, with the fields only each one returns
Actor Good for Only this route Core fields 10K results
Instagram Profile Scraper - Bio & Posts Analyze creator profiles no unique fields 4/7 $7.00
Instagram Posts & Reels Data Scraper Collect post content no unique fields 4/7 $9.90
Instagram Downloader API - Reels, Video & Photo Download post media filename, downloaded_at, storage_key, download_url, media_meta_data 2/7 $4.90
Instagram Transcript Scraper - Reels & Video Extract video transcripts profileUrl, shortCode, videoIndex, pk, postDescription 2/7 $5.00

Field matrix: who returns what

Every tool with a published output schema, against the 7 fields most Instagram jobs need. A dot means the field name appears in the schema; rows can still leave it empty.

Which tools return each core Instagram field, from published output schemas
Toolusernamecaptionlikescommentsposted aturlmedia urlFields
Instagram Profile Scraper - Bio & Posts●●●––●–4/7
Instagram Posts & Reels Data Scraper●●●––●–4/7
Instagram Downloader API - Reels, Video & Photo●––––●–2/7
Instagram Transcript Scraper - Reels & Video––●––●–2/7
Instagram ScraperReference only, by apify●●●●●●●7/7
Instagram Post ScraperReference only, by apify–●●●–●●5/7
Instagram Followers/Following ScraperReference only, by scraping_solutions●––––●–2/7
Instagram Reel ScraperReference only, by apify–●●●–●●5/7
Instagram Hashtag ScraperReference only, by apify–●●●–●●5/7
Instagram Search ScraperReference only, by apify●–––●●●4/7
Instagram Profile ScraperReference only, by apify●––––●●3/7
Instagram Comments ScraperReference only, by apify––●––●●3/7
Tools returning it76842127

Field dictionary: the exact keys

The same core field has a different key in each Actor's output. Map these before you merge datasets; a dash means the published schema has no matching key. Need a field that is not listed here, such as email? Search every Instagram Actor by field.

Output keys for each core Instagram field in the top catalogue Actors
Core field Instagram Profile Scraper -…Instagram Posts & Reels Data…Instagram Downloader API -…
username usernameusernameusername
caption caption, accessibility_captioncaption, accessibility_caption–
likes like_countlike_count–
comments –––
posted at –––
url post_urlpost_urlpost_url
media url –––

Download this comparison: CSV · JSON (every tool with a published schema, matching keys per core field, price and score).

All 12 tools, scored

Catalogue Actors link to their detail pages; the score (0 to 100) is the published formula, identical for every tool. Other Store tools follow in their own table, for reference. Price is the published primary-result rate per 1,000 (the Free-plan rate where the price is tiered; higher Apify plans pay less); start events and platform usage are excluded.

Catalogue Actors for Instagram, ranked by the published method
Sample fields
72
Instagram Profile Scraper - Bio & Posts Catalogue Actor, pay per event
username, caption, like_count 25 $0.70 10 runs, too few to rate Nov 2026
69
Instagram Posts & Reels Data Scraper Catalogue Actor, pay per event
username, caption, like_count 25 $0.99 19 runs, too few to rate Oct 2026
66
Instagram Downloader API - Reels, Video & Photo Catalogue Actor, pay per event
username, post_url, filename 11 $0.49 2 runs, too few to rate Nov 2026
65
Instagram Transcript Scraper - Reels & Video Catalogue Actor, pay per event
likeCount, postUrl, profileUrl 22 $0.50 19 runs, too few to rate Nov 2026

Other Store tools, for reference

Scored with the same published formula and listed for comparison only; this site does not link or recommend them.

Other Store tools for Instagram, for reference
Sample fields
80
Instagram Scraper Reference only, by apify
username, caption, likesCount 94 $2.70 100% of 19,046,131 runs Nov 2026
80
Instagram Post Scraper Reference only, by apify
caption, likesCount, firstComment 57 $1.70 100% of 6,356,574 runs Nov 2026
73
Instagram Followers/Following Scraper Reference only, by scraping_solutions
username, profile_pic_url, username_scrape 8 $0.85 99% of 143,936 runs Nov 2026
72
Instagram Reel Scraper Reference only, by apify
caption, likesCount, firstComment 57 $2.60 100% of 4,021,938 runs Nov 2026
72
Instagram Hashtag Scraper Reference only, by apify
caption, likesCount, firstComment 51 $2.60 99% of 855,785 runs Nov 2026
65
Instagram Search Scraper Reference only, by apify
username, posts, url 54 $2.70 94% of 773,009 runs Nov 2026
63
Instagram Profile Scraper Reference only, by apify
username, url, id 37 $2.60 100% of 11,436,150 runs Nov 2026
63
Instagram Comments Scraper Reference only, by apify
likesCount, postUrl, url 16 $2.60 100% of 1,161,465 runs Nov 2026

What to check before you choose

Teams use public Instagram posts and reels to review campaign content, study creator publishing and track engagement snapshots. Video transcripts support research into spoken content that captions may not contain.

Choose a post collector for known post links, a profile tool for account-focused research, or a transcript tool for video speech. Use the official API for professional-account workflows within its permitted access.

Checklist

  • Inspect status before using a row: the post tool distinguishes unavailable, private, restricted, blocked and invalid inputs.
  • Check likes_hidden and comments_disabled before interpreting missing engagement values or planning comment collection.
  • Choose transcript output when speech matters, and inspect media_items when a post contains several media items.

Where the data is incomplete

The listed post schema provides comment_count without a comment-text field. Restricted or unavailable posts can produce status records instead of content.

Its price summary and evidence note also disagree about the cheapest route, so check the relevant tool's billing details.

Official API route

Instagram Platform API

The official API covers professional accounts and their own content. It does not provide general search over public profiles and posts.

Price. No published per-call price for standard use; access depends on Meta app configuration.

Limits. Rate limits and permitted scopes apply. Public-content scraping is outside the official API.

Official documentation

Limit collection to public business or profile data and respect Instagram's terms. Review the permitted collection and reuse for your project before retaining personal details. This is general information, not legal advice.

Read Instagram's terms. Keep to public data, do not bypass logins or access controls, and check whether personal data is involved before you collect it. The can-I-scrape checklist walks through it.

How to start

  1. Open Instagram Posts & Reels Data Scraper and follow its documented input format for a small set of public post or reel links.
  2. Collect the dataset and inspect status for each input. Review caption, pub_date, media_items, like_count and comment_count alongside likes_hidden and comments_disabled.
  3. Save the output and retain post_url, shortcode and post_id for matching records. Record unavailable inputs separately before adding more links.

Call Instagram Profile Scraper - Bio & Posts from code

The example input uses the Actor's published defaults; set your own Instagram query before you run it. You need an Apify API token.

Python

from apify_client import ApifyClient

client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
    "usernames": [
        "instagram"
    ],
    "maxPosts": 3,
    "skipPinnedPosts": False
}

run = client.actor("dataspryva/instagram-profile-scraper-bio-and-posts").call(run_input=run_input)
if run is None:
    raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

pip install apify-client

JavaScript

import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
    "usernames": [
        "instagram"
    ],
    "maxPosts": 3,
    "skipPinnedPosts": false
};

const run = await client.actor("dataspryva/instagram-profile-scraper-bio-and-posts").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

npm install apify-client

cURL

curl -X POST "https://api.apify.com/v2/actors/dataspryva~instagram-profile-scraper-bio-and-posts/run-sync-get-dataset-items"   -H "Authorization: Bearer $APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"usernames":["instagram"],"maxPosts":3,"skipPinnedPosts":false}'

Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).

MCP (AI agents)

{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=dataspryva/instagram-profile-scraper-bio-and-posts",
      "headers": {
        "Authorization": "Bearer <YOUR_APIFY_TOKEN>"
      }
    }
  }
}

Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.

Questions people ask

Can the official API search public profiles and posts generally?

The published data describes the official API as covering professional accounts and their own content. It does not provide general search over public profiles and posts.

Does comment_count include comment text?

The listed posts and reels schema includes a count without a comment-text field. Choose a tool with documented comment records if your dataset needs conversations.

Can a transcript succeed without containing words?

The transcript tool documents a successful status for a video with no speech even when the transcript is empty. Inspect fullText alongside status before treating an empty result as a collection failure.

How should hidden engagement values be handled?

The post tool exposes likes_hidden and comments_disabled alongside its engagement counts. Preserve those flags and avoid treating an absent count as evidence of no engagement.

What is the cheapest catalogue Actor for Instagram data?

Instagram Downloader API - Reels, Video & Photo lists $0.49 per 1,000 results (pay per event), with 11 fields in its published output schema. Start events and platform usage are billed separately. Checked 2026-11-12.

Which Instagram scraper returns the most core fields?

Instagram Profile Scraper - Bio & Posts covers 4 of the 7 core Instagram fields this page tracks (username, caption, likes, comments, posted at, url, media url), based on its published output schema.

Does Instagram have an official API?

Limited access: The official API covers professional accounts and their own content. It does not provide general search over public profiles and posts. No published per-call price for standard use; access depends on Meta app configuration.

Is it legal to scrape Instagram?

It depends on what you collect and how. Limit collection to public business or profile data and respect Instagram's terms. Review the permitted collection and reuse for your project before retaining personal details. Read Instagram's terms (https://help.instagram.com/581066165581870) before you collect, and check whether personal data is involved. This is general information, not legal advice.

More on Instagram

Sources

Text updated 2026-11-12 Data checked 2026-11-12
Cite this page

Scraper Finder. "How to get Instagram data." https://scraperfinder.com/sites/instagram/ (data checked 2026-11-12).

Highest-scoring catalogue Actor

Instagram Profile Scraper - Bio & Posts: 4 of 7 core fields, $0.70 per 1,000 results, score 72. The highest score overall is 80 (Instagram Scraper, a Store tool from another publisher); both are in the table above.

Open in Apify Store