Website Contact Finder — Emails, Phones & Socials avatar

Website Contact Finder — Emails, Phones & Socials

Pricing

from $8.00 / 1,000 contact founds

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

Website Contact Finder — Emails, Phones & Socials

Find public emails, phone numbers, and social profiles from any list of websites. One clean row per domain. Pay only for contacts found.

Pricing

from $8.00 / 1,000 contact founds

Rating

0.0

(0)

Developer

Magnesia LLC

Magnesia LLC

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Magnesia LLC · Apify Store Actor

Find public contact emails, phone numbers, and social profiles from any list of websites. One clean row per domain. Built for B2B lead gen, CRM enrichment, and outreach lists.

What you get

FieldDescription
domainNormalized hostname
primaryEmailFirst accepted email
emails[]Unique emails + inferred role (sales, info, support, …) + source page
phones[]Normalized phone numbers
socials[]LinkedIn, X/Twitter, Facebook, Instagram, YouTube, TikTok, GitHub
hasContacttrue if any email/phone/social found
pagesCrawledPages visited for that domain

How it works

  1. Opens each seed URL (homepage).
  2. Shallow-crawls same-domain pages, prioritizing /contact, /about, /team, etc.
  3. Extracts emails (mailto + page text), phones (tel: + text), and social links.
  4. Deduplicates and normalizes; junk/example addresses filtered.
  5. Writes one dataset row per domain.

Uses Cheerio (HTTP + HTML) — fast and Free-plan friendly. Optional Apify Proxy for tough sites.

Input

{
"startUrls": ["https://example.com", "acme.io"],
"maxPagesPerSite": 8,
"maxEmailsPerSite": 20,
"includePhones": true,
"includeSocials": true,
"sameDomainOnly": true
}

Pricing (planned PPE)

EventWhat it billsSuggested Free-tier price
apify-actor-startRun start (synthetic)$0.00005
contact-foundDomain with ≥1 email/phone/social$0.008
(optional later) email-verifiedMX/role-checked email$0.002

Empty domains are still returned for transparency but should not be billed once monetization is live (bill via contact-found only; disable or zero apify-default-dataset-item if it would double-charge).

Why this Actor

  • Pay for value — contacts found, not empty scrapes.
  • One row per domain — CRM/sequencer ready.
  • Role tags on emails (sales@, info@, …).
  • No login / no cookies — public website pages only.
  • Clear README and schemas (many Store contact scrapers are thin).

Only extracts information publicly published on websites. Do not use for spam or unlawful outreach. Respect robots.txt and applicable laws (CAN-SPAM, GDPR, etc.). Not for bypassing login walls on LinkedIn or similar.

Example output

{
"domain": "example.com",
"seedUrl": "https://example.com",
"primaryEmail": "hello@example.com",
"emails": [{ "email": "hello@example.com", "role": "sales", "sourceUrl": "https://example.com/contact" }],
"phones": ["+1 555 0100"],
"socials": [{ "network": "linkedin", "url": "https://www.linkedin.com/company/example" }],
"emailCount": 1,
"phoneCount": 1,
"socialCount": 1,
"hasContact": true,
"pagesCrawled": 3,
"errors": [],
"scrapedAt": "2026-10-01T12:00:00.000Z"
}

Support

Built by Magnesia LLC (Wyoming, US). Issues and feature requests welcome on the Actor page.