Instagram Related Person Scraper With Profile Enrichment avatar

Instagram Related Person Scraper With Profile Enrichment

Pricing

$14.99/month + usage

Go to Apify Store
Instagram Related Person Scraper With Profile Enrichment

Instagram Related Person Scraper With Profile Enrichment

Scrapes related people from any Instagram profile, capturing suggested accounts, usernames, bios, follower counts, categories, and profile URLs. Ideal for influencer discovery, audience mapping, competitor research, and automated identification of similar Instagram profiles

Pricing

$14.99/month + usage

Rating

5.0

(1)

Developer

Scrapio

Scrapio

Maintained by Community

Actor stats

2

Bookmarked

117

Total users

7

Monthly active users

46 days

Issues response

11 days ago

Last modified

Share

Instagram Related Profiles Network Scraper πŸ•ΈοΈ

Extract the accounts Instagram suggests as related / similar for any public profile, then expand them into a de-duplicated network. This Instagram related profiles scraper turns the "Suggested for you / Related accounts" graph into structured data for influencer discovery, competitor research, lookalike audience building, creator-network mapping, and lead generation.

The actor reads Instagram's public web_profile_info endpoint (the same data the website loads) β€” no login and no cookies required.

What it does

  • Finds the related / suggested profiles for every seed you provide.
  • Emits a full seed profile summary (followers, following, posts, bio, category, external URL, verified/private/business flags, HD picture).
  • Flat output (default): one row per related profile β€” ready for CSV, Google Sheets and databases.
  • Optional enrichment: re-fetches each related profile for follower/following/post counts, bio, category, external URL, business flags and bio-extracted emails/links.
  • Recursive depth crawl (related-of-related, up to 3 hops).
  • Global de-duplication with a co-suggestion frequency signal (suggestedByCount, suggestedBy[]) β€” profiles surfaced by several seeds are the strongest matches.
  • Filters: verified-only, exclude-private (free), plus minimum-followers and bio-keyword (enrichment required).

Important: result count & pagination

Instagram returns a fixed set of roughly 30-80 related accounts per profile in a single request. There is no pagination β€” you cannot get 1,000 related accounts from one seed. max_profiles only slices the returned list (max 80). To build a larger network, use multiple seeds and/or increase depth.

Input

FieldTypeDescription
urlsarrayInstagram profiles. Accepts URLs, @handles, plain usernames, numeric user IDs, or { "username": "...", "limit": N } objects.
max_profilesintegerRelated profiles to keep per seed (0-80, default 30). Slices the fixed related set.
outputModeenumflat (one row per related profile, default) or nested (one row per seed with related_profiles[]).
depthenum1 (seed's related only, default), 2 (related-of-related), 3 (three hops).
enrichProfilesbooleanRe-fetch each related profile to fill counts/bio/category/flags. Default false.
maxEnrichedProfilesintegerCap on enriched profiles (default 25).
verifiedOnlybooleanKeep only verified profiles (free filter).
excludePrivatebooleanDrop private profiles (free filter).
minFollowersintegerMinimum followers. Requires enrichProfiles; ignored (with a warning) otherwise.
bioKeywordstringKeep profiles whose bio contains this text. Requires enrichProfiles; ignored (with a warning) otherwise.
proxyConfigurationobjectApify Proxy. Residential recommended.

Example input:

{
"urls": ["https://www.instagram.com/nasa/", "natgeo"],
"max_profiles": 30,
"outputMode": "flat",
"depth": 1,
"enrichProfiles": true,
"maxEnrichedProfiles": 25,
"verifiedOnly": false,
"excludePrivate": true,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

Flat mode emits one seed row per input plus one related row per discovered profile. Rows share a common column set (unavailable values are null, never fabricated):

FieldDescription
typeseed, related, or error.
depth0 for seeds, 1..3 for related profiles.
username, fullName, userIdProfile identity.
parentUsername / discoveredViaThe profile whose related list surfaced this row.
positionRank within that related list.
profileUrl, profilePicUrl, profilePicUrlHDLinks.
isVerified, isPrivateFrom the related node (always present).
followersCount, followsCount, postsCountPopulated on seeds; on related rows only when enriched (else null).
biography, categoryName, externalUrl, isBusinessAccountPopulated on seeds; on related rows only when enriched.
bioEmails, bioLinksDeterministically extracted from the bio (no AI).
suggestedByCount, suggestedByCross-seed co-suggestion frequency and the list of parents.
relatedCountOn seed rows: how many related profiles that seed surfaced.
enrichedWhether enrichment filled this row.
errorPopulated on error rows (failed fetch / unresolvable input).
scrapedAtISO-8601 UTC timestamp.

Example related row (enriched):

{
"type": "related",
"depth": 1,
"username": "esa",
"fullName": "European Space Agency",
"parentUsername": "nasa",
"discoveredVia": "nasa",
"position": 3,
"profileUrl": "https://www.instagram.com/esa/",
"userId": "1067259270",
"isVerified": true,
"isPrivate": false,
"isBusinessAccount": true,
"followersCount": 4200000,
"followsCount": 120,
"postsCount": 3800,
"categoryName": "Science, Technology & Engineering",
"biography": "European Space Agency ...",
"externalUrl": "https://www.esa.int/",
"bioEmails": [],
"bioLinks": [],
"suggestedByCount": 1,
"suggestedBy": ["nasa"],
"enriched": true,
"scrapedAt": "2026-07-02T12:00:00Z"
}

How it works

  1. Bootstraps a public web session from a seed's profile page (harvests x-ig-app-id and csrftoken).
  2. Calls GET /api/v1/users/web_profile_info/?username=... per profile via curl_cffi Chrome TLS impersonation, with retries and a proxy fallback.
  3. Reads edge_related_profiles (falls back to edge_chaining) for related accounts.
  4. Optionally re-fetches each related profile for enrichment, applies filters, de-duplicates globally and computes co-suggestion frequency.

Billing

Pay-per-event: one row_result event is charged per related profile row (the product). Seed summary rows and error rows are not charged.

Legality & compliance

Only public profile data is accessed; private accounts are never bypassed. Use scraped data responsibly and in line with Instagram's terms and applicable data-protection law.

Keywords

Instagram related profiles scraper, Instagram suggested accounts, similar accounts finder, Instagram network mapping, influencer discovery, lookalike audience, competitor research, creator network graph, Instagram profile scraper, follower count extractor, bio email extractor, Instagram lead generation, related accounts API, Instagram data export CSV.