Website Email & Contact Scraper · Emails, Phones & Socials
Pricing
$1.50 / 1,000 websites
Website Email & Contact Scraper · Emails, Phones & Socials
Extract emails ⚡ fast, 🎯 accurate and 🔍 complete from any website — phones, 17 social networks, company details and tech stack, every contact with its source page. Verify emails, find websites from company names. 💰 $1.50 per 1,000 websites, flat.
Pricing
$1.50 / 1,000 websites
Rating
5.0
(1)
Developer
Omkar Cloud
Maintained by CommunityActor stats
8
Bookmarked
537
Total users
11
Monthly active users
5 hours ago
Last modified
Categories
Share
Website Email & Contact Scraper — Emails, Phones & Social Links
Website Email & Contact Scraper by Omkar Cloud gets you contact data ⚡ fast, 🎯 accurate and 🔍 complete from any website — emails, phone numbers, 17 social networks, company details and tech stack, one clean row per website.
💰 $1.50 per 1,000 websites — one flat price, however many pages we read. No per-page billing, no surprise totals. Apify's free plan gives you $5 of credit every month, so your first 3,000 websites every month are free.
Every email, phone and social link comes with the pages it was found on and a flag for the website's official contact. No website, only a company name? Type the name and we find the website first.
This is an excellent Actor made by Omkar Cloud, which is Rated Excellent — 4.7 based on 37 reviews on Trustpilot.
👉 Try Website Email & Contact Scraper free — your first 3,000 websites are free.
What can I get
- 📧 Emails — every address on the site, the official one first, each with the pages it appears on
- 📞 Phone numbers — in international format, typed as landline, mobile or toll-free, with the country
- 🌐 17 social networks — LinkedIn, X, Facebook, Instagram, YouTube, TikTok, Pinterest, Threads, GitHub, Discord, Telegram, WhatsApp, Snapchat, Reddit, Bluesky, Medium, Calendly
- 🏢 Company details — company and legal name, full address, VAT ids, company register numbers, founding year, logo
- 🧰 Tech stack — the CMS, analytics, CDN and frameworks the site runs on
- ✅ Email verification (add-on) — deliverable, invalid, disposable, catch-all, role account, free provider
- 🎯 Best sales email (add-on) — AI picks the one address to pitch to, and tells you why
- 🔎 Website from a company name (add-on) — "Blue Bottle Coffee, Oakland" becomes bluebottlecoffee.com, checked online
- 👥 Social profile details (add-on) — followers, bio, verified badge and bio link for Instagram, TikTok, YouTube, X and Threads
Why Website Email & Contact Scraper
Most contact scrapers fail you in one of four ways:
- 💸 Per-page billing — "it says $2 per 1,000 and charged me $71": you pay for every page crawled, and you can't know how many that is
- 🧩 One row per page — you need a second tool to merge and deduplicate
- 🕳️ Failed sites vanish — you send 1,000 domains, get 700 rows, and no list of the 300 that failed
- 🤷 No proof — a list of emails with no idea where each came from, or which one is the company's own
Website Email & Contact Scraper charges per website, flat, gives you one merged row per site, lists every failed input with its reason for free, and shows the source pages of every contact.
| Website Email & Contact Scraper | Typical contact scraper | |
|---|---|---|
| Price | $1.50 per 1,000 websites, flat | $1–2 per 1,000 pages (a 20-page site costs 20×) |
| One row per website | ✅ | ⚠️ Often one per page |
| Source pages for every contact + official flag | ✅ | ❌ |
| Failed websites listed, free | ✅ | ❌ Silently skipped |
| Company details (legal name, address, VAT, register no.) | ✅ | ⚠️ Rare |
| Phone type (mobile / landline / toll-free) | ✅ | ⚠️ Rare |
| Tech stack | ✅ | ❌ |
| Website from a company name | ✅ | ❌ |
| AI-picked best sales email | ✅ | ❌ |
| Email verification | ✅ $2.50 / 1,000 | ⚠️ $2–4 / 1,000, $100 / 1,000 on some free plans |
| Social profile details | ✅ $3 / 1,000 | ⚠️ $8 / 1,000, $100 / 1,000 on some free plans |
Example: One Website
{"input": "manufactum.de","website": "https://www.manufactum.de","company_name": "Manufactum","company_legal_name": "Manufactum GmbH","company_address": "Hiberniastraße 5, Waltrop, 45731, DE","company_vat_ids": ["DE315189509"],"company_registration_numbers": ["HRB 7982"],"company_founded": "1987","primary_email": "info@manufactum.de","emails": ["info@manufactum.de", "behoerdenkontakt@manufactum.de", "produktsicherheit@manufactum.de"],"best_sales_email": "info@manufactum.de","best_sales_email_reason": "General info address is the most likely to reach a human who can route a B2B software pitch.","primary_phone": "+492309939050","primary_phone_type": "landline","phones": ["+492309939050", "+49230993900", "+492309939270"],"facebook": "https://www.facebook.com/manufactum","instagram": "https://www.instagram.com/manufactum","pinterest": "https://www.pinterest.com/manufactum","technologies": ["Caddy", "Go", "React"]}
Trimmed for readability. Every row has the same columns — one per social network, company field and contact list — so CSV and Excel exports need no clean-up.
Example: Where Each Contact Was Found
The Contacts with sources table has one row per email, phone and social link:
{"domain": "www.postman.com","type": "email","value": "info@postman.com","is_likely_official": true,"sources": ["https://www.postman.com/company/contact-us/", "https://www.postman.com/company/about-postman/"],"email_check": "catch_all"}
Get Started with 3,000 Free Websites
- Hit Try for Free — the input is pre-filled with vercel.com and stripe.com.
- Enjoy your data 😎.
What you can paste
| Input | Example | What happens |
|---|---|---|
| Websites | acme.com, https://www.acme.co.uk/contact | Each website is scraped |
| File or Google Sheet | A CSV or text file, or a Google Sheet link | Every website in it is scraped |
| Company names | Blue Bottle Coffee, Oakland | AI finds the website, checks it is online, then it is scraped |
| Another Apify run | The dataset ID of a Google Maps Scraper or G2 Scraper run | Every row's website is scraped |
The same website given twice — as a domain and a URL, or in two inputs — is scraped and billed once.
How much of each website we read
| Depth | Pages | Best for |
|---|---|---|
| Key pages (default) | Home page + contact, about, team, imprint and legal pages | Almost every lead list |
| Deep | Up to 20 pages | Large sites that spread contacts around |
| Homepage | The home page only | The fastest pass |
Same price at every depth. Sites that need a real browser (JavaScript-only pages, bot protection) are handled automatically — no "browser" surcharge.
Filters
| Filter | What it does |
|---|---|
| Only keep websites with an email | Websites without one go to the Failed websites table, not billed |
| Only emails on the website's own domain | Keeps sales@acme.com, drops partners' and agencies' addresses |
| Drop free-mail addresses | Drops Gmail, Yahoo, Outlook, iCloud and similar |
Add-ons
| Add-on | What you get | Billed |
|---|---|---|
| Verify emails | deliverable_emails plus a result per email: ok, invalid, disposable, catch-all or unknown, with role-account and free-provider flags | Only decisive results (ok, invalid, disposable) |
| Pick the best sales email | best_sales_email and best_sales_email_reason, chosen by AI from the site's emails for the product you describe | Only when an email is picked |
| Company names | The website of each name, checked online | Only when a working website is found |
| Enrich social profiles | One row per official profile: name, followers, following, posts, bio, verified badge, bio link | Per profile |
Recipes
Google Maps leads → emails. Run a Google Maps scraper for "dentists in Austin", then paste its dataset ID here:
{"fromDatasetId": "<YOUR_GOOGLE_MAPS_DATASET_ID>","onlyWithEmails": true,"siteDomainEmailsOnly": true}
Company names → verified emails → the one to pitch.
{"companyNames": ["Blue Bottle Coffee, Oakland", "Allbirds", "Warby Parker"],"verifyEmails": true,"findBestSalesEmail": true,"yourProductDescription": "Inventory forecasting software for consumer brands"}
Software vendors from a G2 category. Run G2 Scraper on a category with product details on, then:
{"fromDatasetId": "<YOUR_G2_DATASET_ID>","fromDatasetField": "likely_product_website","crawlDepth": "deep"}
Social reach of your prospects.
{"websites": ["allbirds.com", "warbyparker.com", "glossier.com"],"enrichSocialProfiles": ["instagram", "tiktok", "youtube"]}
Monthly CRM refresh. Save your account list as a Google Sheet, link it in Websites from a file or Google Sheet, save the input as a task and give it a monthly schedule.
Output
Open the Output tab and pick a table:
| Table | One row per | Billed |
|---|---|---|
| Websites | website | ✅ $1.50 / 1,000 |
| Contacts with sources | email, phone or social link | Free |
| Social profiles | enriched profile | Add-on |
| Failed websites | input that produced no website row, with the reason (unreachable, blocked, invalid, website not found, no emails) | Free |
Download any table as JSON, CSV, Excel, XML or HTML.
Pricing
High value, low price. No start fee.
| What | Price |
|---|---|
| Website (any depth) | $1.50 per 1,000 |
| Email verified (decisive results only) | $2.50 per 1,000 emails |
| Best sales email picked | $2 per 1,000 websites |
| Website found from a company name | $3 per 1,000 names found |
| Social profile enriched | $3 per 1,000 profiles |
| Failed websites, invalid inputs, duplicates | Free |
🎉 Launch offer: the add-ons are free until November 7, 2026. You pay only $1.50 per 1,000 websites.
Examples:
| Run | Cost |
|---|---|
| 1,000 websites | $1.50 |
| 1,000 websites, up to 2 emails verified each (≈1,500 decisive) | ≈ $5.25 |
| 500 company names, 400 websites found | $1.20 + $0.60 = $1.80 |
| 1,000 websites + Instagram and X profiles (≈1,200 found) | $1.50 + $3.60 = $5.10 |
💡 Apify's free plan includes $5 of credit every month — 3,000 free websites, every month. Set a Maximum cost per run in the run options and the Actor stops cleanly when it is reached.
👉 Scrape your first 3,000 websites free
FAQ
How fast is it? Ten websites at a time; most finish in a few seconds. 16 websites with verification, best-email and social profiles took about a minute in our test.
Why did a website end up in Failed websites? The table says why: unreachable (the domain does not resolve or answer), blocked, timeout, invalid (not a website), website_not_found (for a company name) or no_emails (with "only keep websites with an email" on). Nothing in that table is billed.
Can I get employees' personal emails? No. This Actor reads what each website publishes. Personal emails of staff come from licensed people databases, which we don't resell.
Is it legal? We read public web pages only, with no login. Emails and phones of named people are personal data under the GDPR and similar laws: make sure you have a legitimate reason to use them.
Why does a cached website come back so quickly? A website scraped in the last 90 days is served from our store; ask for a deeper crawl and it is read again.
Run It from Code
Grab your API token from Integrations Settings here and replace <YOUR_API_TOKEN> below.
Python (pip install apify-client)
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("omkar-cloud/website-email-contact-scraper").call(run_input={"websites": ["postman.com", "manufactum.de"],"verifyEmails": True,})for site in client.dataset(run["defaultDatasetId"]).iterate_items():print(site["website"], site["primary_email"], site["deliverable_emails"])
Node.js (npm install apify-client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('omkar-cloud/website-email-contact-scraper').call({companyNames: ['Blue Bottle Coffee, Oakland'],findBestSalesEmail: true,yourProductDescription: 'Inventory forecasting software for consumer brands',});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
AI agents (MCP) — let Claude, Cursor or VS Code run it through the Apify MCP server:
{"mcpServers": {"contacts": {"url": "https://mcp.apify.com?tools=omkar-cloud/website-email-contact-scraper","headers": { "Authorization": "Bearer <YOUR_API_TOKEN>" }}}}
Changelog
- 2026-10-24 — Rebuilt. New: flat rows, company details, phone types, file and Google Sheet input, company names, input from other Apify runs, crawl depth, email filters, email verification, AI best sales email, social profile details, a Contacts-with-sources table and a free Failed-websites table. New price: $1.50 per 1,000 websites.
💬 Have Questions? We Have Answers.
You're a business owner — we know how hard completing a project can be. So we offer full support: just message us and we'll reply ✅ with a solution within 1 working day.
You are important to us — just message us and we will solve your problem ✅ within 1 working day. 🩷 Pinky Promise 🤙!
Love It? Star It! ⭐
If this Actor saved you hours of copying emails off websites, please rate it on Apify. It takes one second and helps the next person decide.
Popular Actors by Omkar Cloud
- G2 Scraper — G2 reviews, products, pricing, categories and sellers
- Crunchbase Scraper — company profiles, funding and people
- Crunchbase Funding Rounds Scraper — who raised how much, from whom
- Moz DA Checker — Domain Authority for any list of domains
- Semrush Keyword Scraper — search volume, difficulty and CPC

