Instagram Profile Scraper
Pricing
from $2.49 / 1,000 results
Instagram Profile Scraper
Instagram Profile Scraper SD - Instagram Profile Scraper is a social media data tool that looks up public Instagram accounts by username: exact followers, bio, links, category, account type, profile picture link, related profiles and up to 200 latest posts; 2 in 13 s - instagram account lookup.
Pricing
from $2.49 / 1,000 results
Rating
0.0
(0)
Developer
Neuro Scraper
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
4
Monthly active users
12 days ago
Last modified
Categories
Features
Share
Instagram Profile Scraper - account lookup by username, without login
The Instagram Profile Scraper looks up public Instagram accounts by username and returns one clean row per profile: exact follower and following counts, bio, bio links, category, account type, verified badge and the newest posts.
It is an Instagram account lookup for lists, not one profile at a time, and it doubles as an Instagram profile picture downloader: every row carries the largest profile picture link Instagram publishes. Measured: 2 profiles in 13 seconds, with no Instagram account and no cookies.
The Instagram Profile Scraper reads only what Instagram shows any logged-out visitor, so private content is never touched.
Why choose this Instagram Profile Scraper
- Exact counts, not rounded labels.
followersCountis the integer Instagram stores: bbcnews 30,921,645 in a 13-second test run, so you can sort, sum and compare. - Category and account type, read logged out.
businessCategoryName,accountType(personal, business, creator) andisBusinessAccountcome in every row; filters on them work in the same run. - Filters the top Store Actors offer.
minFollowers,maxFollowers,verifiedOnly,accountTypeandskipPrivate: 4 usernames in, the 2 that matched out, in 20 seconds. - Up to 50 related profiles per account.
includeRelatedProfilesadds the accounts Instagram suggests as similar: 50 for nasa, 24 for levainbakery. - Up to 200 latest posts inside each row.
latestPostsLimit100 returned 100 posts in 12 seconds, each with date, likes, comments and pinned flag. - Missing accounts are reported, not hidden. A username that does not exist is named in the log ("profile not found") and produces no row, so no result is charged; 2 profiles plus 1 missing took 17 seconds.
What you get: one row per profile
Each dataset row of the Instagram Profile Scraper is one Instagram account.
| Field | Meaning |
|---|---|
username | Account username |
fullName | Display name |
id | Instagram user id |
fbid | Second numeric id Instagram returns for the account |
url | Public link of the profile |
biography | Bio text |
biographyHashtags | #hashtags in the bio |
biographyMentions | @accounts in the bio |
externalUrl | First bio link |
externalUrlShimmed | First bio link through Instagram's redirect (l.instagram.com) |
bioLinks | All bio links with their titles |
followersCount | Followers (exact integer) |
followsCount | Accounts followed |
isVerified | Verified badge |
isPrivate | Private account |
isMemorialized | Memorialized account |
accountType | personal, business or creator |
isBusinessAccount | Business account |
isProfessionalAccount | Business or creator account |
businessCategoryName | Category shown on the profile (Brand, Bakery, Digital creator ...) |
profilePicUrl | Profile picture link |
profilePicUrlHD | Largest profile picture link Instagram publishes |
highlights / highlightsCount | Story highlight ids and titles / their number |
hasPublicStory / latestStoryAt | A story from the last 24 hours / time of the newest story |
hasReels | The account has reels |
isEmbedsDisabled | The owner blocked embedding |
pronouns | Pronouns shown on the profile |
threadsBadge | Threads badge shown on the profile |
latestPosts | Newest posts with link, type, caption, image, date, likes, comments and pinned flag |
relatedProfiles | Accounts Instagram suggests as similar (up to 50) |
inputUsername | The username or link you entered |
scrapedAt | When this row was read |
Export the dataset as JSON, CSV, Excel, XML or HTML, or read it through the Apify API. The schema of the Instagram Profile Scraper is stable, so a CRM import or integration keeps working.
Use cases
Instagram profile picture downloader: the largest picture link of every account
Brand teams and researchers often need the profile photo itself. The Instagram Profile Scraper puts two links in each row: profilePicUrl and profilePicUrlHD, the largest profile picture Instagram publishes for the account.
Open the link and save the image, or export a whole list of links at once. It is an Instagram pfp downloader for lists, or Instagram DP downloader as many call it: one run of the Instagram Profile Scraper, many usernames, one picture link per row.
The pixel size of that link was not measured, so no resolution is promised. Instagram profile picture download in bulk is then one click in any download manager that reads a CSV export.
Instagram account lookup for lists of usernames
An Instagram account lookup normally means typing one name at a time. Put hundreds of usernames, @handles or profile URLs into usernames and the Instagram Profile Scraper returns one row per account, in the order you gave them.
Each row answers the usual questions: is it real, is it verified, how many followers, what category, which links in the bio.
Instagram search by username, and Instagram lookup by handle
When you already know the handle, an Instagram search by username is the direct route. The Instagram Profile Scraper accepts nasa, @nasa or https://www.instagram.com/nasa/ in the same list; the URL and @handle test returned 2 profiles in 13 seconds.
Instagram account details by URL work the same way: paste the profile link. To find accounts by a topic word instead of a handle, use the Instagram Search Scraper.
Instagram profile lookup before you pay a creator
Agencies vet creators before they pay them. An Instagram profile lookup with the Instagram Profile Scraper shows the verified badge, the follower count, the account type, the category and the latest posts in one row.
Add minFollowers and verifiedOnly and the Instagram Profile Scraper drops the accounts that do not qualify before you read them.
Instagram profile checker for vetting lists
As an Instagram profile checker, the Instagram Profile Scraper also says when a handle no longer exists: "profile not found" in the log, with no row and no result event.
It is an Instagram profile info scraper and an Instagram public profile scraper in one: public data only, read the way a logged-out visitor sees it.
Instagram username to ID and Instagram user lookup
Developers need the numeric id behind a handle. Every row has id, so the Instagram Profile Scraper converts Instagram username to ID in bulk, plus fbid, the second id Instagram returns; it is an Instagram user ID lookup for whole lists.
The same Instagram user lookup gives the bio and links, so one run feeds both your database keys and your profile pages. It works as an Instagram user lookup without account, too: no login on your side.
View an Instagram profile without an account
To view an Instagram profile without an account, you do not need a login wall workaround. The Instagram Profile Scraper reads what any logged-out visitor sees and returns it as a table: bio, links, counts, highlights and the newest posts.
Turn on includeLatestPosts and set latestPostsLimit to see an account's recent work; 100 posts took 12 seconds. That is how to view Instagram profile without logging in, for one account or a thousand.
Instagram account info and bio for outreach lists
Outreach teams copy Instagram bio text and links by hand. The Instagram Profile Scraper returns the Instagram account info in one row: biography, bioLinks with titles, externalUrl, biographyMentions and biographyHashtags.
Filter with minFollowers, verifiedOnly or accountType and the Instagram Profile Scraper hands you a list that is ready for a CRM import.
How to use the Instagram Profile Scraper
- Open the Instagram Profile Scraper in Apify Console.
- Paste usernames, @handles or profile URLs into
usernames, one per line. - Choose the extras: latest posts, related profiles, and the filters you need.
- Keep the default RESIDENTIAL proxy, start the run and export the dataset.
That is the whole Instagram account lookup without account or password on your side. A first run of the Instagram Profile Scraper with the prefilled nasa and natgeo shows the output in about 13 seconds.
Input fields
| Field | Type | Default | What it does |
|---|---|---|---|
usernames | array | ["nasa", "natgeo"] | One per line: a username (nasa), an @handle (@nasa) or a profile URL (https://www.instagram.com/nasa/). |
includeLatestPosts | boolean | true | Adds the newest posts (link, type, caption, image) to each profile row. |
latestPostsLimit | integer | 12 | How many newest posts to add to each profile (with date, likes, comments and pinned flag); up to 200. |
includeRelatedProfiles | boolean | false | Adds up to 50 accounts Instagram suggests as similar to each profile. One extra request per profile. |
minFollowers | integer | 0 | Leave out accounts with fewer followers. |
maxFollowers | integer | 0 | Leave out accounts with more followers. |
verifiedOnly | boolean | false | Keep only accounts with the verified badge. |
accountType | string | any | Keep only this account type (Instagram's own account_type code, read logged out). |
skipPrivate | boolean | false | Leave out private accounts. |
maxItems | integer | 0 | Stops the whole run after this many dataset rows. 0 means no run-wide limit. |
proxyConfiguration | object | RESIDENTIAL | Instagram limits logged-out visitors per IP address; the Actor switches to a fresh IP when one is blocked. |
To find an Instagram account by username, add the handle and leave the filters at their defaults. Example input:
{"usernames": ["nasa", "@natgeo", "https://www.instagram.com/bbcnews/"],"latestPostsLimit": 30,"includeRelatedProfiles": true,"minFollowers": 10000}
Instagram data API and Python access
Every Apify Actor is a REST API, so the Instagram Profile Scraper API is one POST request: start a run of the Instagram Profile Scraper and read the dataset items when it finishes.
As an Instagram data API it feeds dashboards, CRMs and Google Sheets through an integration or a webhook. It is not Instagram's or Meta's official API; it reads public pages.
An Instagram profile scraper Python example with the Apify client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("neuro-scraper/instagram-reels-scraper-downloader-pro").call(run_input={"usernames": ["nasa", "natgeo"], "includeRelatedProfiles": True})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["username"], item["followersCount"], item["businessCategoryName"])
Instagram Profile Scraper pricing, speed and limits
The Instagram Profile Scraper uses pay-per-event pricing: one result event per dataset row (one profile). The price is $2.99 per 1,000 profiles on the Apify Free plan, $2.89 on Bronze, $2.69 on Silver and $2.49 on Gold and above, plus the platform usage of your run.
On the Apify Free plan a run is capped at 30 rows. Those rows are charged like any other; a paid plan removes the cap. Usernames that do not exist produce no row, so no result event is charged for them.
Speed measured in the Instagram Profile Scraper tests (home connection, no proxy, 2026-10-03):
| Test | Rows | Time |
|---|---|---|
| prefill input (regression) | 2 | 13 s |
| two profiles + one missing | 2 | 17 s |
| URL and @handle forms | 2 | 13 s |
| empty input (must end cleanly) | 0 | 1 s |
| NEW filters + related profiles + 30 latest posts | 2 | 20 s |
| pagination check: latestPostsLimit 100 | 1 | 12 s |
Limits of the Instagram Profile Scraper, stated plainly:
- The total number of posts is not shown to logged-out visitors, so it is not in the row.
- Business email, phone and address buttons are not public logged out; measured, the profile answer has no email or phone field.
- Join date and country ("about this account") are not available logged out.
- Private accounts: their posts and lists stay private;
skipPrivatedrops them from the dataset of the Instagram Profile Scraper.
Frequently asked questions
How do I look up an Instagram account without an account?
Add the username to the Instagram Profile Scraper and start the run. It reads the public profile logged out and returns bio, counts, links and posts as a row.
Can I look up an Instagram profile without logging in?
Yes. The Instagram Profile Scraper never logs in and never asks for cookies, so an Instagram account lookup without account works out of the box.
How do I download an Instagram profile picture in full size?
Open the profilePicUrlHD link from the row: it is the largest profile picture Instagram publishes for the account. The Instagram Profile Scraper returns the link; save the image from it, one account or a whole list.
How do I find an Instagram user ID from a username?
Run the Instagram Profile Scraper with the username; the id field is the numeric user id. A list of usernames gives a list of ids in one run of the Instagram Profile Scraper.
Can I look up an Instagram account by phone number or email?
No. Instagram offers no logged-out lookup by phone or email, so the Instagram Profile Scraper works from usernames, @handles and profile URLs only.
Can this profile scraper see private Instagram profiles?
No. Private accounts show their posts only to approved followers. The Instagram Profile Scraper reads public data only and never logs in, so a private profile stays private.
Does it show who viewed an Instagram profile?
No. Instagram does not publish who views a profile, to anyone, so neither the Instagram Profile Scraper nor any other tool can return it honestly.
Can I check if an Instagram account exists?
Yes. Add the handle: the Instagram Profile Scraper returns a row for an existing public account and logs "profile not found" for a missing one. A list of handles is checked in one Instagram Profile Scraper run.
Can I find out who owns an Instagram account?
Only what the account publishes: full name, bio, links, category and verified badge. The Instagram Profile Scraper does not reveal anything the owner kept private, and it has no email or phone field to offer.
Is the Instagram Profile Scraper free?
No, it is pay per result: $2.99 per 1,000 profiles on the Apify Free plan, less on paid plans. Free-plan runs are capped at 30 rows, and every row is charged.
Related Instagram Actors
| Actor | Link |
|---|---|
| Instagram Hashtag Scraper | neuro-scraper/instagram-reeel-scraper |
| Instagram Reels Scraper | neuro-scraper/instagram-reels-scraper |
| Instagram Posts Scraper | neuro-scraper/instagram-posts-scraper |
| Instagram Reels Downloader | neuro-scraper/instagram-reels-downloader |
| Instagram Trends Scraper | neuro-scraper/instagram-reels-scraper-and-downloader |
| Instagram Location Scraper | neuro-scraper/instagram-reels-scraper-and-downloader-advanced |
| Instagram Comments Scraper | neuro-scraper/instagram-reels-scraper-and-downloader-premium |
| Instagram Video Downloader | neuro-scraper/instagram-video-downloader |
| Instagram Scraper | neuro-scraper/instagram-video-scraper |
| Instagram Search Scraper | neuro-scraper/instagram-video-scraper-advanced |
| Instagram Image Downloader | neuro-scraper/instagram-video-scraper-and-downloader |
| Instagram Keyword Scraper | neuro-scraper/instagram-video-scraper-and-downloader-fastest |
Leave a review
If the Instagram Profile Scraper saved you time, please leave a star rating and a short review on its Apify page. Reviews help other buyers judge the Instagram Profile Scraper and tell us what to build next.