instagram profile scraper pro avatar

instagram profile scraper pro

Pricing

from $2.50 / 1,000 results

Go to Apify Store
instagram profile scraper pro

instagram profile scraper pro

Extract clean public Instagram profile data from usernames, profile URLs, or profile IDs. Get followers, bio, links, public contact clues, business signals, and profile status in a ready-to-download dataset.

Pricing

from $2.50 / 1,000 results

Rating

0.0

(0)

Developer

Muhammad Qaseem Iqbal

Muhammad Qaseem Iqbal

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

3

Monthly active users

a month ago

Last modified

Share

Instagram Profile Scraper Pro ๐Ÿš€๐Ÿ“ธ

Turn public Instagram profiles into clean, organized data in minutes. โœจ

Instagram Profile Scraper Pro helps you collect public profile information from Instagram usernames, profile links, numeric profile IDs, or an existing Apify dataset. Add a list of profiles, run the Actor, and get structured results you can download, analyze, send to Google Sheets, connect to automations, or use in your own apps. ๐Ÿ“Šโšก

This Actor is built for public Instagram profile data only. It does not log in, use cookies, bypass private accounts, or collect hidden/private information. ๐Ÿ”’โœ…

What does Instagram Profile Scraper Pro do? ๐Ÿ‘ค

This Actor extracts useful public information from Instagram profile pages, including:

  • ๐Ÿ‘ค Username, profile URL, profile ID, and full name
  • ๐Ÿ“ Bio text and profile category
  • ๐Ÿ“ˆ Followers, following, and post counts
  • โœ… Verification and privacy status
  • ๐Ÿข Business/professional account signals
  • ๐Ÿ”— Website links and public bio links
  • ๐Ÿ“ฌ Public contact clues such as listed emails, phone numbers, domains, mailto links, or WhatsApp links
  • ๐Ÿ–ผ๏ธ Profile picture URLs
  • ๐ŸŽž๏ธ Optional latest public post/video previews
  • ๐Ÿ‘ฅ Optional related or suggested profiles
  • ๐Ÿ•ต๏ธ Optional public "About this profile" metadata, when available
  • ๐Ÿ” Optional change detection against a previous dataset
  • ๐Ÿงพ Clear status records for profiles that are missing, blocked, private, skipped, or unavailable

In short: give it Instagram profiles, and it gives you clean profile intelligence. ๐ŸŽฏ

Why use this Instagram profile scraper? ๐Ÿ’ก

Instagram profiles contain useful public signals for many teams and workflows. This Actor is especially helpful for:

  • ๐Ÿ›๏ธ Brand research - understand public brand accounts, websites, categories, and audience size
  • ๐Ÿค Influencer discovery - collect public creator profile details and follower counts
  • ๐Ÿ“Š Market research - compare public profiles in a niche, region, or industry
  • ๐Ÿงฒ Lead research - find public websites, domains, and listed contact clues
  • ๐Ÿ•ต๏ธ Competitor monitoring - track changes in public profile data over time
  • ๐Ÿงฐ No-code automation - send profile data into Google Sheets, Make, Zapier, Airbyte, n8n, or webhooks
  • ๐Ÿงช Data enrichment - enrich a list of Instagram handles from another Apify Actor or your own dataset

Quick start ๐Ÿšฆ

You do not need to code. ๐Ÿงก

  1. ๐Ÿ“ Open the Actor on Apify.
  2. ๐Ÿ‘ค Enter one or more Instagram usernames, profile URLs, or profile IDs.
  3. โš™๏ธ Keep the default settings for the cheapest quick run.
  4. โ–ถ๏ธ Click Start.
  5. ๐Ÿ“ฅ Download your results as JSON, CSV, Excel, XML, RSS, or HTML.

Example inputs you can paste:

nasa
@instagram
https://www.instagram.com/apifytech/
528817151

What can you scrape? ๐Ÿงพ

Data typeIncluded?Notes
๐Ÿ‘ค Basic profile detailsโœ… YesUsername, ID, full name, URL, bio
๐Ÿ“ˆ Public metricsโœ… YesFollowers, following, posts, highlights, IGTV/video count when available
โœ… Account signalsโœ… YesVerified, private, business/professional status
๐Ÿ”— Public linksโœ… YesWebsite and bio links
๐Ÿ“ฌ Public contact cluesโœ… YesOnly if publicly listed on the profile or links
๐ŸŽž๏ธ Latest posts/videosโš™๏ธ OptionalOff by default to keep runs cheaper
๐Ÿ‘ฅ Related profilesโš™๏ธ OptionalOff by default to reduce extra data and cost
๐Ÿ•ต๏ธ About-profile dataโš™๏ธ OptionalOnly when publicly available
๐Ÿ” Change detectionโš™๏ธ OptionalCompare against a previous dataset
๐Ÿ” Private profile contentโŒ NoPrivate content is not collected
๐Ÿช Logged-in/cookie-only dataโŒ NoThis Actor does not log in

Input settings explained โš™๏ธ

The most important setting is Instagram profiles. Add usernames, profile URLs, or IDs there. Everything else is optional.

SettingPlain-English meaning
๐Ÿ‘ค profileInputsThe Instagram profiles you want to scrape
๐Ÿ“ฆ inputDatasetIdRead profile names from another Apify dataset
๐Ÿท๏ธ inputDatasetFieldThe dataset column that contains the username or URL
๐Ÿ”ข maxProfilesMaximum number of profiles to process
๐ŸŽž๏ธ includeLatestPostsAdd latest public post/reel/carousel previews
๐Ÿ‘ฅ includeRelatedProfilesAdd related or suggested public profiles
๐Ÿ•ต๏ธ includeAboutAdd public account-history metadata if Instagram exposes it
๐Ÿ”— includeExternalUrlsInclude public websites and bio links
๐ŸŒ resolveExternalUrlsFollow redirected links to their final destination
๐Ÿ“ฌ includeContactInfoExtract public emails, phones, domains, and messaging links if listed
๐Ÿ“„ outputModeChoose compact, full, or split output
๐Ÿš€ crawlerModeChoose the cheapest HTTP mode or browser fallback
๐Ÿ” maxRequestRetriesRetry failed profiles if needed
๐Ÿ›ก๏ธ proxyConfigurationOptional proxy settings

The Actor is already configured to run cheaply by default. ๐Ÿช™

For the lowest-cost runs, keep these defaults:

  • โœ… crawlerMode: httpOnly
  • โœ… proxyConfiguration.useApifyProxy: false
  • โœ… includeLatestPosts: false
  • โœ… includeRelatedProfiles: false
  • โœ… includeAbout: false
  • โœ… resolveExternalUrls: false
  • โœ… outputMode: compact
  • โœ… maxRequestRetries: 0
  • โœ… Default memory: 1024 MB

These settings avoid browser startup, proxy charges, optional extra requests, and very large output rows. ๐ŸงŠ

Turn on richer options only when you need more data and are comfortable with the extra runtime cost. โšก

Example input: simple profile lookup ๐Ÿ”Ž

{
"profileInputs": ["nasa", "@apifytech", "https://www.instagram.com/instagram/"],
"includeLatestPosts": false,
"includeRelatedProfiles": false,
"includeAbout": false,
"outputMode": "compact"
}

Example input: richer creator research ๐ŸŒŸ

{
"profileInputs": ["nasa", "natgeo", "spacex"],
"includeLatestPosts": true,
"maxLatestPostsPerProfile": 12,
"includeRelatedProfiles": true,
"maxRelatedProfiles": 20,
"includeAbout": true,
"outputMode": "full"
}

Example input: use profiles from another dataset ๐Ÿ“ฆ

{
"inputDatasetId": "DATASET_ID",
"inputDatasetField": "username",
"maxProfiles": 1000,
"includeLatestPosts": false,
"outputMode": "compact"
}

Example input: monitor profile changes ๐Ÿ”

{
"profileInputs": ["nasa", "apifytech"],
"enableChangeDetection": true,
"baselineDatasetId": "PREVIOUS_DATASET_ID",
"outputMode": "compact"
}

Output format ๐Ÿ“ค

Results are saved to the Actor's default dataset. Each profile becomes one clean record. โœ…

Here is a shortened example:

{
"recordType": "profile",
"status": "ok",
"input": {
"raw": "nasa",
"normalized": "nasa",
"type": "username"
},
"id": "528817151",
"username": "nasa",
"url": "https://www.instagram.com/nasa/",
"fullName": "NASA",
"biography": "Making the seemingly impossible, possible.",
"followersCount": 104421255,
"followsCount": 91,
"postsCount": 4817,
"verified": true,
"private": false,
"isBusinessAccount": true,
"businessCategoryName": "Government Agencies",
"externalUrl": "https://www.nasa.gov/",
"latestPostsCount": 0,
"relatedProfilesCount": 0,
"publicContact": {
"emails": [],
"phones": [],
"domains": ["nasa.gov"]
},
"extraction": {
"route": "http",
"httpStatus": 200,
"retryCount": 0
},
"scrapedAt": "2026-06-15T14:22:06.553Z"
}

If a profile cannot be scraped, the Actor can still return a clear record explaining what happened. ๐Ÿงญ

Example:

{
"recordType": "profile",
"status": "not_found",
"statusReason": "PROFILE_NOT_FOUND",
"input": {
"raw": "missing_profile",
"normalized": "missing_profile",
"type": "username"
},
"extraction": {
"route": "http",
"httpStatus": 404,
"errorType": "NotFoundError",
"errorMessage": "Profile not found"
}
}

Output modes ๐Ÿ“š

ModeBest forWhat you get
๐Ÿงพ compactSpreadsheets, quick exports, lower-cost runsMain profile fields and counts
๐Ÿงฌ fullDetailed analysisFull nested profile data in one dataset item
๐Ÿ—‚๏ธ splitWorking with posts/related profiles separatelyProfile rows plus separate datasets for extra items

How many profiles can it scrape? ๐Ÿ“

You can enter a small list or process many profiles from a dataset. The default maximum is 1000 profiles per run, and the input schema allows up to 100000.

Actual results can vary because Instagram changes often and some profiles may be private, missing, blocked, rate-limited, or unavailable. For the best estimate, run a small test first, then scale up. ๐Ÿงช

How much will it cost? ๐Ÿ’ฐ

Cost depends on:

  • ๐Ÿ”ข Number of profiles
  • โš™๏ธ Whether optional enrichments are enabled
  • ๐ŸŒ Whether proxies are used
  • ๐Ÿ–ฅ๏ธ Whether browser mode is needed
  • ๐Ÿ” How many retries you allow
  • ๐Ÿ“ฆ Size of the output dataset

The default setup is designed to be inexpensive: HTTP-only, no proxy, compact output, no latest posts, no related profiles, no about-profile enrichment, and no retries. ๐Ÿช™

For the cheapest workflow, start with the defaults, test a small batch, then increase the profile count once you are happy with the result quality. โœ…

During the run ๐Ÿƒ

While the Actor runs, it:

  1. ๐Ÿงน Cleans and deduplicates your profile inputs
  2. ๐ŸŒ Visits each public profile
  3. ๐Ÿง  Extracts available public profile data
  4. ๐Ÿ“ฆ Saves results to the dataset
  5. ๐Ÿงพ Saves a run summary to the key-value store

The summary includes counts for succeeded, failed, blocked, skipped, not found, and invalid profiles. ๐Ÿ“Š

Integrations ๐Ÿ”Œ

You can use the results almost anywhere:

  • ๐Ÿ“Š Google Sheets
  • ๐Ÿงฉ Make
  • โšก Zapier
  • ๐Ÿ› ๏ธ n8n
  • ๐ŸŒฌ๏ธ Airbyte
  • ๐Ÿ“ Google Drive
  • ๐Ÿ”” Webhooks
  • ๐Ÿง‘โ€๐Ÿ’ป Apify API
  • ๐Ÿ Python
  • ๐ŸŸจ Node.js
  • ๐Ÿ—ƒ๏ธ BI tools and dashboards

This Actor is designed to collect only information that is publicly visible. It does not access private profiles, does not log in, does not accept cookies, and does not bypass restrictions. ๐Ÿ”’

That said, public profile data can still include personal data. You are responsible for using the data lawfully and ethically, following applicable privacy laws, platform rules, and your own legal obligations. When in doubt, ask a qualified legal professional. โœ…

Tips for better results ๐Ÿง 

  • โœ… Use clean usernames or full profile URLs
  • โœ… Start with a small test run before large jobs
  • โœ… Keep default settings for low-cost collection
  • โœ… Enable latest posts only when you really need content previews
  • โœ… Enable proxy or browser fallback only when success rate matters more than cost
  • โœ… Use compact output for CSV and spreadsheet workflows
  • โœ… Use full output when you want the richest single profile record
  • โœ… Use split output when you plan to analyze profile, post, and related-profile data separately

Troubleshooting ๐Ÿ› ๏ธ

ProblemWhat it usually meansWhat to try
๐Ÿšซ Profile is blockedInstagram limited access during the runLower concurrency, reduce request rate, enable proxy, or retry later
๐Ÿ”’ Profile is privateThe account is not publicPrivate content cannot be scraped
โ“ Profile is missingUsername does not exist or changedCheck the username in a browser
๐ŸŽž๏ธ No latest postsLatest posts were disabled, unavailable, or blockedEnable latest posts and try a small test
๐Ÿงพ Output is too largeFull data or optional enrichments are enabledUse compact mode
๐Ÿ•ต๏ธ About data missingInstagram did not expose it publiclyThis is normal for many profiles

FAQ ๐Ÿ™‹

Can I scrape private Instagram profiles? ๐Ÿ”

No. This Actor only works with public profile information.

Do I need Instagram login details? ๐Ÿช

No. The Actor does not use Instagram login, cookies, or private session data.

Can I scrape latest posts? ๐ŸŽž๏ธ

Yes. Turn on includeLatestPosts and choose how many previews to collect with maxLatestPostsPerProfile.

Can I scrape contact information? ๐Ÿ“ฌ

The Actor extracts public contact clues only when they are listed publicly, such as emails in a bio, domains from public links, mailto links, phone numbers, WhatsApp links, or public business contact fields.

Can I compare profiles over time? ๐Ÿ”

Yes. Run the Actor again later and use enableChangeDetection with a previous dataset ID.

Can I use this with Google Sheets? ๐Ÿ“Š

Yes. Download results as CSV or Excel, or connect the Actor through Apify integrations, Make, Zapier, n8n, or the Apify API.

What happens if a profile fails? ๐Ÿงญ

The Actor can add an error-style dataset item with a clear status such as not_found, blocked, failed, or skipped, so you can see what happened instead of wondering why a profile is missing.

Need help or want a feature? ๐Ÿ’ฌ

Use the Actor's Issues tab in Apify Console to report bugs, request improvements, or share feedback. Clear examples help a lot: include your input settings, what you expected, and what happened. ๐Ÿงก