Website Contact Extractor: Emails, Phones & Socials
Pricing
$2.40 / 1,000 website with contacts
Website Contact Extractor: Emails, Phones & Socials
Extract emails, phone numbers and social profiles (LinkedIn, Facebook, Instagram, X, YouTube, TikTok) from any list of company websites. Crawls the homepage and contact/about pages, decodes protected emails, and returns one row per site. Sites without contacts are free.
Pricing
$2.40 / 1,000 website with contacts
Rating
0.0
(0)
Developer
Andres Garcia
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 days ago
Last modified
Categories
Share
Website Contact Extractor: Bulk Emails, Phone Numbers & Social Profiles
Paste a list of company websites and get back one clean row per website with every email address, phone number (validated, E.164) and social profile (LinkedIn, Facebook, Instagram, X/Twitter, YouTube, TikTok, Pinterest, GitHub, Yelp) found on the homepage and its contact, about and team pages. It decodes Cloudflare-protected emails and name [at] domain [dot] com obfuscation, and picks a primary email and phone for you.
You only pay for websites where contacts were found. Sites with nothing, or that fail to load, are free. No login, no API key, no browser.
Why this contact scraper?
- 🧾 One row per website, not per email. Ready for CRM import with
emails[],phones[]and one column per social network. - 🔎 Finds the right pages: homepage plus up to N same-site pages whose path looks like contact, about, team, staff, leadership, locations or support
- 🛡️ Protected emails decoded: Cloudflare
data-cfemail, HTML entities (@),[at]/(dot)obfuscation - ☎️ Real phone numbers only:
tel:links plus text numbers validated with Google's libphonenumber (no order IDs or dates), normalized to E.164 - 🚫 Junk filtered: image filenames (
logo@2x.png), placeholder addresses (you@example.com), tracking and Sentry addresses - ⭐ Primary contact picked: prefers an inbox on the site's own domain, then
info@,contact@,hello@,sales@… - 💸 No contacts, no charge, and duplicate domains are merged before crawling
- ⚡ Lightweight and memory-safe: streaming downloads capped per page, no headless browser, so it is cheap and fast
Use cases
- Lead enrichment: turn a list of company domains (from a CRM, a spreadsheet, Google Maps, a directory or a trade-show list) into emails and phones
- Local business outreach: contractors, agencies, clinics, restaurants, dealers
- Partner & supplier research: find the right contact channel for any website
- Data hygiene: pair with our validators to keep only deliverable emails and valid phones
Works great with
- Bulk Email Validator: pick this run's dataset as input, field
emails. It removes bad, disposable and role addresses. - US Phone Number Validator: dataset input, field
phones. Adds line type, state, time zone and calling hours. - Domain WHOIS Lookup and Website Tech Stack Detector: dataset input, field
domain. Adds domain age and the site's technologies.
How to use it
- Click Try for free. A few sample websites are prefilled, so the first run works in one click.
- Paste your websites or bare domains (one per line), or pick an Input dataset and set the Website field (e.g.
websitefrom a Google Maps scrape). - Click Start and export to CSV, Excel or JSON, or use the API, Zapier, Make or n8n.
Input example
{"websites": ["acmeplumbing.com", "https://www.sunrun.com", "www.servicemaster.com"],"maxPagesPerSite": 4,"defaultCountry": "US","includeSitesWithoutContacts": false,"maxItems": 1000}
| Field | Description |
|---|---|
websites | URLs or bare domains. One row per domain. |
inputDatasetId + websiteField | Read websites from another dataset (dot paths and arrays supported) |
maxPagesPerSite | Homepage + up to N−1 contact/about/team pages (default 4) |
defaultCountry | Country for validating phone numbers without a + prefix (default US) |
includeSitesWithoutContacts | Also output free rows for sites with nothing found or that failed |
maxItems | Maximum websites to process |
Output example
{"website": "sunrun.com","domain": "sunrun.com","finalUrl": "https://www.sunrun.com/","title": "Sunrun | America's #1 Home Storage & Solar Power Company","primaryEmail": "press@sunrun.com","emails": ["press@sunrun.com"],"primaryPhone": "+18333245886","phones": ["+18333245886", "+18333862912", "+18554786786"],"facebook": "https://www.facebook.com/sunrun","instagram": "https://www.instagram.com/sunrunsolar","linkedin": "https://www.linkedin.com/company/sunrun","twitter": "https://twitter.com/Sunrun","youtube": null,"contactPageUrl": "https://www.sunrun.com/contact-us","pagesCrawled": 3,"error": null}
The Contacts view shows domain, title, primary email, all emails, primary phone, all phones and the main social links.
Pricing
Pay-per-event: a fixed price per website where at least one contact was found, currently about $2.40 per 1,000 websites (see the Pricing tab). Websites with no contacts, unreachable sites and duplicates are free. There is no start fee and no compute charge on top.
FAQ
Why were no contacts found for some sites? Some websites hide contacts behind forms or JavaScript widgets, or block automated requests (large enterprise sites behind Cloudflare/Akamai). Those runs are free. Small and mid-size business sites, the usual lead-gen targets, work best.
Does it use a browser? No. It downloads HTML directly (streamed and capped), which makes it fast, cheap and light. Sites that render contacts only with JavaScript won't show them.
Are the emails verified? They are extracted exactly as published. Run them through our Bulk Email Validator to check domains, MX records, disposable and role addresses.
Is it legal? It only reads publicly available pages. You are responsible for using the contacts lawfully (GDPR, CAN-SPAM, TCPA).
Problems? Report them on the Issues tab. The actor is monitored daily.