Website Emails Scraper
Pricing
Pay per event
Website Emails Scraper
Extract emails, phone numbers, social profiles, and contact/about page URLs from public websites. Fast HTTP crawler for lead enrichment.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Share
Extract emails, phone numbers, social profile links, and contact/about pages from public websites.
Use this actor when you have a list of company websites and need a clean contact dataset for lead generation, recruiting, data enrichment, prospect research, or outreach preparation.
What does Website Emails Scraper do?
Website Emails Scraper crawls public website HTML and looks for contact details that companies publish on their pages.
It starts from each URL or domain you provide, fetches the homepage, follows likely contact/about/team/support links, and returns one structured row per website.
Typical extracted data includes:
- 📧 Email addresses
- ☎️ Phone numbers
- 🔗 Social profile links
- 📄 Contact/about/team page URLs
- 🌐 Crawled URLs
- 🧾 Page titles and evidence snippets
- ✅ Crawl status and errors
Who is it for?
This scraper is built for teams that already have website lists and need contact enrichment.
Sales and revenue teams
- 🧑💼 Enrich target account lists with public emails before outbound campaigns.
- 🧪 Test new market segments by scanning small batches of company domains.
- 🧾 Add evidence snippets so reps can verify where each contact was found.
Lead-generation and data teams
- 🏢 Clean prospect datasets for clients that need website-published contacts.
- 📊 Add email, phone, social link, and contact-page columns to existing business records.
- 🔁 Schedule repeat enrichment runs for fresh domains from forms, directories, or CRMs.
Recruiting, sourcing, and operations teams
- 🧲 Find company contact points and team/about pages for sourcing research.
- 🛒 Collect supplier or manufacturer contacts from official websites.
- 🧰 Connect Apify outputs to no-code workflows in Google Sheets, Make, Zapier, or CRMs.
Why use this actor?
Manual contact lookup is slow and inconsistent. Website Emails Scraper gives you a repeatable extraction workflow with predictable output fields.
You can run a small batch to qualify a few companies or a larger batch to enrich a complete prospect list.
The actor is HTTP-first, lightweight, and designed for public web pages. It does not require browser automation for typical sites, which keeps runs fast and cost-efficient.
What websites can it scan?
The actor scans public websites supplied by you.
Good inputs:
- Company homepages
- Agency websites
- SaaS websites
- Local business websites
- Supplier/manufacturer websites
- Public organization sites
Avoid inputs that require login, CAPTCHA completion, paid subscriptions, or private access.
What data can I extract from websites?
| Field | Description |
|---|---|
startUrl | URL submitted by the user after normalization |
domain | Hostname of the scanned website |
normalizedDomain | Domain without leading www. |
emails | Email addresses found in HTML or text |
phones | Phone-like numbers found in visible text |
socialLinks | LinkedIn, Facebook, Instagram, X/Twitter, YouTube, TikTok, Pinterest URLs |
contactPageUrls | Crawled pages that look like contact/about/team pages |
crawledUrls | Pages fetched during the run |
pageTitles | HTML page titles found while crawling |
matchedSnippets | Short text snippets around matched contacts |
pagesCrawled | Count of pages successfully crawled |
maxDepthReached | Deepest crawl depth reached |
status | succeeded, partial, or failed |
errors | HTTP or network errors captured per website |
crawledAt | ISO timestamp of extraction |
How much does it cost to scrape emails from websites?
This actor uses pay-per-event pricing.
You pay a small start fee per run and a per-result charge for each website contact result produced.
The default prefill scans one website with a low page limit, so your first run is inexpensive.
For best cost control:
- Start with 1-5 websites
- Keep
maxPagesPerSiteat 5 for testing - Increase depth only when you need more coverage
- Export results and inspect match quality before scaling
How to scrape website emails
- Open the actor on Apify.
- Add one or more website URLs in Start URLs or domains.
- Keep Maximum pages per website at 5 for your first run.
- Use Maximum crawl depth 1 to follow contact/about links.
- Start the run.
- Download the dataset as CSV, JSON, Excel, or via API.
Input settings
Start URLs or domains
Provide public website URLs. Bare domains are accepted; the actor normalizes them to HTTPS.
Examples:
https://www.apify.comexample.comhttps://company.example/contact
Maximum pages per website
Limits how many pages are fetched for each website. The actor prioritizes likely contact pages, so a small value is often enough.
Maximum crawl depth
0scans only the starting page.1follows contact/about/team links found on the starting page.2or3can discover more pages on complex sites.
Stay on the same domain
Enabled by default. This prevents the crawler from wandering to unrelated websites while still extracting social URLs from page content.
Request timeout
Controls how long to wait for each page before skipping it.
Output example
{"startUrl": "https://www.apify.com/","domain": "www.apify.com","normalizedDomain": "apify.com","pagesCrawled": 5,"emails": ["support@example.com"],"phones": [],"socialLinks": ["https://www.linkedin.com/company/apifytech"],"contactPageUrls": ["https://www.apify.com/contact"],"status": "succeeded"}
Tips for better results
- ✅ Use official company homepages instead of search-result URLs.
- ✅ Keep crawl depth low unless you need maximum recall.
- ✅ Scan contact/about/team pages directly when you already know them.
- ✅ Review
matchedSnippetsto validate where a contact was found. - ✅ Treat phone matches as leads to verify, because phone formats vary by country.
Common use cases
Lead enrichment
Upload a list of domains from your CRM and enrich them with website-published email addresses.
Prospect research
Find general contact channels for companies in a niche before building an outreach campaign.
Supplier contact collection
Collect supplier emails and phone numbers from manufacturer or distributor websites.
Recruiting research
Find team/contact pages and social profiles for companies you want to approach.
Dataset cleanup
Validate which websites in an existing list expose contact details publicly.
Integrations
You can connect the dataset to many workflows:
- Apify Dataset export to CSV or Excel
- Google Sheets via Apify integrations
- Make or Zapier automation
- CRM imports for HubSpot, Pipedrive, or Salesforce
- Data warehouses using the Apify API
- Internal enrichment pipelines using scheduled runs
API usage
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/website-emails-scraper').call({startUrls: [{ url: 'https://www.apify.com' }],maxPagesPerSite: 5,maxDepth: 1});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient('MY-APIFY-TOKEN')run = client.actor('automation-lab/website-emails-scraper').call(run_input={'startUrls': [{'url': 'https://www.apify.com'}],'maxPagesPerSite': 5,'maxDepth': 1,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~website-emails-scraper/runs?token=MY-APIFY-TOKEN' \-H 'Content-Type: application/json' \-d '{"startUrls":[{"url":"https://www.apify.com"}],"maxPagesPerSite":5,"maxDepth":1}'
MCP integration
Use this actor through Apify MCP when working in Claude Code or Claude Desktop.
MCP server URL:
https://mcp.apify.com/?tools=automation-lab/website-emails-scraper
Claude Code setup:
$claude mcp add apify-website-emails --transport http https://mcp.apify.com/?tools=automation-lab/website-emails-scraper
Claude Desktop JSON config:
{"mcpServers": {"apify-website-emails": {"url": "https://mcp.apify.com/?tools=automation-lab/website-emails-scraper"}}}
Example prompts:
- "Scan these 20 company websites and return emails and LinkedIn profiles."
- "Find contact pages for the domains in this list."
- "Enrich this supplier list with public website emails."
Scheduling
You can schedule recurring scans for changing website lists.
Common patterns:
- Weekly enrichment of new CRM domains
- Monthly supplier contact refresh
- Daily processing of new leads from a dataset
Data quality notes
The actor extracts contacts that are present in public HTML or visible text. Some websites protect emails behind forms, images, JavaScript widgets, or anti-spam obfuscation.
The actor normalizes common email obfuscations such as name [at] example [dot] com.
Always verify contacts before sending outreach.
Limitations
- It does not solve CAPTCHAs.
- It does not log in.
- It does not submit contact forms.
- It does not guarantee every website publishes an email.
- It may capture false-positive phone numbers on pages with many numeric values.
FAQ and troubleshooting
Why did a website return no emails?
The website may not publish email addresses in its HTML. Try scanning its contact page directly or increasing maxPagesPerSite.
Why is the status partial?
At least one page was crawled, but one or more pages returned an HTTP/network error. Check the errors field for details.
Why are there no phone numbers?
Many companies use forms or social links instead of public phone numbers. Phone extraction also filters short/date-like values to reduce noise.
Can this actor submit contact forms?
No. It extracts public details from website pages and does not submit forms, log in, or interact with private areas.
Legality and ethical use
This actor extracts data from public websites. Use it responsibly, respect website terms, and comply with applicable privacy, anti-spam, and data protection laws.
Do not use scraped contact details for unlawful spam or harassment.
Related scrapers
Explore other Automation Lab actors for lead generation and enrichment:
- https://apify.com/automation-lab/email-finder
- https://apify.com/automation-lab/email-enrichment
- https://apify.com/automation-lab/google-maps-lead-finder
- https://apify.com/automation-lab/linkedin-company-scraper
Changelog
0.1
Initial release: HTTP website crawler with email, phone, social link, contact page, snippet, and crawl status extraction.