Domain Contact Scraper – Intelligent Email & Phone Extractor
Pricing
from $2.00 / 1,000 domains
Domain Contact Scraper – Intelligent Email & Phone Extractor
Intelligent website contact scraper that extracts emails, phone numbers, WhatsApp links, and social profiles from any domain. Uses priority-first crawling and returns one structured, consolidated result per start URL with transparent crawl metadata.
Pricing
from $2.00 / 1,000 domains
Rating
0.0
(0)
Developer

Emiliano Mastragostino
Actor stats
0
Bookmarked
39
Total users
26
Monthly active users
23 days ago
Last modified
Categories
Share
Domain Contact Scraper
Extract emails, phone numbers, WhatsApp links, and social media profiles from any website — with structured, domain-level output.
Looking for a reliable website contact details scraper?
This Apify Actor intelligently crawls websites to extract:
- 📧 Email addresses
- 📞 Phone numbers
- 💬 WhatsApp links
- 🔗 Social media profiles (LinkedIn, Facebook, Instagram, Twitter/X, and more)
Unlike generic email extractors that dump raw page data, this Actor performs priority-first crawling and returns one clean, consolidated result per domain, including crawl metadata for full transparency.
Built for developers, agencies, and automation pipelines that need predictable and structured contact discovery.
🚀 Why Try This Actor?
✔ Intelligent, signal-driven crawl strategy ✔ Multilingual contact-page detection (contact, kontakt, contacto, contato, impressum, about, legal, etc.) ✔ One structured result per start URL ✔ Transparent crawl metadata (pages visited, stop reason, timestamp) ✔ Configurable crawl depth and scope ✔ Optional early-stop modes for adaptive crawling
Whether you're building a lead generation workflow, enriching business directories, or automating contact discovery, this Actor provides structured, reliable output ready for integration.
🔍 What This Contact Scraper Does
For each start URL:
- Prioritizes high-value pages (contact, about, legal, multilingual equivalents)
- Crawls within a controlled scope (hostname, domain, origin, or all links)
- Extracts contact details
- Aggregates all results in memory
- Outputs exactly one structured result per domain
No fragmented per-page records. No messy datasets.
📦 Output Structure
Each start URL produces one result:
{"schemaVersion": 1,"startUrl": "https://example.com","finalUrl": "https://www.example.com","contacts": {"emails": ["info@example.com"],"phones": ["+1 555 123 4567"],"socials": [{"type": "linkedin","url": "https://linkedin.com/company/example"}],"whatsapps": ["+15551234567"]},"crawl": {"pagesVisited": 4,"visitedSample": ["https://example.com", "https://example.com/contact"],"stoppedReason": "early-stop","updatedAt": "2026-01-01T12:00:00.000Z"}}
Key Benefits of This Structure
- One consolidated result per domain
- Crawl transparency via
pagesVisitedandstoppedReason - Structured contacts object for easy automation
- Versioned schema (
schemaVersion: 1) for stability
🧩 Input Examples
Basic Usage (Quick Start)
{"startUrls": [{ "url": "https://apify.com" }]}
That’s it. The Actor will:
- Crawl the site
- Prioritize contact-related pages
- Return structured contact data
Advanced Configuration
{"maxPagesPerStartUrl": 8,"maxDepth": 1,"enqueueStrategy": "same-hostname","earlyStopMode": "balanced","proxyConfigurationOptions": {"useApifyProxy": true},"startUrls": [{ "url": "https://apify.com" }]}
Key Options Explained
-
maxPagesPerStartUrl Limits pages visited per domain.
-
maxDepth Controls how deep links are followed.
-
enqueueStrategy Defines crawl scope:
- same-hostname (default)
- same-domain (includes subdomains)
- same-origin
- all
-
earlyStopMode (optional)
- off (default)
- balanced
- aggressive
Balanced and aggressive modes allow the crawl to stop once sufficient direct contact signals are discovered or when exploration becomes stale.
- proxyConfigurationOptions Optional proxy settings for improved reach.
🧠 Intelligent Priority-First Crawling
This is not a simple depth-first or breadth-first scraper.
The Actor:
- Scores links before enqueuing
- Prioritizes high-value contact pages
- Supports multilingual detection (contact, kontakt, contacto, contato, impressum, about, etc.)
- Uses adaptive early-stop logic (optional)
This results in faster, more disciplined contact discovery.
🌍 SEO & Lead Generation Use Cases
This website contact scraper is ideal for:
- Lead generation workflows
- Business directory building
- Sales prospecting automation
- Agency outreach campaigns
- CRM enrichment
- Data collection pipelines
- Email extraction from company websites
⚙️ Designed for Developers & Automation
- Clean JSON output with multi-format export (CSV, Excel, XML, HTML)
- Domain-level aggregation
- Deterministic crawl behavior
- No per-page dataset fragmentation
- Works seamlessly with Apify API, webhooks, and SDKs
⚠️ Limitations
- Uses HTML parsing (Cheerio-based). Heavy client-side-rendered sites may require a browser-based crawler.
- Does not perform email verification (while it does perform basic email and phone validation)
- Does not identify specific individuals or job titles.
🚧 Roadmap & Upcoming Improvements
This Actor is continuously evolving. Key upcoming features include:
-
Browser-Based Crawling: Introducing Playwright Crawler to handle dynamic SPAs (React, Vue, Angular) while retaining lightweight HTML crawling as the high-speed default.
-
Email Verification: Optional features for MX record validation, SMTP checks, and deliverability indicators to enhance lead quality.
🏁 Summary
If you're looking for a reliable email extractor, phone number scraper, or website contact details scraper, this Actor provides:
- Structured, domain-level output
- Intelligent crawl prioritization
- Transparent crawl metadata
- Configurable exploration control
Built for predictable, disciplined website contact discovery — not blind scraping.
Support
This Actor is actively maintained. Need help or want to customize it?