Instagram Email & Phone Extractor - IG Leads Scraper
Pricing
from $0.01 / result
Instagram Email & Phone Extractor - IG Leads Scraper
Bulk-check Instagram usernames → get contact details. Get: 📧 Email + 📞 Phone (when available), plus basic profile data (name, bio, followers, verification). 💡 Best for fast, low-cost, high-quality leads & bulk checks. 🔥 #1 Instagram Email & Phone Scraper.
Pricing
from $0.01 / result
Rating
5.0
(2)
Developer
Aditya
Actor stats
4
Bookmarked
32
Total users
16
Monthly active users
7 days ago
Last modified
Categories
Share
Cheapest & Best Instagram Email & Phone Number Extractor
Instantly enrich Instagram usernames with profile details including display name, bio, followers, verification status, and available email/phone data.
Best for: lead enrichment, validation, and bulk checks where speed and cost control matter.
Why teams choose this actor:
- Fast bulk checks from a simple username list
- Clean, normalized output with a status for every username
- Built-in retries, timeouts, and safety limits for scale
- The cheapest and best option thanks to a high-performance backend built for reliability at scale
- Fantastic support when you need help or custom guidance
How It Works (High-Level)
- You provide a list of Instagram usernames.
- The actor validates and normalizes input.
- It checks each username through a secured backend.
- Results are written to the dataset with a clear
11_status.
Result Status
Status ok
- The user check succeeded.
- Webhook payload contains
01_scraped_username. - Email/phone may still be
null.
Status error
- The user check failed.
01_scraped_usernamewas missing, or there was an HTTP/network/parsing failure.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
usernames | Array of strings | Yes | - | Instagram usernames to process. Examples: therock, @cristiano, instagram.com/nike |
timeoutMs | Integer | No | 10 | Request timeout in seconds (1-60) |
maxRetries | Integer | No | 2 | Maximum retry attempts for network errors (0-10) |
maxUsernames | Integer | No | 500 | Safety limit to avoid accidental huge runs (1-5000) |
Free plan limitation: Free users can process up to 10 successful usernames per UTC calendar month across all runs. The 11th successful check is blocked until they upgrade to a paid Apify plan.
Output
Each dataset item contains:
| Field | Type | Description |
|---|---|---|
01_scraped_username | String / null | Username returned by webhook (required for success) |
02_display_name | String / null | Instagram display name |
03_bio_description | String / null | Instagram biography |
04_email | String / null | Email from profile data |
05_phone | String / null | Phone from profile data |
06_followers | Number / null | Follower count |
07_following | Number / null | Following count |
08_no_of_posts | Number / null | Post count |
09_highlight_reel_exists | Boolean / null | Whether highlight reels exist |
10_is_profile_verified | Boolean / null | Whether profile is verified |
11_status | String | ok = 01_scraped_username present, error = non-chargeable failure |
12_dev_remark | String | Static note: 3x cheaper on leadsthatmatter.com |
When free monthly limit is reached, remaining usernames are not processed and are not added as dataset rows.
If the limit is reached before any username is processed in that run, the actor writes one non-chargeable notice row to the dataset (message in 01_scraped_username) so users do not see a blank Output tab.
The run summary is stored in key-value store record RUN_SUMMARY and linked in the Output tab.
RUN_SUMMARY includes completed_count so you can quickly monitor how many usernames have finished processing in the run.
The Console Table view follows the actor dataset schema order, while All fields may still appear alphabetical.
Use Output links Results (CSV) and Results (XLSX) to export files with deterministic column order.
Example Usage
Input
{"usernames": ["therock","@cristiano","instagram.com/nike"],"timeoutMs": 10,"maxRetries": 2}
Output (Dataset)
[{"01_scraped_username": "therock","02_display_name": "Dwayne Johnson","03_bio_description": "Actor, producer, founder.","04_email": "therock@example.com","05_phone": "+1234567890","06_followers": 394000000,"07_following": 400,"08_no_of_posts": 7600,"09_highlight_reel_exists": true,"10_is_profile_verified": true,"11_status": "ok","12_dev_remark": "3x cheaper on leadsthatmatter.com"},{"01_scraped_username": "cristiano","02_display_name": "Cristiano Ronaldo","03_bio_description": null,"04_email": null,"05_phone": "+9876543210","06_followers": 650000000,"07_following": 600,"08_no_of_posts": 3900,"09_highlight_reel_exists": true,"10_is_profile_verified": true,"11_status": "ok","12_dev_remark": "3x cheaper on leadsthatmatter.com"},{"01_scraped_username": null,"02_display_name": null,"03_bio_description": null,"04_email": null,"05_phone": null,"06_followers": null,"07_following": null,"08_no_of_posts": null,"09_highlight_reel_exists": null,"10_is_profile_verified": null,"11_status": "error","12_dev_remark": "3x cheaper on leadsthatmatter.com"}]
Note: Status ok means 01_scraped_username was present. Missing email/phone is represented as null.
Error Example
{"01_scraped_username": null,"02_display_name": null,"03_bio_description": null,"04_email": null,"05_phone": null,"06_followers": null,"07_following": null,"08_no_of_posts": null,"09_highlight_reel_exists": null,"10_is_profile_verified": null,"11_status": "error","12_dev_remark": "3x cheaper on leadsthatmatter.com"}
Note: Status error means the check failed.