Website Email Finder: Company Emails, Phones and Socials avatar

Website Email Finder: Company Emails, Phones and Socials

Pricing

Pay per event

Go to Apify Store
Website Email Finder: Company Emails, Phones and Socials

Website Email Finder: Company Emails, Phones and Socials

Find business email addresses, phone numbers and social profiles from company websites. Junk filtered, role addresses labelled, MX checked. Pay only for domains where a contact was found.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Pohja Studio

Pohja Studio

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

12 days ago

Last modified

Share

Website Email Finder

Give it a list of company websites. Get back the email addresses, phone numbers and social profiles published on them — with the junk already removed.

You pay only for domains where a contact belonging to that company was found. Dead ends, unreachable sites and pages that only carry somebody else's address are returned as rows so you can join them back onto your list, and they cost nothing.

What it is for

Most lead lists arrive without email addresses. A Google Maps or directory scrape gives you a company name, a phone number and a website — and then stops. This Actor is the step after that one: it reads each website and pulls out the addresses that are actually on it.

Paste the dataset ID of your previous run into Or: dataset ID from a previous run, tell it which field holds the website, and it enriches the whole list without you exporting anything.

Input

FieldWhat it does
domainsWebsites to read. example.com, www.example.com and https://example.com/about all work.
sourceDatasetId + sourceDatasetFieldRead the websites out of another Actor's dataset instead of typing them.
maxPagesPerSiteHomepage first, then the contact / about / imprint pages it links to. Default 5.
excludeRoleAddressesKeep only named people, drop info@, sales@, support@.
excludeFreeProvidersDrop gmail.com, hotmail.com and similar.
requireMxDrop addresses whose domain cannot receive mail at all. On by default.
onlySiteDomainDrop addresses that belong to a different company.
maxEmailsPerSiteCap per site, best first.
includeSitesWithoutContactsKeep a free row for every dead end. On by default.

Output

One row per domain:

{
"domain": "kesko.fi",
"finalUrl": "https://www.kesko.fi/",
"pagesCrawled": 4,
"primaryEmail": "harri.utoslahti@kesko.fi",
"primaryEmailIsCompanyDomain": true,
"emails": ["harri.utoslahti@kesko.fi", "viestinta@kesko.fi", "ir@kesko.fi"],
"emailDetails": [
{ "email": "harri.utoslahti@kesko.fi", "type": "personal", "isSameDomain": true, "isFreeProvider": false, "mxFound": true }
],
"phones": ["+358105321000"],
"socials": { "linkedin": "https://www.linkedin.com/company/kesko", "facebook": "https://www.facebook.com/kesko" },
"emailCount": 3,
"companyEmailCount": 3,
"status": "contacts-found"
}

status is one of contacts-found, only-third-party-contacts, no-contacts, unreachable.

What makes the list usable

Anything can run a regular expression over a page. The work is in what you throw away, because every false positive costs you a bounce, and enough bounces cost you your sending domain.

Removed, with the reason recorded:

  • Image and asset filenames. logo@2x.png and hero@3x.jpg are the most common false positive in this category.
  • Ordinary words that look like obfuscation. www.wikidata.org is not www.wikid@a.org; static.hsappstatic.net is not static.hsappst@ic.net. Both came out of a real run before the patterns were tightened.
  • Form examples, including localised ones: matti@esimerkki.fi, max@beispiel.de, hello@example.com.
  • "Our addresses look like this" notices: etunimi.sukunimi@, firstname.lastname@.
  • Mailboxes nobody reads: noreply@, donotreply@, disposable domains.
  • CMS and tracking noise: Wix, Squarespace and Sentry boilerplate, build hashes.
  • Other companies' addresses. A privacy notice quotes the regulator; documentation uses a fictional customer. Those are ranked last and never billed — a real run had john.wick@thecontinental.com as the best email for apify.com.

Recovered rather than discarded:

  • Cloudflare-protected addresses (data-cfemail), HTML entities (@) and percent-encoding.
  • Written-out obfuscation: boris (at) example (dot) fi.
  • Addresses glued to a query string: 05%7c02%7charri.utoslahti@kesko.fi becomes harri.utoslahti@kesko.fi.

Kept but labelled, so you decide:

  • type: "role" vs "personal" — a desk or a named human.
  • isSameDomain — does this address belong to the company whose site it was on.
  • isFreeProvider — sole traders really do run on gmail.
  • mxFound — whether the domain accepts mail at all.

About verification

requireMx checks DNS: does this domain accept mail. That check never rejects a working mailbox, so it is safe to leave on.

Per-mailbox SMTP probing is deliberately not done. Gmail and Outlook stopped answering it truthfully, and a "verified" flag built on it is a guess dressed up as a fact. If you need mailbox-level verification, run a dedicated verifier over the output.

Expected results

Roughly 60–70% of ordinary company websites publish at least one usable address. Sites that publish none are usually large companies routing everything through a web form, or single-page sites with a contact form and no address. Those come back as no-contacts and cost nothing.

Notes

Only public pages are read, at a polite rate, with no login and no browser automation. Contact details of businesses are personal data in the EU: you are the controller of what you do with the output, and cold outreach still needs a lawful basis under GDPR and the ePrivacy rules of the country you are mailing into.