Which Social API

Instagram

How to get Instagram profile data without the Graph API

Instagram’s official API only covers professional accounts, and only some of their data. Here’s what it does give you, the three alternatives, and how to choose between them.

Researched by Which Social API editorial teamUpdated 21 October 202612 min read

If you’re building anything that needs Instagram data about creators you don’t control, such as a discovery tool, a CRM, or a dashboard of competitor accounts, you’ll hit the same wall: Instagram doesn’t offer a general-purpose API for public profiles.

That leaves three realistic routes. Which one is right depends on whose accounts you need, how many, and how fresh the data has to be.

In short

  • The Graph API only covers professional (business and creator) accounts. Personal accounts are off-limits.
  • Business Discovery gives you basic public stats for other professional accounts, if you have an approved app.
  • For anything else, or for scale, a scraping API is usually cheaper than building and maintaining your own scraper.

What the Graph API gives you

Since Meta retired the Basic Display API at the end of 2024, the Instagram Graph API is the only official way in, and it only works with professional accounts.

For accounts that connect to your app, you get a lot: posts, comments, insights and audience demographics. For everyone else, you have one feature, Business Discovery, which returns public basics for other professional accounts by username: follower count, post count and recent posts with their like and comment counts.

That’s enough for some projects. It isn’t enough if you need personal accounts, reels views, comments on other people’s posts, or thousands of lookups an hour. Our guide to Graph API limits covers the rules in detail.

What each option can get you
What you needGraph APIScraping APIYour own scraper
Accounts you manageYesYesYes
Other business and creator accountsBusiness onlyYesYes
Personal accountsNoYesYes
Reels and their viewsSomeYesYes
Comments on others’ postsNoYesSome
Thousands of lookups an hourNoYesSome

Your three options

1. Business Discovery

Free, official and stable. You’ll need a Meta developer app, an Instagram professional account of your own, and to pass App Review. It’s the right choice if you only care about business and creator accounts and modest volumes.

2. A scraping API

A provider collects public data on your behalf and returns it as JSON. You send a username; you get back the profile, posts, reels or comments. You pay per request or per result, and the provider deals with Instagram’s rate limits and blocking.

Quality varies a lot. Some fetch live, some answer from a cache that can be days old, and coverage ranges from profiles only to followers, stories and comments. Our Instagram ranking compares them.

3. Build your own scraper

Possible, but rarely cheaper once you count the work. Instagram changes its internal endpoints without notice and limits logged-out requests per IP address, so you’ll need a pool of proxies and someone to fix things when they break.

Getting started with a scraping API

  1. Pick two or three providers from our ranking and sign up for their free tiers.
  2. Run the same 50 to 100 usernames through each, including some small accounts.
  3. Check a handful of results against the live profiles, and work out the cost per successful request.
  4. Build retries and caching in from the start.

Most providers work the same way. A minimal request with retries looks like this:

import time, requests

RETRYABLE = {429, 500, 502, 503, 504}

def get_profile(username, retries=3):
    for attempt in range(retries):
        try:
            r = requests.get(
                "https://api.[provider].com/v1/instagram/profile",
                params={"username": username},
                headers={"Authorization": f"Bearer {API_KEY}"},
                timeout=30,
            )
        except requests.Timeout:
            r = None
        if r is not None:
            if r.ok:
                return r.json()
            if r.status_code not in RETRYABLE:
                return None  # e.g. account not found: don't retry
        time.sleep(2 ** attempt)  # back off before retrying
    return None

Handling failures

Every provider fails on some requests, because Instagram changes and blocks without warning. Plan for it:

  • Retry with backoff on timeouts and server errors, but not on “account not found”.
  • Check the payload, not just the status code. Some providers return a success with empty fields.
  • Track freshness. Store when each record was fetched so stale data doesn’t look current.

Collecting public, logged-out data is generally lawful in the US, and in 2024 a US court ruled that Bright Data’s logged-out scraping of public Instagram and Facebook data didn’t breach Meta’s terms. In the EU and UK, GDPR still applies to public profiles: you need a lawful basis to store personal data, and you should keep only what you need.

This isn’t legal advice. Our guide to the law goes into more detail.

Which provider to choose

For most projects, start with the top of our ranking and weigh price against accuracy:

If you’re building a production app or an AI agent, Influship is worth a look. Its Instagram profile call returns up to 50 recent posts in one request at a flat $1.80 per 1,000 calls, billed after use like infrastructure, and failed calls are free.

Questions

Can I get personal Instagram accounts through the Graph API?

No. The Graph API only covers professional accounts, and Business Discovery only returns other professional accounts.

Is Business Discovery free?

Yes, but you need an approved Meta app and your own professional Instagram account, and it’s rate-limited.

How much does a scraping API cost?

At published rates, between about $1.00 and $6.67 per 1,000 requests across the providers we rank, depending on the plan and volume.

Do scraping APIs need my Instagram login?

No. They return public data without your credentials, and you shouldn’t share them.

Researched byWhich Social API editorial teamResearches and writes every ranking, review, comparison and guide on Which Social API, working from each provider’s documentation, published pricing and public user reviews.

Keep reading