Instagram Email Scraper avatar

Instagram Email Scraper

Pricing

from $1.40 / 1,000 found contacts

Go to Apify Store
Instagram Email Scraper

Instagram Email Scraper

Instagram leads — pay only for contacts found: emails, phone numbers & WhatsApp from contact buttons, bio and the Linktree or site behind the bio link, not just the bio. No login. City, category and followers in each row. From $4.95/1K found + a small check fee.

Pricing

from $1.40 / 1,000 found contacts

Rating

0.0

(0)

Developer

Instagram Data API

Instagram Data API

Maintained by Community

Actor stats

0

Bookmarked

58

Total users

24

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

Instagram email & phone scraper — pay per contact found

🆕 New: no contact on the profile? We open the page its bio link leads to — Linktree or the website with its contact page — and take the owner's email and phone from there. Same price. Tried it? Tell us in a review.

Paste usernames of businesses or creators and get the public email, phone, city, address and website from their Instagram profiles — in clean, separate columns ready for your CRM.

  • 💸 Main price only when a contact is found — $4.95 per 1,000 contacts found, plus $0.30 per 1,000 profiles checked.
  • 🔎 More contacts found — the Email, Call and WhatsApp buttons, plus emails and phones written in the bio (even name [at] brand [dot] com) and in mailto:, tel: and wa.me links. Still nothing? We check the page the bio link opens (Linktree, Beacons, Stan or the website and its contact page) — contactSource and contactUrl show where.
  • 🧹 Clean fields — the best contact in email and phone, every contact in emails and phones, and foundIn says where they came from. Phones as + and digits.
  • 📍 Context for outreach — city, street address, zip, category, followers, website and bio links.
  • 🔗 Emails of a brand's followers — run our Followers Scraper on the brand, then pick its dataset here.
  • 🔍 No usernames? Search by keyword and city — dentist + Austin: we find the businesses on Instagram and check each one's contacts.
  • 🧹 No duplicates — a username pasted twice is checked and charged once.
  • 🔓 No login; usernames that don't exist are free.

Why scrape Instagram emails and phone numbers?

  • B2B lead lists: public emails and phones of cafes, salons, gyms, shops and agencies.
  • Influencer outreach: emails of creators in your niche — also the ones they only write in the bio.
  • Pay for results: the main price only when a contact is actually found.

What data can I scrape from Instagram emails and phone numbers?

DataWhat it is
UsernameInstagram username (handle)
EmailBest email for outreach: the Email button first, otherwise the first email in the bio or links
PhoneBest phone: the Call button first, then WhatsApp, then the first number in the bio or links (+ and digits)
Found inWhere the contacts were found: button (Email, Call, WhatsApp), bio (profile text), link, bio_link (Linktree or a similar page from the bio link), website (the site from the bio link)
CityCity of the business address
CategoryCategory shown under the name, e.g. Coffee shop
FollowersFollower count
Contact foundTrue if at least one email or phone was found — only then the contact is charged

Up to 37 fields per row in total — the Output tab lists every one of them.

How to scrape Instagram emails and phone numbers

  1. Paste usernames or links into the input, one per line.
  2. Press Start — rows stream into the Output tab while the run goes.
  3. Download them as JSON, CSV, Excel or HTML, or get them through the API.

Works with any public profile on Instagram — no login, no cookies, no Instagram account of yours.

No input at hand? Press Start with an empty input — you get a 3-row sample.

Input example

{
"usernames": [
"natgeo"
],
"onlyWithContact": false,
"maxProfilesPerKeyword": 100
}

Output example: Instagram emails and phone numbers data

{
"username": "examplecafe",
"email": "hello@examplecafe.com",
"phone": "+15125550100",
"emails": [
"hello@examplecafe.com",
"events@examplecafe.com"
],
"phones": [
"+15125550100"
],
"foundIn": [
"bio",
"button"
],
"publicEmail": "hello@examplecafe.com",
"publicPhone": "+1 512-555-0100",
"whatsapp": null,
"city": "Austin, Texas",
"category": "Coffee shop",
"followers": 12400,
"isVerified": false,
"isPrivate": false,
"emailType": "own_domain",
"contactFound": true
}

Each row has up to 37 fields — the Output tab describes every one of them. Fields Instagram doesn't show come as null, never as a fake 0.

Coming from Apify's official Instagram scrapers? Turn on Also add Apify-style field names: every row also gets likesCount, commentsCount, videoPlayCount, timestamp, displayUrl, followersCount, followsCount, verified and more with the same values, and the post type as Video, Image or Sidecar — your sheets, code and n8n flows keep working. Long list of usernames? Upload it as a CSV or TXT file in Or upload a list.

Limits

  • Only what the account shows publicly — contact buttons, bio and links; we never guess emails.
  • Personal accounts rarely show contacts: for them you pay only the small check fee.
  • A number in a bio can be anything — we skip years, dates and follower counts, but check a phone before calling it.
  • Free Apify plan: the first 20 results of each run (looking through up to 15 pages of Instagram), up to 300 results a month across our Actors, from a daily free pool shared by all free users. Any paid Apify plan gets every result — no cap.

How much does it cost to scrape Instagram emails and phone numbers?

Pay per event: you pay for the rows you get, plus $0.0005 per run. No subscription to this Actor.

Apify planPer 1,000 found contactsWhat $5 of free credit gets you
Free$4.95≈ 1,000 found contacts
Starter$4.95—
Business and higher$4.95—

Every event of this Actor on the Starter plan:

EventWhat it isPrice
Found contactEach profile where a public email or phone was found$4.95 per 1,000
Checked profileEach profile checked for public contacts$0.30 per 1,000

Typical jobs on Starter:

  • 1,000 profiles where 300 show a contact ≈ $1.79

Always free: usernames that don't exist and duplicates. Set Maximum cost per run in the run options to cap any run.

Chain it with other Actors

Use the rows of an earlier run as the input: paste its dataset ID into Or: dataset from another run. For example, run Instagram Followers Scraper on a brand, then give its dataset to Instagram Email & Phone Scraper — you get the emails of the brand's followers. Works with the datasets of Apify's own Instagram Actors too.

Instagram emails and phone numbers API: Python, n8n, Make, Zapier and AI agents

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("instagram-data-api/instagram-email-phone-scraper").call(run_input={'usernames': ['natgeo'], 'onlyWithContact': False, 'maxProfilesPerKeyword': 100})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)

n8n, Make, Zapier or any HTTP client: one request runs the Actor and returns the rows — POST https://api.apify.com/v2/acts/instagram-data-api~instagram-email-phone-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN with the input JSON as the body.

AI agents (MCP) — your agent gets this Actor as a tool:

  • Claude Code: claude mcp add --transport http apify "https://mcp.apify.com?tools=instagram-data-api/instagram-email-phone-scraper"
  • Claude, Cursor, VS Code, n8n: add https://mcp.apify.com?tools=instagram-data-api/instagram-email-phone-scraper as a remote MCP server and sign in to Apify.
  • Ask it: “Find public emails and phones of these 100 coffee shops on Instagram.” · “Which of these creators list an email in their bio?”

FAQ: scraping Instagram emails and phone numbers

How do I get the emails of an account's followers? Run Instagram Followers Scraper on the account, then pick that run's dataset in Or: dataset from another run here. Only followers who show a public email or phone return a contact — business and creator accounts much more often than personal ones.

How does the keyword search work? Put business types in Or: find businesses by keyword and, if you like, a City. We search Instagram accounts like the app does — about 20 per page — and check the contacts of every account found. You pay the usual price per profile checked and per contact found; the search pages are free. With a city set, profiles that show no sign of it in their address, bio or name are left out.

Where do the contacts come from? From what each account shows publicly on Instagram: the Email, Call and WhatsApp buttons of business and creator accounts, plus emails and phone numbers written in the bio and in bio links. When the profile shows none, from the public page its bio link opens — a Linktree-style page or the website and its contact page — and only addresses of that site or a regular mailbox (Gmail, Outlook…), never a platform's or a theme developer's. Never from outside databases, and we never guess emails — foundIn, contactSource and contactUrl tell you where each row's contacts came from.

How do I get WhatsApp numbers from Instagram? Paste the usernames — or search businesses by keyword and city — and run. The number behind an account's WhatsApp button is in whatsapp and in phones; WhatsApp links in the bio and links (wa.me) are in phones with link in foundIn. Numbers come as + and digits, ready for WhatsApp Business or your CRM.

What will a run cost? $0.30 per 1,000 profiles checked plus $4.95 per 1,000 contacts found, on Starter. Example: 1,000 profiles where 300 show a contact cost $1.79.

Why no contact for some profiles? Some accounts show no contact anywhere — no buttons, nothing in the bio or links, and nothing on the page their bio link opens. You still get the profile row and pay only the small check fee.

Can I email these contacts? You're responsible for how you use them: follow GDPR and anti-spam rules such as CAN-SPAM, and contact people only for a legitimate reason.

Do I need an Instagram account or cookies? No. You only paste usernames, links or keywords. Nothing to log in, nothing to install, and your own Instagram account is never involved.

What am I charged for — and what's free? Only the events in the pricing table, plus $0.0005 per run. Rows with an error field are free, and duplicates are never returned or charged. Each run's SUMMARY record shows results and free rows.

Can I try it for free? Yes. On Apify's free plan you get the first 20 results of every run (up to 300 a month across our Actors), paid from the monthly free credit Apify gives every account. Paid plans get every result, with no cap.

Can I cap what a run costs? Yes. Set Maximum cost per run in the run options — the run stops at your limit and SUMMARY shows stoppedAtChargeLimit: true.

Can I use it from n8n, Make, Zapier or an AI agent? Yes, like any Apify Actor: REST API, webhooks, the n8n, Make and Zapier integrations, and the Apify MCP server for Claude, Cursor, VS Code and other MCP clients. Short timeout in your workflow or agent? Set Return what's ready after (seconds): the run stops on time with what it has collected, and you pay only for that.

For AI agents

Actor: instagram-data-api/instagram-email-phone-scraper
Does: Instagram email scraper for lead generation: emails, phones, WhatsApp from contact buttons, bio, Linktree. Main fee per contact. No login.
Input: {"usernames": ["natgeo"], "onlyWithContact": false, "maxProfilesPerKeyword": 100}
Output: one JSON row per result, up to 37 fields; main: username, email, phone, foundIn, city, category, followers, contactFound
Free: usernames that don't exist and duplicates
Price: event "contact-found" $4.95 per 1,000 on Starter + $0.0005 per run
Run: POST https://api.apify.com/v2/acts/instagram-data-api~instagram-email-phone-scraper/run-sync-get-dataset-items?token=APIFY_TOKEN

More Instagram Actors from us

ContentPeopleStories
All-in-one Instagram Scraper · Reels · Posts · Post details · Reel views checker · Hashtags · Search · Transcripts · Tagged posts · Audio · Locations · Hashtag statsProfiles · Followers count · Account age · Emails & phones · Similar accounts · Similar accounts with profiles · Followers · Comments · Likers · Engagement rate · Username checker · User ID · Follower checkerStories · Highlights

What changed and when — see the Changelog tab.

⌂ 换网址