~ / endpoints / Follower API

Instagram Follower Scraper API

Our Instagram follower scraper resolves a username to its numeric account id and pages the follower list, returning each follower as a clean JSON row: username, full name, verified and private flags, avatar, and profile URL, with a cursor for the next page.

Get a free API keyBrowse the endpoints
1,000
free requests / mo
2.6s
median response
JSON
structured output
cursor
paginated
the login wall

Why Instagram Follower data hides behind a login

Instagram serves the follower list only through an app endpoint that requires a logged-in session, so a logged-out request hits a login or checkpoint wall and no public follower feed exists. Our endpoint resolves the numeric account id and calls that follower API in the documented shape, and it reports a clear auth status when Instagram gates the list rather than returning a fake feed.

call it once

Your first Instagram Follower Scraper API call

cURL
curl "https://api.instagramscraperapi.com/api/v1/instagram/follower?username=nasa&count=50&api_key=$API_KEY"
Python
import requests, os

BASE = "https://api.instagramscraperapi.com"
API_KEY = os.environ["API_KEY"]

# Pass a username (no leading @) or a full profile URL, plus a page size.
data = requests.get(
    f"{BASE}/api/v1/instagram/follower",
    params={"username": "nasa", "count": 50, "api_key": API_KEY},
    timeout=60,
).json()

for f in data["followers"]:
    print(f["position"], f["username"], "verified:", f["is_verified"])

# Page further with the returned cursor when more are available.
while data.get("has_more"):
    data = requests.get(
        f"{BASE}/api/v1/instagram/follower",
        params={"username": "nasa", "max_id": data["next_max_id"], "api_key": API_KEY},
        timeout=60,
    ).json()
    for f in data["followers"]:
        print(f["position"], f["username"])
inputs

Parameters

ParameterRequiredDefaultNotes
usernamerequired-The Instagram username without the leading @, e.g. nasa. Required unless you pass url. The endpoint resolves it to the numeric account id the follower API keys on.
urloptional-A full profile URL such as https://www.instagram.com/nasa/. The handle is parsed out of the path. One of username or url is required.
countoptional50How many followers to pull this call, 1 to 200. Instagram caps a single page at around 50, so larger totals come through pagination.
max_idoptional-The pagination cursor. Pass the next_max_id from the previous response to fetch the next page of followers.
countryoptionalUSTwo-letter country code for the egress region. Defaults to US.
api_keyrequired-Your API key, passed as a query parameter. Get one free at signup.
what returns

What the Instagram Follower Scraper API hands back

200 OK
{
  "username": "nasa",
  "user_id": "528817151",
  "url": "https://www.instagram.com/nasa/",
  "source": "instagram",
  "followers": [
    {
      "position": 1,
      "id": "1748234592",
      "username": "space_explorer",
      "full_name": "Space Explorer",
      "is_private": false,
      "is_verified": false,
      "profile_pic_url": "https://scontent.cdninstagram.com/v/t51.2885-19/example.jpg",
      "url": "https://www.instagram.com/space_explorer/"
    }
  ],
  "followers_count": 50,
  "has_more": true,
  "next_max_id": "QVFE...",
  "big_list": true
}
FieldTypeDescription
usernamestringThe profile whose followers were requested.
user_idstringThe numeric account id (pk) resolved from the profile, which the follower API keys on.
urlstringThe canonical profile URL.
followersarrayThe follower rows for this page. Each carries position, id, username, full_name, is_private, is_verified, profile_pic_url, and url.
followers_countintegerNumber of follower rows returned on this page (one page per call).
has_morebooleanTrue when another page of followers is available, false or absent on the last page.
next_max_idstringCursor for the next page. Pass it back as max_id, or null when there are no more.
big_listbooleanInstagram's flag for a large follower list that must be paged, or null when not reported.
put it to work

Where teams point Instagram data

>

Audience analysis

Page through a follower list to profile an audience: how many are verified, how many are private, and which handles recur across accounts you track.
>

Overlap and lookalikes

Compare the follower rows of two accounts to find shared followers and build a lookalike list for targeting or outreach.
>

Bot and quality screening

Read the follower rows to flag patterns of empty or private accounts when vetting an influencer's audience quality.
>

Community mapping

Assemble the follower graph around a niche account to map the people and brands clustered in that community.
>

Lead sourcing

Turn the followers of a competitor or partner account into a candidate list of usernames to research and enrich.
>

Growth auditing

Snapshot a follower page on a schedule to watch who joins or drops from an account's audience over time.
why it holds

How our Instagram Follower Scraper API stays reliable

We resolve the numeric account id and call Instagram's own follower API in the documented shape, mapping each entry to a stable row and paging with a cursor. Instagram gates that follower list behind a logged-in session, so on the logged-out tier the endpoint reports an honest auth status rather than a fabricated feed, and the request is not billed when it cannot return followers.

*

Id resolution built in

You pass a handle or URL, and we resolve the numeric account id the follower API requires, so you never look it up yourself.
*

Cursor pagination

Each call returns one page plus a next_max_id, and you follow the cursor to walk the full list at a flat charge per page.
*

Clean follower rows

Every follower maps to position, id, username, full_name, verified and private flags, avatar, and profile URL in a stable schema.
*

Residential proxies and anti-bot

Requests route through residential US IPs with anti-bot handling and retries across pools.
*

Honest auth reporting

Instagram serves the follower list only to a logged-in session, so the endpoint reports a clear auth status when the list is gated instead of returning a fake feed.
*

Pay for success

A request that cannot return followers because of the login gate is not charged, so you only pay when rows come back.
weigh the options

Instagram Follower Scraper API weighed against the Instagram API and DIY

Our APIDIY (requests / headless)Instagram Graph API
Follower rowsDocumented shape, cursor pagedYou script the app endpoint yourselfNo follower list endpoint
Id resolutionHandle or URL to numeric id, automaticYou resolve the id yourselfNot applicable
SetupAPI key onlyResidential proxies, session handling, parsersFacebook app, linked Business account, app review
Login gateReported honestly when Instagram walls the listYou hit the wall and handle it yourselfNot exposed to third parties
Anti-bot and proxiesBuilt in, residential USYou build and maintain itNot applicable
BillingOnly successful pages are chargedYou eat the cost of blocked callsNot applicable
plans & pricing

Pay only for what you pull

PlanPriceBest for
Free1,000 requestsTesting and small jobs
Pro$0.60 / 1kProduction workloads
Pay-as-you-go$0.90 / 1kSpiky or one-off volume

Median response 2.6s. You only pay for successful requests.

FAQ

What is an Instagram follower scraper?

An Instagram follower scraper is a tool that reads an account's follower list and returns each follower in a structured format. Our endpoint takes a username or URL, resolves the numeric account id, and returns follower rows with username, full name, verified and private flags, avatar, and profile URL as JSON, plus a cursor to page through a large list.

Can you scrape a full Instagram follower list logged-out?

Not reliably, and we are direct about it. Instagram serves the follower list only through an app endpoint that requires a logged-in session with a valid session cookie and CSRF token. A logged-out request hits a login or checkpoint wall, so there is no public follower feed. Our endpoint resolves the account id and calls that follower API in the correct shape, and when Instagram gates the list it reports an honest auth status rather than returning a fabricated list. A populated follower list needs an authenticated session.

What does the endpoint return when the list is gated?

It returns a classifiable auth status indicating the follower list needs an authenticated session, along with the resolved numeric account id so you know the id-resolution hop worked. It does not invent follower rows. Requests that cannot return followers because of the login gate are not billed.

How does pagination work?

Each successful call returns one page of followers, capped by Instagram at roughly 50 rows, plus a next_max_id cursor and a has_more flag. To fetch the next page, pass next_max_id back as the max_id parameter. Every page is one flat charge, so there is no server-side deep loop and no surprise multi-page bill.

Do I need the official Instagram API for follower data?

The official Instagram Graph API does not expose a follower list to third parties at all; it is scoped to accounts you own or manage and returns aggregate follower counts, not the individual follower rows. Reading the follower list of another account is only possible through the app endpoint, which requires an authenticated session.

Is scraping Instagram followers legal?

Scraping publicly visible data is broadly permitted in many jurisdictions, and US courts have declined to treat collecting public profile data as unauthorized access. A follower list, however, is personal data about many individuals, and Instagram's terms restrict automated collection and gate the list behind a login. That gate matters legally as well as technically: accessing data behind authentication you are not authorized to use can cross into unauthorized access. Use follower data only where you have a lawful basis, comply with GDPR and CCPA, and take your own legal advice.

Pull follower api as clean JSON
Start on 1,000 free requests. No card needed.
Get a free API key Browse the endpoints