Bulk Email Validator - MX, Disposable, Role & Typo Check
Pricing
from $0.24 / 1,000 email checkeds
Bulk Email Validator - MX, Disposable, Role & Typo Check
Clean email lists in bulk: syntax, MX/DNS, null MX, disposable, role-based, free-provider and typo checks plus SPF/DMARC. $0.30 per 1,000 emails; bad syntax, duplicates and DNS errors free. No SMTP probing.
Pricing
from $0.24 / 1,000 email checkeds
Rating
0.0
(0)
Developer
TinyRex
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Bulk Email Validator: MX, disposable, role-based and typo check
Clean an email list before you import it into your CRM or send a campaign — paste thousands of addresses and get valid, risky, invalid or unknown for each one, with a plain-English reason. The Actor checks syntax, whether the domain exists and accepts email (MX, null MX, A fallback), disposable/temporary providers, role inboxes (info@, sales@), free webmail and common typos (gmial.com → gmail.com), plus SPF and DMARC of the domain. $0.30 per 1,000 emails; bad syntax, duplicates and DNS errors are free. No API key, no login.
What you get from the Bulk Email Validator
- Catch dead and fake addresses fast — domains that don't exist, domains with a null MX (they accept no mail), domains with no mail server at all, and broken syntax (
a..b@x.com,name@@domain, missing TLD). - Flag risky addresses — ~10,000 disposable/temporary domains (open CC0 list), typo-trap domains with a
didYouMeanfix, role/shared inboxes (isRoleBased) and free webmail (isFreeProvider) so you can split B2B from B2C leads. - Domain email health —
hasSpfandhasDmarcshow whether the company's email is set up properly, andmxRecordsshows who hosts it (Google Workspace, Microsoft 365, ...).
Sample output (JSON)
{"input": "jane@gmial.com","email": "jane@gmial.com","status": "risky","reason": "typo-trap domain on the disposable list, did you mean jane@gmail.com?","syntaxValid": true,"domain": "gmial.com","localPart": "jane","isRoleBased": false,"isFreeProvider": false,"isDisposable": true,"didYouMean": "jane@gmail.com","domainExists": true,"hasMx": false,"mxRecords": [],"nullMx": false,"acceptsMailViaA": true,"hasSpf": false,"hasDmarc": false,"smtpChecked": false,"charged": true,"checkedAt": "2026-10-18T07:03:28.104Z"}
A valid company address looks like "status": "valid", "reason": "mail domain OK; role/shared inbox", "mxRecords": ["aspmx.l.google.com", ...], "hasSpf": true, "hasDmarc": true.
Export as CSV, Excel or JSON, or send results to Google Sheets, Make, Zapier, n8n, webhooks or the Apify API. A SUMMARY record in the key-value store has run totals (valid / risky / invalid / unknown / charged).
How to configure the Bulk Email Validator
- Paste your emails, one per line (a column copied from Excel or a CRM export works).
- Or give a dataset ID: the Actor collects every email from another run's output, for example Website Contact Details Extractor.
- Run. Each unique email that gets a DNS verdict is one charge.
Example input
{"emails": ["hello@apify.com", "jane@gmial.com", "test@mailinator.com", "nobody@example.com"],"checkSpfDmarc": true,"maxEmails": 10000}
| Setting | Default | Notes |
|---|---|---|
| emails | — | Addresses to check; duplicates removed case-insensitively (free) |
| datasetId | — | Pull every email-looking string from an Apify dataset |
| checkSpfDmarc | true | Adds hasSpf / hasDmarc; no extra charge |
| maxEmails | 10000 | Hard cap on unique emails per run (up to 100,000) |
Status meaning
| status | Meaning | Charged |
|---|---|---|
valid | Syntax OK, domain exists and has a mail server, not disposable | yes |
risky | Disposable provider, likely typo, or no MX (mail only via A record) | yes |
invalid | Domain doesn't exist, null MX or no mail server | yes |
invalid (bad syntax) | Fails the syntax check, no DNS lookup needed | free |
unknown | DNS lookup failed after retries; try again later | free |
Speed: each domain is looked up once and cached, with 32 lookups in parallel.
Common use cases
- Before a campaign: drop dead domains, typos and disposable signups so bounces don't hurt your sender reputation.
- CRM and newsletter clean-up: tag old contacts as
invalidorriskyand export only thevalidones as CSV. - Lead lists: check emails found by Website Contact Details Extractor and filter role inboxes with
isRoleBased. - Signup forms: run a nightly batch on new registrations to catch fake and temporary addresses.
Pricing
Pay per event: $0.0003 per email checked ($0.30 per 1,000), with Bronze/Silver/Gold discounts. Bad-syntax rows, duplicates and DNS errors (unknown) are free. A tiny Actor-start fee applies per run.
What this Actor does not do
It does not connect to mail servers to probe individual mailboxes (no SMTP RCPT TO handshake). That keeps it fast, cheap and safe for your list, but it means it can't tell whether john@company.com exists on a domain that does accept mail. Use it as the first, cheap pass that removes dead domains, disposables and typos; send the remaining valid addresses to an SMTP verifier only if you need mailbox-level certainty.
FAQ
How do I check if an email address is valid without sending an email? Paste it into Emails. The Actor checks the syntax and then asks DNS whether the domain exists and has a mail server (MX record). If either fails, the address can't receive email and comes back invalid.
What is a disposable email address? A temporary inbox from services like Mailinator or 10MinuteMail, used to grab a download or a free trial. They're flagged isDisposable: true and status: risky using the open CC0 disposable-email-domains list.
Should I remove role-based emails like info@ or sales@? For cold outreach to people, often yes; for B2B lead lists they're usually fine. That's why role addresses stay valid and are only flagged with isRoleBased: true, so you can filter them yourself.
What does a null MX mean? A domain can publish a "null MX" record (RFC 7505) to say it never accepts email, like example.com. Mail to it always bounces, so it's invalid.
Is my list stored or shared? The emails stay in your own Apify run storage. Lookups go to public DNS over HTTPS (Cloudflare 1.1.1.1, with Google Public DNS as fallback), which only sees domain names, never full addresses.
Related actors
- Website Contact Details Extractor — company emails, phones and social links from a list of domains; feed its dataset straight into this validator.
- Tech Stack Detector — technologies used by any website.
- UK Companies House Lookup — UK company profiles and officers from the official register.
- LEI Lookup — bulk GLEIF LEI search and validation.