Instagram Email Finder: 1 Credit, Email When Public
9/9 Instagram about lookups returned country (1 credit). Public email on 3/9 — null when unpublished. YouTube about costs 60 credits. Captured 2026-09-05.
An Instagram email finder that ships is a GET, not a username widget. On 2026-09-05, GET /v1/instagram/profile/about?handle=nasa cost 1 credit on the SocialCrawl API and returned author.ext.public_email: "public-inquiries@hq.nasa.gov", country: "United States", and account_created: "August 2013". Same call on natgeo: country and join month present, public_email: null. Still 1 credit. Still success: true. Null means unpublished, not a miss.
Nine of nine public Instagram accounts in this harvest returned country and join month. Three of nine returned a public email (nasa, mkbhd, sid.and.listen); phone 1/9 (garyvee); category 3/9. Smallest account this run: veritasium at 359,086 followers.
YouTube is a different lane. Cheap /v1/youtube/channel is 1 credit — ISO-2 country, public_email null on both handles in this run. /v1/youtube/channel/about is 60 credits and returned contact@veritasium.com / United States and neil@rickastley.co.uk / United Kingdom.
Auth is x-api-key. Contact lives on author.ext in the unified schema. Captured JSON below, then how to replay it with one API key.
How do you get an Instagram creator's public email via API?
The 1-credit about call is the Instagram email finder you can actually ship. As an Instagram creator email API, it returns the public Contact-panel address when the account publishes one, plus country and join month on the same payload. Treat it as an Instagram contact info API, not a guessed inbox.
The NASA about call (email present, 1 credit)
This is the address on the professional Contact panel, visible to anyone who taps Contact — not a derived mailbox.
curl -s -H "x-api-key: $SOCIALCRAWL_API_KEY" \
"https://www.socialcrawl.dev/v1/instagram/profile/about?handle=nasa"Captured 2026-09-05 (credits_used: 1, request_id: req-rU4h7n0AU5r8eklB):
{
"success": true,
"platform": "instagram",
"endpoint": "/v1/instagram/profile/about",
"credits_used": 1,
"cached": false,
"request_id": "req-rU4h7n0AU5r8eklB",
"data": {
"author": {
"id": "528817151",
"username": "nasa",
"display_name": "NASA",
"verified": true,
"followers": 104401035,
"url": "https://www.instagram.com/nasa/",
"ext": {
"account_created": "August 2013",
"country": "United States",
"public_email": "public-inquiries@hq.nasa.gov",
"public_phone": null,
"business_category": null
}
}
}
}Read the leaves, not just the inbox. Country and join month came back even though phone and category are unpublished. public_email is the only contact field NASA turned on. That is an Instagram email finder via API: published address when it exists, origin data when it does not.
natgeo: same call, email null, still a hit
National Geographic has 268 million followers and no public email on this surface. The call still billed 1 credit and still succeeded (request_id: req-rOS6OjktlMI6urlT):
{
"success": true,
"platform": "instagram",
"endpoint": "/v1/instagram/profile/about",
"credits_used": 1,
"cached": false,
"request_id": "req-rOS6OjktlMI6urlT",
"data": {
"author": {
"id": "787132",
"username": "natgeo",
"display_name": "National Geographic",
"verified": true,
"followers": 268623965,
"url": "https://www.instagram.com/natgeo/",
"ext": {
"account_created": "November 2010",
"country": "United States",
"public_email": null,
"public_phone": null,
"business_category": null
}
}
}
}Contact is a published field, not a scrape of the bio. Instagram's About this account panel is country ("Account based in") plus date joined. Email, phone, and the category label live on the professional Contact button and category — "anyone who taps Contact" can see them. /v1/instagram/profile/about combines those two surfaces. A null leaf means the account did not publish that field.
An Instagram email extractor UI that puts a Get Email button over this field is hiding a published absence. Null is the data.
Email-null handles in this run: natgeo, veritasium, mrbeast, garyvee, aliabdaal, hubermanlab. Email present: nasa, mkbhd (business@mkbhd.com), sid.and.listen (TeamSid@gersh.com). Do not invent others from this harvest.
Ordinary profile is additive, not a substitute
Instagram profile endpoints include ordinary GET /v1/instagram/profile at 1 credit. That call is useful. It is not a substitute for the about panel.
| handle | endpoint | public_email | business_category | country | join month |
|---|---|---|---|---|---|
| nasa | about | public-inquiries@hq.nasa.gov | null | United States | August 2013 |
| nasa | profile | absent | null | absent | absent |
| aliabdaal | about | null | Entrepreneur | United Kingdom | April 2012 |
| aliabdaal | profile | absent | Entrepreneur | absent | absent |
| sid.and.listen | about | TeamSid@gersh.com | Digital creator | United States | December 2024 |
| sid.and.listen | profile | TeamSid@gersh.com | Digital creator | absent | absent |
NASA's public-inquiries@hq.nasa.gov is about-only. Ordinary profile did not carry public_email at all. sid.and.listen writes TeamSid@gersh.com in the bio, so both profile and about return it, plus business_category: "Digital creator". aliabdaal has category "Entrepreneur" on both; email null on both.
If you only call /v1/instagram/profile, you miss about-panel emails like NASA's. Use about when you need the Contact-panel address; use profile when you already know the address lives in the bio.
Can you pull a YouTube channel email the same way?
Same author.ext shape. Different price, different surface. A YouTube channel email is not a 1-credit Instagram lookup with a different host. Check the cheap channel call first; spend 60 credits on /v1/youtube/channel/about only when you need the authenticated address. YouTube channel endpoints and per-endpoint credit costs are the two pages to keep open.
Check the 1-credit channel call first
Both veritasium and RickAstleyYT on GET /v1/youtube/channel (1 credit) came back with public_email: null and country as ISO-2 (US, GB). Neither channel writes an address into the public description. Subscriber counts are approximate (ext.followers_approximate: true): 21,200,000 for veritasium, 4,540,000 for RickAstleyYT.
curl -s -H "x-api-key: $SOCIALCRAWL_API_KEY" \
"https://www.socialcrawl.dev/v1/youtube/channel?handle=veritasium"The matching cheap-channel capture (request_id: req-6E8w9qfDa5BzXwQN) had ext.country: "US" and ext.public_email: null. Rick Astley on the same lane: GB, email null, request_id: req-ItSrl7PsIlZdKmz9.
Handle spelling: RickAstleyYT, not RickAstley. Wrong handle 404s (refunded). This is the one time the extra letters are the point.
The 60-credit About call is the authenticated email
When the cheap call's public_email is null and you need the About-tab address, call /v1/youtube/channel/about:
curl -s -H "x-api-key: $SOCIALCRAWL_API_KEY" \
"https://www.socialcrawl.dev/v1/youtube/channel/about?handle=veritasium"Captured 2026-09-05 (credits_used: 60, request_id: req-rLl8CSEH0t5Nzj2n):
{
"success": true,
"platform": "youtube",
"endpoint": "/v1/youtube/channel/about",
"credits_used": 60,
"cached": false,
"request_id": "req-rLl8CSEH0t5Nzj2n",
"data": {
"author": {
"id": "UCHnyfMqiRRG1u-2MsSQLbXA",
"username": "@veritasium",
"display_name": "Veritasium",
"followers": 21200000,
"posts_count": 530,
"url": "https://www.youtube.com/channel/UCHnyfMqiRRG1u-2MsSQLbXA",
"ext": {
"country": "United States",
"public_email": "contact@veritasium.com",
"followers_approximate": true
}
}
}
}Rick Astley about (request_id: req-EBoed1P9LU6SJf8R, 60 credits): neil@rickastley.co.uk / United Kingdom. Both emails and countries match the 2026-09-04 measurement. About-country is the English label (United States), not the cheap lane's US. Do not mix ISO-2 and English in one unlabeled column.
This is the About-tab "View email address" control the channel owner opted into — not the Google Account login email. YouTube Help documents the owner path as Customization → Profile → Contact info → enter email → Publish (channel profile). That is the control this 60-credit call reads. It is not a scrape of the description, which is why the 1-credit channel call was null on both handles.
YouTube's public Data API channels resource has snippet.country and no business-enquiry email field (channels resource). That is why this lane exists, and why it costs more.
Billing: 60 credits when an address is returned. Do not treat /v1/youtube/channel/about as a bulk 1-credit filter. Pattern: cheap channel first; call about only if that public_email came back null and you need the authenticated address.
What else comes back — country, phone, and professional category?
Email is one leaf. Instagram account country, join month, public phone, and Instagram professional category are why a single about call beats a Get Email widget. If you are building agency outreach lists, country and category come back on the same payload so you are not enriching a second time.
Country and join month on 9/9; the rest is sparse on purpose
GET /v1/instagram/profile/about · 1 credit · 2026-09-05. Nulls are data.
| handle | followers | country | public_email | public_phone | join month (account_created) | category (business_category) |
|---|---|---|---|---|---|---|
| natgeo | 268,623,965 | United States | null | null | November 2010 | null |
| nasa | 104,401,035 | United States | public-inquiries@hq.nasa.gov | null | August 2013 | null |
| mrbeast | 89,235,780 | United States | null | null | November 2015 | null |
| garyvee | 11,910,470 | United States | null | +12129315731 | January 2011 | null |
| hubermanlab | 7,959,247 | United States | null | null | December 2016 | Scientist |
| mkbhd | 5,212,155 | United States | business@mkbhd.com | null | March 2012 | null |
| sid.and.listen | 1,298,727 | United States | TeamSid@gersh.com | null | December 2024 | Digital creator |
| aliabdaal | 1,159,843 | United Kingdom | null | null | April 2012 | Entrepreneur |
| veritasium | 359,086 | Australia | null | null | April 2012 | null |
| 9 of 9 billed | 9/9 | 3/9 | 1/9 | 9/9 | 3/9 |
That 3/9 email rate is the Instagram email finder working as designed — it returns the Contact-panel address when the account publishes one, and null when it does not.
Phone example: garyvee → public_phone: "+12129315731", email null, country United States, joined January 2011. Category examples: aliabdaal Entrepreneur (UK), hubermanlab Scientist, sid.and.listen Digital creator. Category also comes back on ordinary /v1/instagram/profile when Instagram publishes it.
Join month is a label ("August 2013"), not a day-precise ISO date. joined_at was null on every about row. Do not invent a day.
We chose well-known public creators, not a random sample. Smallest Instagram account in this run is veritasium at 359,086 followers. Country still came back at that size. We did not re-verify "a few hundred followers" today.
An influencer email finder UI often prints an unlabeled "Location: United States" on a sample card, mixed with audience geo. This field is account country — Instagram's "Account based in" signal, not a viewer-majority chart.
Single lookups are fine; bulk region filter is not (yet)
Instagram country and email sit on a metered lane. High-volume region filtering needs a capacity uplift before we offer it. Single lookups in this showcase are unaffected. Do not plan "filter 10k handles by country for 1 credit each" on the 1-credit price.
Ghost handles refund
zzq_not_a_real_handle_20260903 on Instagram about → 404 RESOURCE_NOT_FOUND (handle_unresolved), credits_used: 0, request_id: req-u1kVJOrEZv6l2moT:
{
"success": false,
"credits_used": 0,
"request_id": "req-u1kVJOrEZv6l2moT",
"error": {
"type": "RESOURCE_NOT_FOUND",
"message": "The account could not be resolved from any available source, and no source reported a reason. You were not charged for this request.",
"status": 404,
"reason": "handle_unresolved"
}
}YouTube cheap channel ghost thischanneldoesnotexist99999 returned the same shape (request_id: req-UTZKDz05lTvVM9vH). Message on both: "You were not charged for this request." We did not ghost-probe YouTube channel/about (60 credits when an address is returned); we proved the refund on the 1-credit channel lane.
Null email and missing handle are different outcomes. One is a successful 1-credit lookup. The other is a 404 with zero credits.
How do you start using this?
Replay the Instagram email finder. Five minutes, one API key — enough to check a handle before it goes on a creator outreach list.
- Get a key at signup. Free credits come with it. Auth header is
x-api-key. - Replay Instagram about (1 credit):
curl -s -H "x-api-key: $SOCIALCRAWL_API_KEY" \
"https://www.socialcrawl.dev/v1/instagram/profile/about?handle=nasa"- If you also have a YouTube handle: cheap
/v1/youtube/channel?handle=veritasium(1 credit) first. Only then/v1/youtube/channel/about(60 credits) if you need the authenticated address. - Next: paste the same curl into the Explorer to see your data before writing a single line. Then the Instagram and YouTube hubs, endpoint pricing, and the API reference.
This showcase spent 134 credits (9×1 Instagram about + 3×1 Instagram profile + 2×1 YouTube channel + 2×60 YouTube about + 0 on two 404s). Replay NASA about first if you want to see a public email land.
We only return fields the account already published. Instagram Contact is visible to anyone who taps Contact; YouTube email only if the owner provided one. If you then send commercial email, CAN-SPAM still applies: accurate headers, non-deceptive subject, opt-out honored within 10 business days. That covers B2B too.
Paste the NASA curl into the Explorer if you want to watch the envelope before you wire it. Credit math for both lanes is on per-endpoint credit costs. If you need 1 vs 60, or null vs 404, the FAQ below is the short version.
Frequently asked questions
How do you find an Instagram email?
Call GET /v1/instagram/profile/about with the handle and an x-api-key header. 1 credit. author.ext.public_email is the public Contact-panel address when the account publishes one. Ordinary /v1/instagram/profile only has the address if it is also written in the bio (sid.and.listen); NASA's about-panel email does not appear on profile. That is how you run an Instagram email finder as an API call instead of a username widget.
Does Instagram show email on a profile?
Only if the owner turned on professional Contact (email/phone) or wrote an address in the bio. Personal accounts usually publish none. Country and join month can still come back on about when email is null (natgeo). The About this account panel itself does not list email.
How do you get a YouTube channel email?
Cheap /v1/youtube/channel (1 credit) returns public_email only when the channel wrote one in the public description — both handles in this run were null. /v1/youtube/channel/about (60 credits) is the authenticated About-tab address: contact@veritasium.com, neil@rickastley.co.uk. Not the Google login email. Not a bulk 1-credit filter.
Is the Instagram public email always there?
No. 3 of 9 about rows in the 2026-09-05 harvest had a non-null public_email; 6 of 9 were null on a successful 1-credit call. Null means unpublished. A missing handle is a 404 with credits_used: 0, which is a different outcome. An Instagram email finder that always returns an inbox is inventing data.
Can you get Instagram phone and country from the same call?
Yes — same about payload. Country 9/9 in this run. Phone 1/9 (garyvee, +12129315731). Category 3/9. Join month 9/9 as account_created (month-year label).
What's the difference between Instagram public email and YouTube authenticated email?
Instagram public_email is the professional Contact / bio address (1 credit). YouTube about public_email is the owner-opt-in "View email address" control (60 credits). Cheap YouTube channel country is ISO-2; about-country is the English label. Do not treat them as one column.
How much does an Instagram email lookup cost?
An Instagram email finder on about is 1 credit per lookup, billed whether email is present or null. Ghost handle: 0 credits. YouTube authenticated email is 60 credits when an address is returned. This post is single lookups; Instagram country/email is on a metered lane, so do not plan bulk region filters on the 1-credit price.
Related posts
Financial Data API: 1,255 Daily Bars, Both Closes
Financial data API: 1,255 AAPL daily bars with both closes, plus statements, an 81-contract options chain, and ticker news. Live from GET /v1/finance/.
Reddit search API: 25 posts per credit
Reddit search API now returns 25 posts per credit on three English queries (was ~7). Korean search billed 1. Comments flattened 647 at 5 credits, depth 9.
Scrape Threads: 55 Posts for 3 Credits + Comments
Scrape Threads with one API: 55 posts for 3 credits via multi-window search. Plus comments, carousel slides, and phrase expand that turned 0 hits into 44.
