Instagram Followers Count Scraper
Pricing
$19.99/month + usage
Instagram Followers Count Scraper
Instagram Followers Count Scraper fetches real-time follower counts for any public Instagram profile, along with optional profile details like username, bio, and posts. Perfect for tracking growth, influencer analysis, competitor monitoring, and automating Instagram performance insights
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
SimpleAPI
Maintained by CommunityActor stats
0
Bookmarked
43
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Instagram Scraper — Follower Counts, Bio Data and Latest Posts
Instagram Followers Count Scraper pulls follower, following, and post counts plus full public profile data — bio, external URL, verified/business flags, category, and the up-to-12 latest posts — from any public Instagram username or URL, no login required. It's built for marketers checking a creator's reach before outreach, agencies bulk-auditing prospect accounts, and researchers who need a quick, structured profile snapshot rather than manually opening each Instagram page.
What is Instagram Followers Count Scraper?
Instagram Followers Count Scraper is an Apify Actor that fetches a public Instagram profile's page and extracts its follower/following/post counts plus the full profile payload already embedded in that page — no Instagram login or session cookie required. Key capabilities:
- Look up one or many profiles in a single run, by username, full URL, or
@handle - Get followers, following, and post counts alongside bio, external URL, and category data
- See the up-to-12 latest posts already present in the profile payload — caption, type, likes, comments, timestamp
- Residential proxy support for reliable, larger-scale scraping
- Honest
nullvalues (never a faked count) when a field genuinely isn't available
What data can I extract with Instagram Followers Count Scraper?
| Field | Example Value | Use Case |
|---|---|---|
userName / userFullName | "natgeo" / "National Geographic" | Identify the profile |
isVerified / isPrivate | true / false | Filter to verified or public-only accounts |
followersCount / followsCount / postsCount | 280000000 / 145 / 24000 | Core reach metrics |
biography / externalUrl | "Experience the world..." / "https://natgeo.com" | Read the profile's own stated positioning and link |
businessCategoryName / isBusinessAccount | "Media/News Company" / true | Segment business vs. personal accounts |
profilePic / profilePicUrlHD | CDN image URL | Visual reference for a UI or report |
userUrl | "https://instagram.com/natgeo" | Direct link back to the profile |
latestPosts | [{"shortCode": "Cxyz123", "type": "Image", "caption": "...", "likesCount": 45210, "commentsCount": 312, "timestamp": "2026-07-20T10:00:00Z"}] | Sample recent content without a separate posts scrape |
scrapedAt | "2026-07-26T14:02:11+00:00" | Record when this snapshot was taken |
Full profile and latest-posts data
Beyond the core counts, the Actor harvests every field already present in Instagram's own profile payload: bioLinks[] (multi-link bio entries), isProfessionalAccount, categoryName, highlightReelCount, igtvVideoCount, hasClips, hasChannel, isJoinedRecently, and pronouns. latestPosts contains up to 12 of the profile's most recent posts, each with its shortcode, permalink, media type (Image/Video/Sidecar), caption, like/comment counts, timestamp, and display URL — all pulled from the same page load, no separate request. When Instagram serves a limited fallback response (dataSource: "meta-fallback") instead of the full payload, every harvested field beyond the base counts is honestly returned as null rather than guessed.
Username and URL input handling
urls accepts full profile URLs, plain usernames, or @handles interchangeably in the same list — the Actor normalizes each into a canonical username before fetching, so bulk lists don't need to be reformatted first.
Why not build this yourself?
Instagram's Graph API only exposes a Business/Creator account's own metrics to that account's own access token — there is no public endpoint for looking up an arbitrary third-party profile's follower count or bio data. Building an equivalent tool yourself means parsing Instagram's profile page HTML/embedded JSON directly, handling the fallback path when the full payload isn't available, and maintaining residential-proxy rotation for reliable access at scale. All of that is already implemented in this Actor's source.
How to use data extracted from Instagram?
Marketing and creator vetting
Check followersCount, isVerified, and latestPosts engagement before reaching out to a creator or influencer, using businessCategoryName to confirm the account is positioned in your target niche before committing outreach time.
Agencies auditing multiple prospect accounts
Run a full prospect list through urls in one batch and compare followersCount/postsCount/isBusinessAccount side by side to prioritize which accounts are worth a deeper manual review.
Market and competitive research
Track a set of competitor or category accounts' followersCount and latestPosts engagement over repeated scheduled runs to see which content style or posting cadence correlates with follower growth.
AI agents and automated pipelines
An agent can call this Actor as a quick profile-lookup tool inside a larger pipeline — resolving a username to its bio, category, and recent post sample before deciding whether to trigger a deeper scrape or outreach action.
🔼 Input sample
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
urls | No | array | Instagram profile URLs, usernames, or @handles to scrape | ["humansofny", "https://instagram.com/natgeo", "@cristiano"] |
proxyConfiguration | No | object | Proxy settings; residential proxies give the most reliable results | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |
{"urls": ["humansofny", "natgeo", "@cristiano"],"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Common pitfall: mixing plain usernames, full URLs, and @handles in the same list is fully supported and normalized automatically — there's no need to standardize the format before submitting a bulk list.
🔽 Output sample
Output is typed, normalized JSON — one row per profile (exportable as JSON, CSV, or Excel).
{"userId": "528817151","userName": "natgeo","userFullName": "National Geographic","profilePic": "https://scontent.cdninstagram.com/...","followersCount": 280000000,"followsCount": 145,"postsCount": 24000,"userUrl": "https://instagram.com/natgeo","biography": "Experience the world through the eyes of National Geographic photographers.","externalUrl": "https://natgeo.com","externalUrlShimmed": "https://l.instagram.com/?u=https%3A%2F%2Fnatgeo.com","bioLinks": [{"title": "Shop", "url": "https://natgeo.com/shop", "linkType": "external"}],"isVerified": true,"isPrivate": false,"isBusinessAccount": true,"isProfessionalAccount": true,"businessCategoryName": "Media/News Company","categoryName": "Media/News Company","profilePicUrlHD": "https://scontent.cdninstagram.com/...","highlightReelCount": 42,"igtvVideoCount": 310,"hasClips": true,"hasChannel": false,"isJoinedRecently": false,"pronouns": null,"latestPosts": [{"shortCode": "Cxyz123","url": "https://instagram.com/p/Cxyz123/","type": "Image","caption": "New photo essay out now.","likesCount": 45210,"commentsCount": 312,"timestamp": "2026-07-20T10:00:00.000Z","isVideo": false,"videoViewCount": null,"displayUrl": "https://scontent.cdninstagram.com/..."}],"timestamp": "2026-07-26 - 14:02","scrapedAt": "2026-07-26T14:02:11+00:00","dataSource": "web_profile_info"}
The dataset's default table view surfaces 14 of these fields; the remaining fields shown above (userId, externalUrlShimmed, bioLinks, isProfessionalAccount, categoryName, profilePicUrlHD, highlightReelCount, igtvVideoCount, hasClips, hasChannel, isJoinedRecently, pronouns, latestPosts, timestamp, dataSource) are still written to every row and available via the API or a custom dataset view.
How do you filter and target specific profiles?
This Actor is a direct-lookup tool rather than a discovery/directory search — you supply the exact profiles you want via urls, in any mix of username, full URL, or @handle format, and get one row back per profile. There is no category, location, or keyword filter to teach here, since the Actor resolves exactly the accounts you name rather than searching for them. The only real control is bulk scope: add as many profiles as you need to the same urls list to process them together in one run rather than one run per profile.
▶️ Want to try other Instagram scrapers?
| Scraper Name | What it extracts |
|---|---|
| Instagram Profile Scraper & Account Privacy Checker | Deeper profile details plus privacy-status checking |
| Instagram Followers Scraper: Related Profile Expansion | Full followers list plus related-profile discovery |
| Instagram Following Scraper: Related Profiles List | Full following list plus related-profile discovery |
| Instagram Followers: With Bot Profile checker | Follower/following lists with quality/authenticity scoring |
| LinkedIn Company About Scraper With Firmographic Enrichment | Comparable company-profile snapshot for LinkedIn |
| Facebook Group Profile Scraper | Comparable profile-snapshot lookup for Facebook groups |
How to extract Instagram data programmatically
Every run is a standard Apify Actor call — one API request with your token, JSON input, JSON profile data back.
Python example
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_API_TOKEN>")run_input = {"urls": ["natgeo", "humansofny"]}run = client.actor("<YOUR_USERNAME>/instagram-followers-count-scraper").call(run_input=run_input)for profile in client.dataset(run["defaultDatasetId"]).iterate_items():print(profile["userName"], profile["followersCount"], profile["isVerified"])
Export to spreadsheets or CRM
Export the dataset directly as CSV or Excel, then map userName/userUrl to your CRM's contact fields and followersCount/businessCategoryName to a segmentation column for prioritizing outreach.
Is it legal to scrape Instagram profile data?
Bio text, full name, and profile pictures are personal data for individual (non-business) accounts, so GDPR and CCPA obligations apply to storing and using that data. Public Instagram profiles are visible to any logged-out visitor, and business-account data (category, business flags) is closer to product/business data than personal data — but downstream storage of individual creator profiles should still follow applicable data-protection rules. Consult legal counsel for commercial applications involving bulk storage of personal data.
❓ FAQ
Can I get the follower count without the full profile data?
The Actor always returns the full profile payload in one request — there's no separate lightweight mode, since the follower/following/post counts and the rest of the profile fields come from the same page load at no extra cost.
How accurate is the latest-posts data?
latestPosts reflects up to the 12 most recent posts present in the profile payload at request time — it's a snapshot, not a live feed, so a post published moments after the run won't appear until the next run.
How many profiles can I get per run?
There's no fixed cap in the input schema — add as many profiles as needed to the urls list; the Actor processes them sequentially with a polite delay between requests to avoid rate-limit cascades.
Do I need an Instagram account to use this?
No — this Actor reads Instagram's public profile page directly and requires no login, session cookie, or API key.
What happens when a profile can't be fully resolved?
The Actor falls back to a limited response (dataSource: "meta-fallback") with only the base counts populated; every other field is returned honestly as null rather than a guessed value.
Does Instagram Followers Count Scraper work with Claude, ChatGPT, and AI agent frameworks?
It has no dedicated MCP server registration in this Actor's current setup, but it is callable as a standard Apify API endpoint by any agent framework that can make an authenticated HTTP request and parse JSON.
How does this compare to other Instagram profile-lookup scrapers?
No independently verifiable competitor listing could be confirmed at the time of writing, so no specific comparison is made here. This Actor's distinguishing feature is returning the full harvested profile payload (bio links, category, latest posts) rather than just the three headline counts.
Can I look up a private account?
Yes, a private account's basic public fields (username, verification status, isPrivate: true) will still resolve, but bio, external URL, and post data will not be available since Instagram doesn't expose that content for private accounts to logged-out visitors.
Can I mix usernames and full URLs in the same run?
Yes — urls accepts any mix of plain usernames, full profile URLs, and @handles in the same list; each entry is normalized to its username before fetching.
Conclusion
Instagram Followers Count Scraper turns a plain username or URL list into a structured profile snapshot — follower/following/post counts, full bio data, and the latest posts, all from one page load with no login required. It's built for marketers, agencies, and researchers who need a quick, bulk profile lookup rather than manually opening each Instagram page. Start a run with your target usernames or URLs to get the full profile dataset back in one pass.