Lead List Verifier: Check Phones, Websites, MX and Duplicates
VER RR
Run it after any lead scraper and see which rows are worth keeping. Pick a dataset or paste records, and each one comes back with its fields intact plus a verification object: the phone in E.164 with line type, the website as live, redirected, parked, dead or unknown, mail servers, duplicates, and a 0 to 100 score with reasons. Company lists only: person rows skip the phone check. Pay per record.
Input
Output fields
Sign up on Apify or log in
The Lead List Verifier: Phone, Website, MX, Duplicates Actor is ready to run with the inputs already set for "Lead List Verifier: Check Phones, Websites, MX and Duplicates". Sign up or log in and you'll land in Apify Console with a copy of this exact task.
Start the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" task
The Lead List Verifier: Phone, Website, MX, Duplicates Actor will start running based on the input automatically. You can also change all the input fields, like pasted records and field mapping, to match your specific use case.
Receive the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" output
Monitor the progress in real time. You will be notified as soon as your dataset is complete and ready for review. Each result includes data such as title, name, company, and more.
Integrate into your workflow
The final output is delivered in JSON, CSV, or Excel format, ready to be plugged into your workflow. You can also run the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" task via API.

Integrate "Lead List Verifier: Check Phones, Websites, MX and Duplicates" into your workflow
Connect "Lead List Verifier: Check Phones, Websites, MX and Duplicates" with 100+ integrations, or run it via API or MCP.
Webhook
n8n
Make
Zapier
Airbyte
Keboola
IFTTT
Hubspot
GDrive
Gmail
Apify MCP
GitHub
Slack
LangChain
LlamaIndex
Flowise
Pinecone
OpenAI
Mastra
Clay
Pick a dataset from an earlier scraper run, paste records as JSON, or both. Common fields such as company, website, phone, city and countryCode are found by themselves, and the log lists them. Use the field mapping only if yours differ.
It is built for that: open the scraper's Integrations tab, choose Add integration, pick this Actor and set its Dataset field to {{resource.defaultDatasetId}}. If the field is empty, the run stops with a message and charges for no record.
Dead means there is proof: the domain has no address in DNS, or every route to it answers 404 or 410. Unknown means we could not tell, for example a site that blocks us or times out. A blocked site is never reported as dead.
Live website 40, redirected 20, unknown 15, valid phone 30, mail servers 20, company name 10, duplicate minus 30, kept between 0 and 100. Every record's reasons list shows what moved its score.
No. It asks DNS whether the company's domain has mail servers. It does not validate, find or look up any mailbox, and it adds no personal data. Other fields of your own records pass through untouched.
$0.0015 per record returned, which is $1.50 for 1,000 leads. Records that cannot be verified at all are not charged: the FAILED_ITEMS record in the run's key-value store gives each reason.