Email Extractor — Emails, Phones & Social Links from Websites
Pricing
from $1.00 / 1,000 results
Email Extractor — Emails, Phones & Social Links from Websites
Extract email addresses, phone numbers, and social media links from any website. Bulk processing up to 100 domains in parallel. Smart crawling prioritizes contact pages. Handles obfuscated emails. Perfect for lead generation, sales prospecting, and B2B outreach.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Raven
Actor stats
0
Bookmarked
5
Total users
3
Monthly active users
5 days ago
Last modified
Categories
Share
Extract Emails, Phone Numbers & Social Links from Any Website
Powerful Apify Actor for lead generation and contact discovery. Provide a list of websites or domains and get back structured contact data: email addresses, phone numbers, and social media profiles (Facebook, Twitter/X, LinkedIn, Instagram, YouTube, TikTok, GitHub).
Why use this Actor?
- Bulk extraction — process up to 100 domains in a single run, all crawled in parallel
- Smart crawling — automatically prioritizes contact, about, impressum, and team pages so you get results faster with fewer pages scanned
- Handles obfuscated emails — decodes
[at],(at), HTML entities (@), and other common anti-scraping tricks - Clean, filtered results — automatically removes junk emails (noreply, test, example), filters out non-useful domains (social media, search engines, CDNs, analytics), and deduplicates everything
- Reliable — automatic retry with exponential backoff (5 attempts) for failed requests. Proxy rotation on errors when proxy is enabled
- Lightweight & fast — uses raw HTTP requests with browser-like TLS fingerprints (curl_cffi). No headless browser overhead, so it runs faster and costs less
- Flexible input — accepts URLs in any format:
example.com,www.example.com,https://example.com/page, or just a bare domain - Configurable — control crawl depth, pages per domain, concurrency, and proxy settings
Use cases
- Lead generation — build contact lists from prospect websites
- Sales prospecting — find decision-maker emails and company phone numbers at scale
- Market research — collect contact info and social media presence across competitors
- Data enrichment — enrich your CRM or database with missing contact details
- Outreach campaigns — gather verified emails for cold email or partnership outreach
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
startUrls | array | required | List of websites to extract contacts from (max 100). Accepts any format: full URLs, domains, with or without www/protocol |
maxDepth | integer | 2 | Crawl depth from the start page. 0 = start page only |
maxPagesPerDomain | integer | 10 | Maximum number of pages to crawl per domain |
concurrency | integer | 10 | How many domains to process in parallel (1-20) |
useProxy | boolean | false | Whether to use a proxy |
proxyConfiguration | object | Apify Proxy | Proxy settings (only applies when useProxy is enabled) |
Input example
{"startUrls": [{ "url": "https://example.com" },{ "url": "another-site.org" },{ "url": "www.company.ch" }],"maxDepth": 2,"maxPagesPerDomain": 50,"concurrency": 10,"useProxy": false}
Output
Each item in the dataset represents one domain with all contacts found across its pages:
{"url": "https://example.com","domain": "example.com","emails": ["info@example.com", "sales@example.com"],"phones": ["+41 44 123 45 67"],"socialLinks": {"facebook": "https://facebook.com/example","twitter": "https://x.com/example","linkedin": "https://linkedin.com/company/example","instagram": null,"youtube": null,"tiktok": null,"github": null},"pagesScanned": 12,"scrapedAt": "2026-04-07T12:00:00.000Z"}
Output fields
| Field | Type | Description |
|---|---|---|
url | string | The start URL that was crawled |
domain | string | Domain name |
emails | array | List of unique email addresses found |
phones | array | List of unique phone numbers found |
socialLinks | object | Social media profile URLs (null if not found) |
pagesScanned | integer | Number of pages actually crawled on this domain |
scrapedAt | string | ISO 8601 timestamp of when the crawl finished |
How it works
- Normalizes input — accepts URLs in any format and converts them to proper URLs
- Filters junk domains — skips social media, search engines, CDNs, and other non-useful sites
- Crawls with priority — starts with the homepage, then immediately targets contact/about/impressum pages before crawling the rest
- Extracts contacts from every page:
- Emails — regex +
mailto:links + deobfuscation of[at],(at), HTML entities - Phones — regex +
tel:links, international formats with+prefix - Social links — detects profile URLs for 7 major platforms, filters out share/intent links
- Emails — regex +
- Deduplicates and filters — removes junk, normalizes, and returns clean results
- Pushes results — one structured record per domain to the Apify dataset
Tips for best results
- Set
maxDepth: 0if you only need contacts from landing pages (fastest mode) - Increase
maxPagesPerDomainfor large corporate sites with deep navigation - Enable proxy (
useProxy: true) if you're getting blocked or rate-limited - The Actor automatically prioritizes pages with "contact", "about", "impressum", "team", "support" in the URL path
Support
Questions, bug reports, or feature requests: afrcanec@gmail.com
Tags
email-extractor contact-scraper lead-generation email-scraping phone-extractor social-media-links web-scraping b2b-leads sales-prospecting data-enrichment bulk-email-finder website-crawler apify-actor contact-discovery outreach email-finder email-harvester email-collector contact-information company-emails business-contacts lead-finder prospect-emails email-lookup domain-email-search bulk-contact-scraper website-email-extractor scrape-emails find-emails extract-contacts phone-number-scraper social-media-scraper linkedin-extractor facebook-extractor cold-email email-outreach crm-enrichment data-scraping contact-mining b2b-data sales-automation growth-hacking marketing-automation web-crawler site-scraper email-discovery business-email-finder company-contact-scraper