Website Intelligence Extractor avatar

Website Intelligence Extractor

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Website Intelligence Extractor

Website Intelligence Extractor

Extract company information, emails, phone numbers, social profiles, addresses, logos, metadata, JSON-LD, and key pages from any website. Crawls multiple pages and merges everything into a single structured JSON output for lead generation and CRM enrichment.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Savaş Dersim Çelik

Savaş Dersim Çelik

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

What does Website Contact Extractor do?

Website Contact Extractor is an Apify Actor that automatically collects contact details, social media profiles, and company metadata from any website. Give it one or more start URLs and it will scan the homepage, discover Contact and About pages, and merge everything into a single structured JSON record per domain.

The Actor extracts emails, phone numbers, physical addresses, social links (Facebook, Instagram, LinkedIn, X, YouTube, TikTok, WhatsApp, Telegram, GitHub, and more), company name, logo, favicon, and Schema.org / JSON-LD structured data. It runs on the Apify platform with fast HTTP crawling (Crawlee + Cheerio), optional proxy rotation, API access, scheduling, and integrations with CRMs and spreadsheets.

Try it in Apify Console, call it via API, or run it locally with apify run.

Why use Website Contact Extractor?

  • Lead generation — Build prospect lists with verified contact channels from company websites.
  • CRM enrichment — Fill missing phone, email, and social fields in your existing records.
  • Sales intelligence — Research companies before outreach with structured, machine-readable data.
  • Marketing automation — Feed contact and social data into email tools, ad platforms, or enrichment pipelines.
  • Directory building — Aggregate business contact information at scale from multiple domains.
  • One record per domain — Multiple pages (homepage, Contact, About) are merged automatically so you get the fullest picture without duplicate rows.

How to use Website Contact Extractor

  1. Open the Actor in Apify Console or run it locally with apify run.
  2. Add one or more Start URLs (e.g. https://example.com).
  3. Set Max requests per crawl to at least 3 if you want Contact and About pages crawled (recommended: 5).
  4. Keep Follow Contact & About pages enabled for best results.
  5. Click Start and wait for the run to finish.
  6. Download results from the Output tab as JSON, CSV, Excel, or HTML.

Local development

npm install
apify run

Input

FieldTypeDefaultDescription
startUrlsarrayWebsites to scrape (required)
maxRequestsPerCrawlinteger10Max pages to crawl in total (max 5000)
followImportantPagesbooleantrueAuto-crawl Contact & About pages
maxConcurrencyinteger50Parallel page fetches (max 50)
proxyConfigurationobjectno proxyApify Proxy settings

Example input:

{
"startUrls": [{ "url": "https://apify.com" }],
"maxRequestsPerCrawl": 10,
"followImportantPages": true,
"maxConcurrency": 50,
"proxyConfiguration": { "useApifyProxy": false }
}

Output

Each dataset item represents one website (domain) with merged data from all scanned pages.

{
"url": "https://example.com",
"domain": "example.com",
"companyName": "Example Inc.",
"title": "Example Inc. — Home",
"description": "We build great products.",
"keywords": ["software", "saas"],
"language": "en",
"phones": ["+15551234567"],
"emails": ["hello@example.com"],
"facebook": "https://facebook.com/example",
"instagram": "https://instagram.com/example",
"linkedin": "https://linkedin.com/company/example",
"twitter": "https://x.com/example",
"youtube": "",
"tiktok": "",
"telegram": "",
"whatsapp": "https://wa.me/15551234567",
"github": "https://github.com/example",
"address": "123 Main Street, San Francisco, CA 94105, US",
"city": "San Francisco",
"country": "US",
"postalCode": "94105",
"logo": "https://example.com/logo.png",
"favicon": "https://example.com/favicon.ico",
"contactPage": "https://example.com/contact",
"aboutPage": "https://example.com/about",
"pagesScanned": 3,
"scannedPages": [
"https://example.com",
"https://example.com/contact",
"https://example.com/about"
],
"scrapedAt": "2026-07-03T12:00:00.000Z"
}

You can download the dataset in various formats such as JSON, CSV, Excel, or HTML.

Data table

FieldDescription
urlPrimary URL of the website
domainNormalized domain name
companyNameCompany name from JSON-LD or Open Graph
titlePage title
descriptionMeta description
phonesPhone numbers (validated, deduplicated)
emailsEmail addresses (validated, deduplicated)
facebookthreadsSocial profile URLs
address, city, country, …Location fields from JSON-LD, <address>, or page text
logo, faviconBranding assets
contactPage, aboutPageDiscovered important page URLs
pagesScannedNumber of pages crawled for this domain
scrapedAtISO timestamp of extraction

Pricing / Cost estimation

This Actor uses CheerioCrawler (HTTP-only, no browser), which keeps compute costs low. A typical run with 5 pages per website uses a fraction of a compute unit.

Rough estimate: scraping 100 websites with 3 pages each on Apify's free tier is usually feasible for development and small batches. For large-scale production runs, monitor compute units in the Apify Console and adjust maxRequestsPerCrawl and maxConcurrency accordingly.

Tips and advanced options

  • Set maxRequestsPerCrawl ≥ 3 — Homepage alone often misses contact details; Contact and About pages carry the richest data.
  • Multiple start URLs — Add many domains in one run; each produces a separate output row.
  • Disable followImportantPages — Use when you only need data from the exact URLs you provide.
  • Use Apify Proxy — Enable proxy for geo-restricted or rate-limited sites.
  • Phone filtering — Tracking IDs (Meta Pixel, analytics) are filtered out to reduce false positives.
  • Email filtering — Placeholder and system addresses (noreply@, example.com) are excluded.
  • JavaScript-heavy sites — Sites that render content entirely in the browser may need a Playwright-based Actor instead.

FAQ, disclaimers, and support

Is web scraping legal? Scraping publicly available contact information is common for B2B lead generation, but you are responsible for complying with applicable laws, website Terms of Service, and privacy regulations (GDPR, CAN-SPAM, etc.) in your jurisdiction.

Known limitations

  • Static HTML only — JavaScript-rendered contact widgets may not be captured.
  • Address detection works best with JSON-LD, <address> tags, or Turkish/English address patterns.
  • Social share links (/sharer, /intent/tweet) are ignored in favor of profile URLs.

Support — Report bugs or request features via the Issues tab in Apify Console. Custom integrations and enterprise deployments are available on request.

License

MIT