Pricing
from $2.00 / 1,000 email founds
Website Contact & Email Extractor
Crawl a domain or list of URLs and extract emails, phone numbers, and social media handles. Cheerio-based crawling with configurable depth, proxies, and selectable extraction targets.
Pricing
from $2.00 / 1,000 email founds
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Website Contact & Email Extractor is a fast, no-code email scraper and contact scraper that crawls any website and pulls out emails, phone numbers, and social media profiles. Just paste a domain or a list of URLs, choose how deep to crawl, pick what to collect, and export a clean contact list to CSV, Excel, or JSON. It's the simplest way to extract emails and contact details from a website for lead generation, sales prospecting, and CRM enrichment.
Because it uses generic crawling (no website-specific selectors), it works across millions of sites with near-zero maintenance โ point it at one site or thousands.
What can the Website Contact & Email Extractor do?
- ๐ง Scrape email addresses from
mailto:links and visible page text - ๐ Extract phone numbers from
tel:links and page content - ๐ Find social media profiles โ Facebook, Instagram, X/Twitter, LinkedIn, YouTube, TikTok, GitHub, Pinterest, Telegram, WhatsApp
- ๐ Crawl multiple websites in a single run, each with its own page budget
- ๐๏ธ Control the crawl with per-site depth, max pages, and a max-results-per-category limit
- ๐งน Get clean, deduplicated results โ one tidy record per domain
- ๐ Built-in proxy rotation and anti-blocking via Apify Proxy
- ๐ค Export to CSV, Excel, JSON, or HTML, or pull results straight from the Apify API
Like every Apify Actor, this tool comes with the full power of the Apify platform: scheduling, monitoring, a REST API, webhooks, proxy rotation, and integrations with Make, Zapier, Google Sheets, Slack, and more.
What data can you extract from a website?
| Field | Description |
|---|---|
domain | The website the contacts belong to |
emails | List of unique email addresses found |
phones | List of unique phone numbers found |
socials | Social profiles with platform and url |
startUrl | The URL the crawl started from |
pagesCrawled | How many pages were scanned for that domain |
pagesWithContacts | How many pages contained at least one contact |
How to scrape emails and contact details from a website
- Click Try for free to open the Actor.
- Paste one or more website URLs or domains into the Start URLs field.
- Set the crawl depth (1 is enough for most contact pages) and max pages per domain.
- Tick the contact types you want: emails, phones, and/or social profiles.
- Click Start and watch the results fill in.
- Export your contact list as CSV, Excel, or JSON โ or grab it via the API.
That's it. No code, no browser extensions, no selectors to maintain.
Input
The Actor has a simple, point-and-click input โ see the Input tab for every option. The main settings are start URLs, crawl depth, max pages per domain, max results per category, the email/phone/social toggles, and proxy configuration.
Example input:
{"startUrls":[{"url":"https://example.com"},{"url":"another-site.com"}],"maxCrawlDepth":1,"maxPagesPerDomain":50,"maxResultsPerCategory":0,"extractEmails":true,"extractPhones":true,"extractSocials":true,"proxyConfiguration":{"useApifyProxy":true}}
Output example
You can download the dataset produced by the Website Contact & Email Extractor in JSON, CSV, Excel, or HTML. Each domain becomes one row:
{"domain":"example.com","startUrl":"https://example.com","emails":["hello@example.com","sales@example.com"],"phones":["+1 213 229 7475","+44 20 7071 4189"],"socials":[{"platform":"linkedin","url":"https://linkedin.com/company/example"},{"platform":"twitter","url":"https://x.com/example"}],"pagesCrawled":24,"pagesWithContacts":9}
How much does it cost to scrape contact details?
This Actor uses a transparent pay-per-event pricing model โ you pay only for what it does, with no monthly rental fee:
| You pay for | Price |
|---|---|
| Each page processed | $0.0005 |
| Each email found | $0.004 |
| Each phone number found | $0.002 |
| Each social profile found | $0.001 |
As a rough guide, crawling a 30-page site that returns 15 emails, 8 phones, and 4 socials costs about $0.10. You only pay for unique, deduplicated results, and you can set a maximum cost per run so spending never surprises you. New Apify accounts include free monthly usage credits, so you can try it at no cost.
Why use this email and contact scraper?
- ๐ Lead generation at scale โ build targeted B2B prospect lists from any set of websites
- ๐งฒ CRM enrichment โ fill in missing emails, phones, and socials for your existing accounts
- ๐ Sales prospecting & outreach โ turn a list of company domains into a ready-to-contact list
- ๐ค Automate it โ schedule recurring runs and push results to Google Sheets, your CRM, or any tool via the Apify API and integrations
Other Apify Actors you might like
- Shopify Store Product Scraper โ extract full product catalogs from any Shopify store
- Sitemap Website Content Crawler โ turn a site's pages into clean markdown for RAG and AI pipelines
Frequently asked questions
Is it legal to scrape contact details from websites?
This Actor collects publicly available contact information that website owners have chosen to publish. However, emails and phone numbers can be personal data, which is protected by GDPR in the EU, CCPA in California, and similar laws elsewhere. You should only collect and use this data when you have a legitimate, lawful basis to do so. If you're unsure, consult a legal professional.
Why didn't it find a phone number (or any contacts) on some sites?
The Actor reads a site's raw HTML, which keeps it fast and cheap. Contact details that are rendered only by client-side JavaScript, hidden behind forms, or shown as images won't be captured. Many modern SaaS sites also simply don't publish a phone number. Increasing the crawl depth often surfaces a dedicated contact page.
Can I crawl deeper or limit the results?
Yes. Use Max crawl depth to follow more link levels, Max pages per domain to cap the crawl size, and Max results per category to keep, say, only the top 5 emails, phones, and socials per site.
Should I use a proxy?
We recommend keeping Apify Proxy enabled so requests aren't all sent from a single IP. Datacenter proxies are cheapest and work for most sites; switch to residential for stricter targets.
Can I get the data through an API?
Absolutely. Every run stores results in an Apify dataset that you can fetch via the Apify API, connect to integrations, or schedule to run automatically.
How do I report a bug or request a feature?
Use the Issues tab on the Actor page. We welcome feedback and feature requests.
