Website Contact Finder — Emails, Phones & Socials avatar

Website Contact Finder — Emails, Phones & Socials

Pricing

Pay per usage

Go to Apify Store
Website Contact Finder — Emails, Phones & Socials

Website Contact Finder — Emails, Phones & Socials

Turn a list of company websites into contact records: emails, phone numbers and social profiles, with each address labelled by how it was found.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Trần Chính

Trần Chính

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Give it a list of company websites; get back a contact record for each one: emails, phone numbers, social profiles, company name and description.

Every address is labelled by how it was found. An address taken from a mailto: link is the company telling you where to write. An address scraped out of page text is a guess. Most contact scrapers hand you one undifferentiated column; this one tells you which is which, so your outreach list can be filtered by confidence instead of hope.

Why the output is clean

The naive way to build this is an email regex and a phone regex over the HTML. On real sites that returns image filenames as emails and order IDs as phone numbers — measured on five well-known sites, the naive approach produced 78 to 202 phone numbers per site, none of them real.

This Actor takes phone numbers only from tel: links, drops hashes, tracking addresses, noreply@, example.com and image filenames, and repairs the escape debris (u003esupport@…) that leaks out of inline scripts. Same five sites: zero false phone numbers.

Output

{
"domain": "ahrefs.com",
"website": "https://ahrefs.com",
"company_name": "Ahrefs",
"description": "Ahrefs is an all-in-one SEO toolset.",
"primary_email": "pr@ahrefs.com",
"emails": [
{"email": "pr@ahrefs.com", "source": "mailto", "is_role_address": true,
"on_company_domain": true, "found_on": "https://ahrefs.com/contact"},
{"email": "support@ahrefs.com", "source": "page_text", "is_role_address": true,
"on_company_domain": true, "found_on": "https://ahrefs.com"}
],
"emails_count": 2,
"phones": [{"phone": "+15125550123", "source": "tel", "found_on": "https://ahrefs.com/contact"}],
"phones_count": 1,
"social_profiles": {
"linkedin": "https://linkedin.com/company/ahrefs",
"x": "https://x.com/ahrefs",
"facebook": "https://facebook.com/ahrefs"
},
"pages_checked": 4,
"has_contact": true
}

Emails are ranked: declared (mailto) before guessed, company domain before free mail, role addresses (info@, sales@) before personal ones.

Use it for

  • Lead generation — turn a list of companies into an outreach list
  • CRM enrichment — fill in missing contact fields on accounts you already have
  • Partner and supplier research — find who to contact at a list of vendors
  • Data cleaning — check which domains in an old list are still alive

Input

{
"domains": ["stripe.com", "https://www.basecamp.com", "ahrefs.com"],
"extraPages": 4,
"onlyCompanyDomain": true,
"skipWithoutContact": true
}
FieldWhat it does
Company websitesAny format — bare domain, full URL, with or without www
Extra pages to checkTries /contact, /about, /impressum and similar
Only company-domain emailsDrops gmail and agency addresses
Skip sites with no contactKeeps dead ends out of your dataset, so you don't pay for them

Speed

Dead domains are the tax on every lead list. This Actor treats a DNS failure or a timeout as final rather than retrying it four times — which took one test run from 407 seconds down to 30.

Reliability

  • Retries genuine network errors with exponential backoff; does not retry failures that cannot heal
  • Unreachable sites are reported and never charged
  • If every site fails, the run fails loudly instead of returning an empty dataset

Pricing

Pay per domain returned. No subscription.

FAQ

Why do some big companies return no email? Many large firms deliberately publish only a contact form. The Actor reports that honestly rather than inventing an address.

Can it find a specific person's email? No. It returns what the website publishes — usually role addresses. It does not guess patterns like firstname.lastname@, which is how most lists end up full of bounces.

Is this legal? It reads publicly published contact details. Business contact data is still personal data under GDPR, so if you email EU recipients you need your own lawful basis. You are the controller; check your local rules before sending.