Email Validator — Syntax, MX & Risk Checks
Pricing
from $1.20 / 1,000 email validateds
Email Validator — Syntax, MX & Risk Checks
Validate email addresses with syntax, domain, MX, disposable-email, role-account, and risk checks for cleaner lead lists and outreach data.
Pricing
from $1.20 / 1,000 email validateds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Email Validator - Syntax, MX & Risk Checks
Free-plan limit: Apify free-plan runs can return at most 5 dataset records per run from this Actor, even if you request more.
Validate email addresses in bulk with a deterministic Apify Actor built for lead cleaning, CRM hygiene, signup screening, and AI-agent workflows. It checks mailbox syntax, IDNA-normalized domains, DNS records, MX records, disposable domains, role accounts, and common free email providers, then returns one structured dataset row per email.
Use this actor when you need a fast, transparent email validation pass before enrichment, outreach, CRM import, or marketing automation. Do not use it as proof that a specific mailbox inbox exists; the actor does not perform SMTP handshakes, send messages, bypass catch-all domains, or verify human ownership of an address.
Output
| Field | Description |
|---|---|
email | Original input email address. |
normalizedEmail | Trimmed email with IDNA ASCII domain normalization. |
status | valid, risky, or invalid. |
confidence | Score from 0 to 1 for easy filtering. |
syntaxValid | Whether the address matches a safe RFC-style mailbox pattern. |
domainAscii | DNS-safe domain used for lookups. |
hasMx | Whether MX records exist when MX checks are enabled. |
isDisposable | Whether the domain is in the built-in temporary mailbox list. |
isRoleAccount | Whether the mailbox is generic, such as sales@ or support@. |
isFreeProvider | Whether the domain is a common consumer email provider. |
reasons | Human-readable explanation for the result. |
Pricing
This Actor uses pay-per-event pricing. These are the current Apify Store event prices:
| Event | Price (USD) | When it is charged |
|---|---|---|
email-validated | $0.0002 | Email validated — Charged once for each email address validated with syntax, domain, DNS, MX, and risk checks. |
apify-actor-start | $0.00005 | Actor Start — Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). — Charged once per run. |
Apify platform usage for this Actor run is included alongside the event prices above; no separate per-run platform-usage fee is passed to users.
This covers Apify platform usage for this Actor run. Other Apify products or usage outside this Actor run may still follow your account plan.
Input
You can provide email addresses in two ways:
emails: a list with one email per itememailText: pasted text; the actor extracts email-looking strings
Duplicate addresses are removed case-insensitively before validation. maxEmails caps how many unique addresses are processed in one run.
Validation Logic
The actor marks hard failures as invalid, including malformed syntax, DNS failures when DNS checks are enabled, MX failures when MX checks are enabled, and disposable domains when allowDisposable is false. It marks usable but lower-quality addresses as risky, including free providers and role accounts when role accounts are not allowed. Clean addresses that pass enabled checks are marked valid.
DNS behavior is controlled by checkDns and checkMx. Keep both enabled for production cleaning. Turn them off only for fast local syntax-only testing or when your network environment blocks DNS lookups.
Example Input
{"emails": ["alex@example.com","sales@example.org","bad@@example"],"checkDns": true,"checkMx": true,"allowDisposable": false,"allowRoleAccounts": true,"maxEmails": 1000}
Example Output Item
{"email": "alex@example.com","normalizedEmail": "alex@example.com","isValid": true,"status": "valid","confidence": 0.95,"syntaxValid": true,"domain": "example.com","domainAscii": "example.com","localPart": "alex","dnsChecked": true,"domainHasDns": true,"mxChecked": true,"mxRecords": ["mail.example.com"],"hasMx": true,"isDisposable": false,"isRoleAccount": false,"isFreeProvider": false,"reasons": ["Email passed all enabled validation checks."],"checkedAt": "2026-07-08T05:00:00.000Z"}
API Usage
apify call USERNAME/email-address-validator --input='{"emails": ["alex@example.com", "bad@@example"],"checkDns": true,"checkMx": true}'
Python Client
from apify_client import ApifyClientclient = ApifyClient("APIFY_TOKEN")run = client.actor("USERNAME/email-address-validator").call(run_input={"emails": ["alex@example.com", "bad@@example"],"checkDns": True,"checkMx": True,})items = client.dataset(run["defaultDatasetId"]).list_items().items
Limitations
This actor does not send email, log in to mail providers, or guarantee a human reads the mailbox. Some domains accept all mail through catch-all routing, and DNS success does not prove an individual inbox exists. Disposable-domain detection uses a curated built-in list, not a paid real-time global feed.
Legal
Use email validation responsibly and comply with applicable privacy, anti-spam, and marketing laws, including CAN-SPAM, GDPR, and local consent requirements. The actor is a data-quality utility, not permission to contact people.