Website Contact & Lead Enricher - owner email, phones, tech avatar

Website Contact & Lead Enricher - owner email, phones, tech

Pricing

Pay per event

Go to Apify Store
Website Contact & Lead Enricher - owner email, phones, tech

Website Contact & Lead Enricher - owner email, phones, tech

Give it company domains, get one lead row each: the published email most likely to reach the owner (not just info@), every email, phone and social link on the site, its CMS and tech stack, and its email provider, SPF and DMARC. Dead mail domains are dropped. No login, no key.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stephen Psaradellis

Stephen Psaradellis

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Share

Website Contact & Lead Enricher

Paste a list of company domains. Get back one lead row per company:

  • the email most likely to reach the owner, not whichever address the page listed first
  • every email, phone number and social profile the site publishes, with the page each was found on
  • what the site is built with: CMS, ecommerce platform, analytics and ad pixels, chat widget, payments, hosting and CDN
  • who runs the domain's email (Google Workspace, Microsoft 365, ...), which services send as it, and its SPF and DMARC setup

Why the "best email" is better than a list

Most contact scrapers hand you every address on the page. On a small-business site that list is full of addresses that will never reach a decision maker: the web designer's address in the footer, careers@, a ticket desk, a template placeholder like contact@mysite.com, a font author's credit hidden in a stylesheet, or a mailbox on a domain that no longer receives mail.

This Actor's ranking rules come from sending real outreach to small businesses and fixing every case where an email went to the wrong inbox or bounced. In order, it prefers:

  1. a named person on the company's own domain (melissa@company.com)
  2. a Gmail address the owner published (these bounce least)
  3. a general box on the company's domain (info@, hello@, office@)
  4. sales and other boxes
  5. support, events, jobs and similar desks
  6. old ISP addresses (AOL, Yahoo, Comcast), which are the most often abandoned

It never picks an address on a third party's domain (your web agency, a franchisor, a booking platform's relay), and it drops any address whose domain has no working mail server - checked live in DNS, so you do not pay to bounce. Every address is still in emails, labelled, if you want them all.

What you get

fieldmeaning
domainthe domain, www. removed
best_emailthe address most likely to reach the owner (or null)
best_email_typeperson, general, freemail, sales, other or support
owner_emailsevery address that reaches the business, best first
emailsevery address found: page, type, reaches_business, domain_takes_mail
phonesphone numbers from tel: links and page text, with the page
socialsFacebook, Instagram, LinkedIn, X, YouTube, TikTok, Pinterest, Yelp
contact_pagethe contact page it found
tech_names, technologies~140 technologies, each with the evidence it was detected from
cms, ecommerce, analyticsthe same, grouped
email_providerGoogle Workspace, Microsoft 365, Zoho, ... from MX (or SPF behind a gateway)
email_gatewayMimecast, Proofpoint, Barracuda, ... when one sits in front
email_sendersservices the SPF record authorises: SendGrid, Mailchimp, HubSpot, Klaviyo, ...
spf, dmarc, dmarc_policy, email_issuesthe records, and plain-English problems with them
dns_hostCloudflare, Route 53, GoDaddy, ... from the nameservers
title, final_url, http_status, https, ssl_errorthe site itself
website_errorwhy the site could not be read, if it could not

The key-value store also gets a RUN_SUMMARY with counts for the run.

Sample row (illustrative)

{
"domain": "acmebakery.com",
"best_email": "maria@acmebakery.com",
"best_email_type": "person",
"owner_emails": ["maria@acmebakery.com", "info@acmebakery.com"],
"phones": [{ "phone": "(555) 201-3344", "source": "tel-link", "page": "https://acmebakery.com/contact" }],
"socials": { "facebook": "https://www.facebook.com/acmebakery", "instagram": "https://www.instagram.com/acmebakery" },
"cms": ["WordPress"],
"ecommerce": ["WooCommerce"],
"analytics": ["Google Analytics", "Meta Pixel"],
"email_provider": "Google Workspace",
"email_senders": ["Google Workspace", "Mailchimp / Mandrill"],
"dmarc_policy": "none",
"email_issues": ["DMARC policy is p=none (monitoring only)"]
}

Use cases

  • Cold outreach lists: turn a list of company websites (from Google Maps exports, directories, your CRM) into an owner email per company.
  • Lead qualification: find every Shopify store, every WordPress site without analytics, every company still on GoDaddy email.
  • Agency prospecting: sites with no DMARC, an expired certificate or an old CMS are sites that need you.
  • CRM enrichment: add tech stack, email provider and socials to accounts you already have.

Pricing

Pay per event. No charge to start, no platform usage charge:

eventpricewhen
domain-analysed$0.004every domain: homepage + contact pages + tech stack + DNS
lead-with-email$0.006only when the row has a best_email

So $0.01 per lead with an owner email, and $0.004 for a domain without one. 1,000 domains where 450 have an owner email cost about $6.70. Set Max domains to cap a run.

Input

  • domains - domains or URLs, one per line.
  • maxContactPages - contact/about pages to read besides the homepage (default 2, included in the price).
  • checkWebsite / checkEmail - turn either half off; DNS only is fast.
  • includeEvidence - keep the "detected from" evidence per technology.
  • maxDomains, concurrency, timeoutSecs.

How it reads sites

It identifies itself honestly (LeadEnricherBot), reads robots.txt first and skips any page it disallows, reads only the homepage and contact/about pages the site links to, and never submits a form or signs in. A site that blocks bots or disallows crawling comes back with the reason in website_error and the DNS half still filled in. It does not query WHOIS.

Use it from code, Claude or ChatGPT

The API tab has snippets for Node.js, Python and curl, including run-sync-get-dataset-items. As an MCP tool:

https://mcp.apify.com?tools=vital_tuxedo/website-contact-lead-enricher

FAQ

Does it verify mailboxes over SMTP? No. It checks that the address's domain has a working mail server, which removes dead domains, the most common bounce on small-business lists. A deleted mailbox on a live domain cannot be seen from DNS.

Where do the emails come from? Only from pages the company itself publishes. Nothing is bought, guessed or pulled from a third-party database.

Your responsibility. Contact details on a business website are published to be used, but laws on emailing them differ (CAN-SPAM, GDPR, CASL). Use the data lawfully, identify yourself and honour opt-outs.

What does "Own mail server (often the web host)" mean? The MX points at the domain itself (for example mail.company.com), which usually means the web hosting company's bundled email.

More from this developer

  • Google Ads Transparency Scraper - every ad a competitor runs on Google (text, image and YouTube), with ad copy, landing URLs, dates and countries. No login.