Website Lead Intelligence — Find the Right Person, Verified avatar

Website Lead Intelligence — Find the Right Person, Verified

Pricing

from $35.00 / 1,000 results

Go to Apify Store
Website Lead Intelligence — Find the Right Person, Verified

Website Lead Intelligence — Find the Right Person, Verified

Website Lead Intelligence turns company websites into send-ready B2B leads — find the right person, verified emails, decision-makers, buying committee, lead scoring and a clear next action for cold email outreach, CRM enrichment and sales prospecting.

Pricing

from $35.00 / 1,000 results

Rating

0.0

(0)

Developer

Data Minds

Data Minds

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Categories

Security

Limited permissions

Share

What is Website Lead Intelligence?

Website Lead Intelligence turns a list of company websites into a scored, send-ready outreach list. Paste your website URLs and, for every company, you get verified emails, named decision makers ranked by seniority, a buying committee, an A/B/C decision tier and a plain-English next action. It suits B2B lead generation and sales prospecting, and costs from $0.035 per website on the Gold plan.

Just enter your website URLs and click Start. No coding needed. The Apify Free plan's $5 monthly credit covers about 100 websites before platform usage.

  • B2B lead generation: turn a bulk list of company domains into a prioritised prospect list with a decision tier per company.
  • Find decision makers: get named founders, executives and managers with job titles, ranked by seniority.
  • Build a cold outreach list: keep only send-ready leads, and verify emails before sending to protect your sender reputation.
  • Account research before sales calls: read the buying committee, department coverage, pain signals and a "why now" note for each account.
  • Export leads to your CRM: download ready-to-import files for HubSpot, Salesforce, Instantly and other outreach tools.
  • Monitor target accounts: re-run the same watchlist on a schedule and see new hires or new emails since the last run.

The Apify platform adds an API, scheduling, run monitoring, webhooks, integrations and exports to JSON, CSV, Excel, XML and HTML.

What can Website Lead Intelligence do?

  • 🔍 Find the right person: extract named contacts with job titles from company websites and rank them by seniority.
  • ✅ Verify emails: check deliverability, flag catch-all domains and separate personal from generic inboxes.
  • 🧩 Fill in missing emails: optionally generate a likely address for a named person and verify it.
  • 🎯 Score and decide: every website gets a lead score from 0 to 100, an A/B/C tier and a send decision (SEND_NOW, VERIFY_FIRST, ENRICH_MORE or SKIP).
  • 🏢 Find websites from names or phrases: start from business names or a footer phrase instead of URLs.
  • 📤 Deliver results: ten CSV export formats for outreach tools and CRMs, a CRM webhook and Notion digests.
  • 📈 Track changes: compare each run with the previous one on the same watchlist.

Which lead research tasks does it cover?

  • 📇 Website contact scraper: collect emails, phones and social links from each company's public pages in one pass. It also works as an email extractor from website lists.
  • 👔 Decision maker email finder: read team and about pages to find decision makers with titles. It also helps you find founder name from website pages without opening each site.
  • 📊 Lead enrichment: add company type, maturity and trust signals to a bare list of domains. This is B2B lead enrichment without a manual research step.
  • ✅ Email verifier: check if an email address is valid before you send. Email validation includes catch-all domain detection.
  • 🗂 Lead list builder: build a B2B prospect list from website URLs. You can also find companies by footer phrase or find company website from business name.
  • 🔎 Company contact finder: get emails from a list of domains in a single run. It works as a domain email finder and company email finder for sales teams.
  • 🎯 Lead scoring for outreach: every website gets a score, a tier and a next action. That makes it a practical prospecting tool for agencies and sales teams.
  • 📤 Export leads to HubSpot CSV, Salesforce CSV or Instantly CSV files. Each file is ready to import.
  • 📈 Monitor companies for changes and schedule lead research runs. Send a CRM webhook lead delivery when runs finish.
  • 🧭 Business contact scraper: use it for contact info scraper tasks, such as phones, addresses and opening hours. It also acts as a website lead finder.
  • 🧹 Clean cold email list: drop generic inboxes with requirePersonalEmail. Find email addresses for named contacts with the email finder option, and read team page names and titles in contacts.
  • 📞 Find phone numbers from a company website and extract social links from websites. This works like an email and phone extractor with extra intelligence.

What data can Website Lead Intelligence extract?

Every website produces one record. The fields below are the real dataset field names.

GroupFieldsWhat you get
🆔 RecordrecordType, url, domain, schemaVersion, scrapedAt, pagesScraped, summary, methodologyWebsite, domain, how many pages were read, a short summary block and a note on how scores are derived
📧 Emailsemails, personalEmails, genericEmails, verifiedEmails, generatedEmails, emailSources, domainPurity, catchAllDetected, catchAllImplicationAll emails found, personal versus generic, deliverability results, generated addresses, where each email was found
👤 Peoplecontacts, bestContact, topContacts, buyingCommittee, departmentCoverageNamed contacts with titles and the best person to contact, plus decision makers, influencers, champions and blockers
📞 Reachphones, socialLinks, addresses, businessHours, contactFormDetectedPhone numbers, social profile links, addresses, opening hours and contact form flag
🏢 CompanycompanyMeta, companyType, companyIntelligenceName, description, logo, language, industry, founding date, employee count, company type, maturity and trust signals
📊 ScoringleadScore, dataQuality, confidence, coverage, decision, confidenceConflict, contactDifficultyLead score, data quality, confidence breakdown, coverage per data type and the A/B/C tier
🚦 Send decisionsendDecision, sendPlan, isContactable, isSendable, bounceRiskBucket, decisionSignals, negativeSignals, plainEnglishSummary, recommendation, firstTouch, recoveryPlanThe next action, channel, follow-up strategy, bounce risk and a first-touch opening line
🧠 Account intelligenceaccountReadiness, painSignals, opportunityTriggers, whyNow, whyThisLead, pipelineValue, pipelineStateReadiness, pain points, timing notes and priority rank within the batch
📈 MonitoringfirstSeenAt, lastSeenAt, changeFlags, changeSinceLastRun, accountMomentum, accountTimeline, momentumTrend, crmPushResultWhat changed since the previous run and the CRM delivery result
🚧 ProblemsfailureType, scrapeError, failureContext, botProtection, jsWarningWhy a website could not be fully read and what to try next

Note: Fields describe only what a website publishes. A field is null or empty when nothing was found. The monitoring fields are filled only when Monitor for changes is on. The Standard and Minimal output detail levels drop some fields.

What data can't Website Lead Intelligence extract?

  • Private data behind logins, or pages that a website's robots.txt disallows (when Respect robots.txt is on).
  • Personal emails that a website does not publish. These can only be generated as likely addresses and verified, and they are marked as generated.
  • Contacts from LinkedIn profiles or other sites. The Actor reads the websites you provide.

For company listings with phone numbers and websites, try Google Maps Leads Scraper first and feed the websites into this Actor.


How to find decision makers with Website Lead Intelligence

Website Lead Intelligence is designed for an easy start, even if you have never built a lead list before.

  1. Create a free Apify account with your email.
  2. Open Website Lead Intelligence in Apify Console.
  3. Paste company websites into Website URLs (urls), one per line, or use Business names (knownNames) or Footer / marketing phrases (footerPhrases).
  4. Pick a Goal (goal): quick outreach, high deliverability or max coverage.
  5. Click Start and wait for the run to finish. Leads appear in the Output tab while the run is still going.
  6. Download your leads in JSON, CSV, Excel, XML or HTML, or add exportFormats for a CSV that is ready to import into your outreach tool.

How much does Website Lead Intelligence cost?

Website Lead Intelligence uses a pay-per-event pricing model: you pay for each website record saved to your dataset. Platform usage is billed in addition. Unreadable websites also produce a saved record, so they are billed like any other. Websites removed by your filters (for example Minimum lead score) are not saved and not billed.

PlanPrice per websitePrice per 1,000 websites
Free$0.05$50
Bronze$0.045$45
Silver$0.04$40
Gold$0.035$35

Each run also has an Actor start event of $0.00005 per GB of memory, with a minimum of one. This Actor's default memory is 1024 MB (1 GB), so a start costs 1 event, which is $0.00005.

Example: scanning 500 websites on the Gold plan costs 500 x $0.035 = $17.50, plus the start event and platform usage.

See the pricing tab for all events.

Is scraping company websites free?

Yes, you can try it for free. The Apify Free plan gives you $5 in monthly credit. At the Free price of $0.05 per website, that covers about 100 websites ($5 / $0.05), before platform usage.


Input

The only required input is at least one of Website URLs, Business names or Footer / marketing phrases. Everything else has a default. Set the input in the Actor interface or send it as JSON through the API.

Here is the default example. It reads three company websites with the balanced setup:

{
"urls": [
"https://apify.com",
"https://stripe.com",
"https://notion.so"
],
"proxyConfiguration": {
"useApifyProxy": false
}
}

See the input tab for the full form.

FieldTypeRequiredDefaultDescription
goalstringNononequick-outreach, high-deliverability or max-coverage. Sets the preset and confidence mode for you.
presetstringNoautoauto, fast, balanced or maximum. Controls scan depth, verification, email fill-in and page rendering for JavaScript-heavy sites.
confidenceModestringNogoal-based, else balancedsafe, balanced or aggressive. Safe keeps only verified personal emails.
urlsarrayOne of threenoneCompany websites, up to 500. Each domain is deduplicated and gives one record.
knownNamesarrayOne of threenoneBusiness names, resolved to a website before scanning.
footerPhrasesarrayOne of threenoneDistinctive phrases that identify a niche. Matching websites become candidates.
nameSuffixstringNoemptyAdded to every business-name search, for example law firm.
discoveryCountrystringNoUSUS, UK, CA, AU or EU. Used for names and phrases only.
maxResultsPerQueryintegerNo50Search results collected per footer phrase (10 to 100).
maxDiscoveredDomainsintegerNo1000Cap on websites found from names and phrases (10 to 5000). Pasted URLs are not capped by it.
excludeDomainsarrayNononeDomains to always skip.
maxPagesPerDomainintegerNopreset valuePages read per website (1 to 20).
deepScanbooleanNopreset valueAlso checks legal, imprint and support pages.
includeNamesbooleanNotrueExtract named contacts with job titles.
includeSocialsbooleanNotrueCollect social profile links.
sitemapDiscoverybooleanNotrueUse the website's sitemap to find team, about and contact pages.
customProbePathsarrayNononeExtra page paths such as /meet-the-team.
respectRobotsTxtbooleanNotrueHonor each site's robots.txt rules.
crawlDelayMsintegerNo0Minimum wait in milliseconds between two requests to the same domain (0 to 10000).
verifyEmailsbooleanNopreset valueCheck deliverability and flag catch-all domains.
emailVerificationProviderstringNobuilt-in checkBuilt-in check, an optional paid provider with your own API key, or none to skip verification.
fillMissingEmailsbooleanNopreset valueGenerate and verify a likely email for named people without one.
maxEmailPatternsToVerifyintegerNo3Cap on generated addresses checked per website (0 to 20).
enableProFallbackbooleanNopreset valueRender JavaScript-heavy pages when no contact details show.
compareToPrevRunbooleanNofalseCompare with the previous run on the same watchlist.
monitorStateKeystringNoderived from the domainsName of the watchlist for scheduled re-runs.
autoFilterstringNononenone, send-now-only, safe-only or max-leads.
outputProfilestringNofullfull, standard or minimal.
minLeadScoreintegerNononeDrop websites scoring below this value (0 to 100).
requirePersonalEmailbooleanNoconfidence-mode basedKeep only leads with a personal email.
companyTypesarrayNoallKeep only the selected industries.
outputFormatstringNojsonThe combined file is currently always saved as a JSON array.
exportFormatsarrayNononeReady-to-import CSV for instantly, smartlead, lemlist, apollo, hubspot, salesforce, mailshake, outreach, woodpecker or generic.
crmWebhookUrlstringNononeEvery lead is sent here as it is produced.
crmFormatstringNogeneric-jsongeneric-json, hubspot or salesforce payload shape.
crmOnlyTierAbooleanNofalseSend only Tier A leads to the webhook.
notionConnectorbooleanNofalsePost a digest to Notion. Needs your own access key and notionDatabaseId.
notionDatabaseIdstringNononeTarget Notion database.
notionArchiveProfilestringNosummarysummary or per-lead.
slackConnectorbooleanNofalsePost a run digest to Slack. Needs your own Slack access key set as the SLACK_BOT_TOKEN environment variable.
slackChannelstringNononeSlack channel for the digest.
deliverTopNintegerNo10Leads included in the Notion and Slack digest (1 to 50).
proxyConfigurationobjectNo{"useApifyProxy": false}Optional connection settings.
concurrencyintegerNo10Websites processed in parallel (1 to 50).
retryAttemptsintegerNo3Retries per failed request (1 to 10).
retryBackoffBaseSecondsnumberNo0.5Starting pause between retries.
requestTimeoutSecondsintegerNo20Wait per response before it counts as failed (5 to 120).
searchProviderstringNofree searchFree search by default, two paid options with your own key, or none.
jsRenderProviderstringNobuilt-in page renderingBuilt-in page rendering for JavaScript-heavy pages, or none.
userAgentstringNobuilt-inCustom User-Agent text.
dryRunbooleanNofalseSkip every outbound request to validate your input.

Goal and preset

Pick a Goal and leave the rest on default. Quick outreach is fastest, high deliverability applies the safe confidence mode, and max coverage includes generated emails.

  • ✅ Good: "goal": "high-deliverability" for cold outreach where bounces hurt your sender reputation.
  • ❌ Bad: setting "preset": "fast" and expecting verified emails. Fast skips verification.

Warning: Manual values always override the goal and the preset. If you set verifyEmails yourself, the preset no longer decides it.

Use these when you have no URL list. Names and phrases are matched to company websites automatically before scanning.

  • ✅ Good: "knownNames": ["Acme Plumbing"] with "nameSuffix": "plumbing".
  • ❌ Bad: a single common word as a business name, such as "Smith".

Warning: Websites found from names and phrases can include companies you did not expect, so run a small test first and review the discovered domains before a large batch.

Watchlist key

Turn on compareToPrevRun and set monitorStateKey so scheduled re-runs compare against the same history. Without a key, one is derived from the domain list, so changing the list starts a new history.


Output

Results stream into the run's dataset as each website finishes, so the Output tab fills up live. View the data as a table or JSON, pick only the fields you need, and download it in JSON, CSV, Excel, XML or HTML. The Output tab has six views: Overview, Contacts and Company, Scoring and Confidence, Send Decision and Recovery, Account Intelligence and Change Monitoring.

The run's key-value store also holds OUTPUT (all leads, ranked across the batch with your filters applied), RUN_SUMMARY (counts and timing) and one EXPORT_<FORMAT> file per selected CSV export.

JSON example

Results for one website from the input above, shortened for readability and shown with example.com values. Real rows contain every field listed earlier.

{
"recordType": "lead",
"url": "https://example.com",
"domain": "example.com",
"emails": ["jane.doe@example.com", "info@example.com"],
"personalEmails": ["jane.doe@example.com"],
"genericEmails": ["info@example.com"],
"phones": ["+1 202-555-0100"],
"contacts": [
{
"name": "Jane Doe",
"firstName": "Jane",
"lastName": "Doe",
"title": "Founder & CEO",
"email": "jane.doe@example.com",
"linkedinUrl": "https://www.linkedin.com/in/example",
"source": "page:/team"
}
],
"socialLinks": {"linkedin": "https://www.linkedin.com/company/example"},
"pagesScraped": 5,
"leadScore": 80,
"dataQuality": "high",
"bestContact": {
"name": "Jane Doe",
"firstName": "Jane",
"lastName": "Doe",
"title": "Founder & CEO",
"email": "jane.doe@example.com",
"linkedinUrl": "https://www.linkedin.com/in/example",
"score": 100,
"reasons": ["senior title", "personal email", "verified email", "LinkedIn presence", "job title available"]
},
"companyType": "saas",
"confidence": {
"emailConfidence": 85,
"contactConfidence": 70,
"overallConfidence": 82,
"confidenceLevel": "high",
"riskFlags": []
},
"decision": {"tier": "A", "reason": "Ready to contact - verified email + senior contact"},
"isContactable": true,
"isSendable": true,
"sendDecision": {
"action": "SEND_NOW",
"riskLevel": "low",
"reasons": ["Verified personal email with acceptable confidence"]
},
"bounceRiskBucket": "low",
"buyingCommittee": {
"decisionMakers": [
{"name": "Jane Doe", "title": "Founder & CEO", "email": "jane.doe@example.com", "seniority": 100, "reachable": true}
],
"influencers": [],
"champions": [],
"blockers": [],
"size": 1,
"reachableStakeholders": 1,
"multiThreadReady": false
},
"failureType": null,
"scrapeError": null
}

Notes and limitations

  • The scores, tiers and send decisions are rule-based estimates from what a website publishes. Use them to rank leads in one batch, not as a prediction that someone will reply.
  • Contacts depend on how a website presents its team. Sites without a team page often return only generic inboxes.
  • Websites that are unreachable or protected still produce a record, with failureType, scrapeError and a recoveryPlan that suggests what to try.
  • On catch-all domains a single mailbox cannot be confirmed, so these emails are flagged instead of marked verified.
  • The combined OUTPUT file is always a JSON array. For other formats, export the dataset or use exportFormats.

Tips and advanced usage

How many results can you scrape with Website Lead Intelligence?

You can submit up to 500 URLs directly, and up to 5000 more websites through names and phrases. The time per website depends on how many pages are read, whether verification and page rendering are on, and the Websites processed in parallel setting. A quick test run with a few sites is the best way to estimate your batch.

How to get faster or cheaper results

  • Use "preset": "fast" or "goal": "quick-outreach" to skip verification and read fewer pages.
  • Lower maxPagesPerDomain for shallow, quick scans.
  • Set autoFilter to send-now-only or minLeadScore to keep only the leads you need. Filtered websites are not saved and not billed.
  • Use dryRun to check your input without sending any requests.

Known issues

  • The outputFormat option does not change the combined file yet, which is always JSON.
  • Notion delivery needs your own access key and a database ID. Without them the delivery step is skipped and noted in the run log. Slack delivery works the same way and needs the SLACK_BOT_TOKEN environment variable.

Integrations and API

Can I use Website Lead Intelligence as an API?

Yes. The Apify API gives you programmatic access to Website Lead Intelligence: start runs, schedule them and fetch results. Use the apify-client package for Node.js or Python. See the API tab for ready-to-use code.

How to build a lead list with Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("data_minds/website-lead-intelligence-find-the-right-person-verified").call(run_input={
"urls": ["https://apify.com", "https://stripe.com", "https://notion.so"],
"proxyConfiguration": {"useApifyProxy": False},
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["domain"], item["decision"], item["sendDecision"])

Can I integrate Website Lead Intelligence with other apps?

Yes. Connect it with Make, Zapier, Google Sheets, Airbyte and other cloud services through Apify integrations, and use webhooks to trigger an action whenever a run finishes. You can also schedule runs on the Apify platform, and turn on compareToPrevRun to monitor the same accounts over time.

Can I use Website Lead Intelligence with AI agents (MCP)?

Yes. Connect Website Lead Intelligence to Claude and other AI assistants through the Apify MCP server. Open the MCP tab for setup steps.


Other lead and contact scrapers

📧 Google Maps Email And Phone Number ScraperCollect emails and phone numbers for Google Maps businesses.
📍 Google Maps Leads ScraperBuild local business lead lists to feed into this Actor.
🔗 Dubai Real Estate Scraper — Unit Number & DLD Permit CheckerScrape Dubai real estate listings and get the DLD-verified unit number, RERA permit status, price, size and agent contacts.
🎙 Podcast Directory ScraperFind podcast host contacts and emails.
🔗 Trustpilot Reviews ScraperExtract customer reviews, ratings, company replies, and company data from any Trustpilot business page in bulk — with built-in retries and...

FAQ

Web scraping is generally legal when you collect publicly available data. You should still respect personal data rules such as GDPR, only collect contact details with a legitimate reason, and follow each website's terms. This is not legal advice. Read Is web scraping legal? for background.

How does Website Lead Intelligence work?

You provide company websites, business names or footer phrases. The Actor reads each company's public pages, then returns one record per website with emails, named contacts, a lead score, an A/B/C tier and a recommended next action. Results appear in the dataset as each website finishes, so you can start reviewing leads immediately.

How to find decision maker email from company website pages?

Enter the company website and Website Lead Intelligence reads its public team, about and contact pages, then returns named people with job titles and any emails it finds. Contacts are ranked by seniority, and you can verify emails or generate likely addresses for people who publish none.

How can I verify emails before cold outreach?

Turn on Verify email deliverability, or choose the high deliverability goal. Each email gets a status, catch-all domains are flagged, and the bounceRiskBucket field shows low, medium or high risk. Using the safe confidence mode keeps only verified personal emails, which helps reduce your email bounce rate.

Why am I getting fewer results than expected?

Check four things. A website may be unreachable or protected, so read failureType and recoveryPlan. Your filters, such as Minimum lead score or Require a personal email, may remove leads. The page limit may be too low, so raise Max pages scanned per website. Finally, robots.txt rules may block pages.

Is the output ready for my CRM or outreach tool?

Yes. Select one or more exportFormats such as hubspot, salesforce or instantly, and the run saves a ready-to-import CSV for each in its key-value store. You can also send every lead to a CRM webhook as it is produced, or limit it to Tier A leads with crmOnlyTierA.

What if Website Lead Intelligence is not working?

First check the run log for the plain-language note about what happened, and read the scrapeError field of the affected record to see the cause. If the problem continues, open the Issues tab with your run link and we will look into it.


Support and feedback

Found a bug or have a feature request? Please create an issue on the Issues tab.

Need a custom solution or more data? Contact us at hello.dataminds@gmail.com.

Built and maintained by the data_minds team on Apify. This Actor is an independent tool and is not affiliated with or endorsed by the websites you analyse. You are responsible for using the data in line with applicable laws and website terms.