★★★★ 4.9/5 Stars • Validating Billions of Emails Since 2012

Bulk Email Validation:
RFC Syntax, DNS, and Intelligence Checks

Our bulk email validation service runs 16 static checks on every address: RFC 5321 envelope syntax, DNS and MX lookups, reserved TLD rules, disposable and role filters, gibberish scoring, and Levenshtein typo correction. It is the first of two layers in our bulk email verification service, running before the SMTP verifier. 99.7% accuracy across the full pipeline.

RFC 5321 Envelope
DNS + MX Lookup
Reserved TLD Rules
Disposable Detection
Role Filter
Gibberish Scoring
Typo Correction
IANA Live Feed
Bulk Email Validation
READY
10 of 10 free validations today resets midnight EST
Military-Grade Encryption
ISO 27001
SOC 2 Type II
GDPR
CCPA
HIPAA
12,090,305,157+ Addresses Validated
2,002,161,701+ Bounces Prevented
99.7% Accuracy Rate

Bulk Email Validation|Bulk Email Verification

Together they make up our bulk email verification service. The validator handles the static layer first, and only the addresses that pass continue into the verifier for the live SMTP check. Anything the validator rejects never reaches the verifier.

Static Layer · Runs First

Bulk Email Validation

Every address is checked against RFC 5321 envelope syntax, DNS and MX records, reserved TLD rules per RFC 2606 and 6761, and our intelligence datasets: disposable, role, free email provider, gibberish, and typo correction.

No connection to the destination mail server at this layer. Fast, cheap, deterministic. Catches roughly 10 to 15 percent of bad addresses on typical lists (up to 20 percent on older, stale lists) before the verifier layer runs.

SMTP Layer · Runs Second

Bulk Email Verification

Opens a TCP connection to the destination mail server and confirms the specific mailbox exists via an SMTP RCPT TO probe. No message is ever sent.

Handles catch-all detection, greylisting retry, and reply-code verdict mapping. The authoritative answer on mailbox existence and the second half of the same bulk email verification service.

See the bulk email verification

A Bulk Email Validation Service Built for Scale

Every address moves left-to-right through these four validation layers. Each layer filters, annotates, or normalizes before the next runs. Addresses that pass all four are handed to the SMTP verifier layer, documented on the bulk email verification page.

01

Normalize

Trim whitespace. Lowercase the domain portion. Collapse duplicates. Reject anything that cannot be parsed as an address.

trim · lowercase · dedup
02

Syntax

Enforce RFC 5321 envelope rules. Length limits, reserved characters, and domain label rules.

RFC 5321 · 5233
03

DNS

Authoritative MX lookup. A or AAAA fallback per RFC 5321 §5.1. Reserved TLDs rejected outright.

MX · A · AAAA · IANA
04

Intelligence

Disposable match, role patterns, free email provider tag, gibberish score, Levenshtein typo correction, and account blacklist lookup.

Disposable DB · Levenshtein

Every Spec the Validator Follows

We enforce eight RFCs in the syntax and DNS layers. Most validators cite one or two. The specs disagree at the edges, which is where incomplete implementations quietly lose addresses.

RFC 5321Oct 2008

SMTP Envelope Syntax

Defines the transport-level address form that mail servers accept. Length limits, domain label rules, and envelope syntax all live here. This is the spec that decides whether an address can ever be routed.

pass<alice@example.com>
fail<a@example> (single-label domain)
RFC 5233Mar 2008

Sieve Subaddressing

Plus-addressing. The tag after the plus sign is preserved, not stripped, because it carries routing meaning to the destination mailbox.

inputalice+news@example.com
tag"news"
RFC 2606Jun 1999

Reserved Top-Level Names

.test, .example, .invalid, .localhost are reserved forever. Any address with one of these TLDs is rejected without a DNS query.

failuser@mail.test
failuser@host.invalid
RFC 6761Feb 2013

Special-Use Domain Names

Expands reserved-name handling to include .onion, .local, and a few others. These are resolved by special mechanisms, not public DNS, so they cannot hold regular mailboxes.

failcontact@printer.local
RFC 1035Nov 1987

DNS Label Rules

Defines how DNS names are formed. Each label is 1 to 63 octets, total name up to 255 octets. Labels must not start or end with a hyphen. The validator enforces these at the domain parse step.

passmail.example.com
fail-bad.example.com
254 Octets · Not 320
The Length Myth

The address ceiling is 254 octets, not 320

Most blog posts cite 320 as the maximum email address length: 64 local + 255 domain + 1 at-sign. That arithmetic is wrong. RFC 5321 §4.5.3.1.3 caps the envelope path at 254 octets. The two extra bytes at 256 are consumed by the < and > in the RCPT TO command. Our validator enforces 254. Addresses beyond it do not round-trip through real MTAs no matter what the naive sum says.

The 16 Static Checks, Named and Cited

Transparent rule list. Every check traces back to a spec, and when one fails the response tells you exactly why. No hidden magic, no mystery scores.

#
Rule
What it catches
Example
01
Envelope syntax
RFC 5321 §4.1.2
Transport-level address structure. Catches recipients that cannot be envelope-routed.
a@b no TLD
02
Total length ≤ 254
RFC 5321 §4.5.3.1.3
Envelope path ceiling. Rejects addresses that cannot round-trip.
255+ chars
03
Local-part ≤ 64
RFC 5321 §4.5.3.1.1
Local-part octet cap.
65+ local chars
04
Domain label ≤ 63
RFC 1035 §2.3.4
Per-label DNS length rule.
64-char label
05
Plus-addressing
RFC 5233
Preserves the subaddress tag. Never strips plus-tags by default.
a+news@ex.com
06
MX record lookup
RFC 5321 §5.1
Authoritative MX query, sorted by priority.
ALT1.gmail-smtp-in
07
A / AAAA fallback
RFC 5321 §5.1
Accept A or AAAA when no MX is configured.
A → host.ex.com
08
Reserved TLD
RFC 2606
Rejects .test, .example, .invalid, .localhost without DNS query.
mail.test
09
Special-use domain
RFC 6761
Rejects .onion, .local and related special-use names.
host.local
10
Live IANA TLD list
IANA feed
Checks the current IANA root zone daily. No stale allowlist.
.software
11
Disposable database
Dataset lookup
Cross-references 272,174+ burner providers, updated continuously.
10minutemail.com
12
Role account patterns
Curated list
Flags info@, admin@, support@, abuse@, and 20+ others.
info@
13
Free email provider detection
Provider tags
Tags Gmail, Yahoo, Outlook, iCloud, ProtonMail and similar.
isFreeService
14
Gibberish entropy
n-gram score
Entropy-based scoring on the local-part.
asd8f7sd@
15
Levenshtein correction
Edit distance
Suggests gnail→gmail, yaho→yahoo.
gmail.com
16
Blacklist cross-reference
Tenant DB
Previously hard-bounced or complained addresses. Free re-check.
prior fail

Rejected Without a DNS Query

A handful of TLDs are reserved forever by IETF specs or IANA policy. They cannot resolve to real mailboxes. Our validator rejects them in the syntax layer, before any DNS lookup happens.

.testRFC 2606

Reserved for testing and internal-only use. Never routed on the public internet.

.exampleRFC 2606

Reserved for documentation and examples. Along with example.com, example.net, example.org.

.invalidRFC 2606

Reserved to provide a name that will never resolve. Used in negative testing.

.localhostRFC 6761

Always resolves to the loopback address. Cannot host remote mailboxes.

.localRFC 6762

Multicast DNS (Bonjour) name space. Not part of the public DNS tree.

.onionRFC 7686

Tor hidden-service names. Never resolvable via regular DNS.

.internalICANN 2024

Reserved by ICANN for private-use DNS. No public delegation.

single-charIANA policy

TLDs must be at least two characters. Single-letter TLDs are never valid.

The Same Mailbox, Five Ways

Gmail, Outlook, and FastMail each interpret local-part characters differently. Our validator processes a canonical field that collapses provider-specific quirks so deduplication catches what string comparison misses.

Provider
Input address
Canonical form
Rule applied
GGmail
inputj.on.doe+news@gmail.com
canonicaljondoe@gmail.com
ruleDot-fold + plus-tag strip
OOutlook
inputjon.doe+news@outlook.com
canonicaljon.doe@outlook.com
rulePlus-tag strip only, dots kept
FFastMail
inputjon.doe+news@fastmail.com
canonicaljon.doe+news@fastmail.com
ruleSubaddress preserved
YYahoo
inputjon.doe-news@yahoo.com
canonicaljon.doe@yahoo.com
ruleHyphen subaddress strip
iiCloud
inputjon.doe+news@icloud.com
canonicaljon.doe@icloud.com
rulePlus-tag strip only

Levenshtein + Keyboard Adjacency

Edit distance alone is not enough. A naive algorithm thinks kmail and gmail are equally close to gnail. We weight keystroke proximity, so the correction layer always lands on the right domain.

gnail.comgmail.com
EDIT DISTANCE1
gmial.comgmail.com
TRANSPOSITION1
gmai.comgmail.com
DELETION1
gamil.comgmail.com
TRANSPOSITION2
yaho.comyahoo.com
DELETION1
yahooo.comyahoo.com
INSERTION1
yahoo.cmyahoo.com
TLD DELETION1
yahoo.cmoyahoo.com
TRANSPOSITION2
hotmal.comhotmail.com
INSERTION1
hotmial.comhotmail.com
TRANSPOSITION1
hotmail.conhotmail.com
TLD SWAP1
outllook.comoutlook.com
INSERTION1
iclod.comicloud.com
DELETION1
protnmail.comprotonmail.com
DELETION1
aol.cmaol.com
TLD DELETION1
live.conlive.com
TLD SWAP1

Suggestions come back in the emailSuggested field. Prompt the user or auto-apply. For real-time signup-form validation see the Real-Time API.

A Reference Dataset, Not a Mystery

The disposable list is an exposed dataset under continuous update. Every entry is flagged with the service it belongs to, first-seen date, and current status. The count below reflects the dataset size at time of writing and grows every day.

Bulk Email Checker · Dataset

Disposable Email Providers

272,174+
Domains Tracked · And Growing

Continuously monitored list of burner, temporary, and self-destructing email providers. New services are added to the dataset the moment they surface. Historical entries remain so archived signups still resolve correctly.

Continuously updated

Why Email Validation Pays Off

Validation is the fastest part of list hygiene. Our bulk email validation service rejects roughly 10 to 15 percent of a typical list before the SMTP verifier layer ever touches them, and up to 20 percent on older, stale lists. Every address that passes moves into SMTP verification cleaner, faster, and without burning credits on obvious junk.

  • Validation is processed for freeThe static validation layer never consumes a credit. You only pay when the SMTP verifier layer runs on what survives.
  • Typo rescue recovers real signupsUsers who typed gnail.com get a typo suggestion. Marketers recover around four percent of otherwise-lost leads.
  • Gibberish filter kills bot trafficBot-generated mailboxes fail entropy scoring. Signup forms stop flooding with garbage leads overnight.
  • Canonicalization kills duplicatesGmail dot-folding and plus-tag stripping catch duplicates that string comparison misses.
  • Pre-filtered lists verify fasterSMTP verification runs on a smaller, cleaner set. Faster turnaround.
Start Validating Free
IMPACT REPORT batch #a7c294 runtime 0.41s FILTERED BEFORE SMTP 15.8% of submitted addresses removed before the SMTP verifier runs 1,247 submitted 1,050 forwarded 197 filtered DISTRIBUTION 84.2% clean 15.8% filtered BREAKDOWN RULE ACTION DELTA typo.correction recovered +47 gibberish.filter rejected −18 duplicate.dedup merged −156 disposable.block blocked −23 $0.00 email validation incurs no credit cost generated 12:03:41 UTC

Validation Before Sending, Always

Anyone holding a list of addresses and paying deliverability cost has a reason to validate it. The workflow looks different for each team, but the pipeline is the same.

Email Marketing Teams

Run validation before every campaign. Bounce rate stays under two percent, inbox placement stays high, and the ESP keeps seeing a clean sender.

Sales & Cold Outreach

Opt-in outreach lists still accumulate typos, role accounts, and stale addresses over time. Strip malformed, reserved-TLD, and disposable entries before a single send goes out.

Developers & SaaS

Integrate the same pipeline into signup flows via the Real-Time API. Reject typos, disposables, and bots at the door.

CRM & Data Operations

Schedule recurring validation against HubSpot, Salesforce, or Klaviyo exports. Mark dead leads, update status fields, keep pipelines honest.

E-commerce

Validate at checkout and in periodic database audits. Order confirmations, shipping updates, and re-engagement campaigns actually land.

Enterprise & Data Warehouses

Run tens of millions of rows through the Unlimited API. Flat-rate pricing, parallel threads, predictable cost.

From the Teams Running Daily Validation

"Our previous provider billed credits for validation, so we built a whole pre-upload cleanup step to keep the bill down. Bulk Verify does that layer for free as part of the run. That manual work just disappeared from our pipeline."

"The typo correction response field alone pays for itself. We auto-suggest the corrected domain in the signup flow and recover around four percent of otherwise-bounced users."

"We tested four validators on the same 250k sample. Bulk Email Checker was the only one that correctly flagged the reserved-TLD and disposable addresses the others missed."

Upload, POST, or Automate

Every original column is preserved byte-for-byte in the output. Validation columns are appended alongside, never in place of.

CSV Upload
TXT Upload
REST API
Sheets
Excel
WordPress
Zapier
n8n

CSV Columns Preserved End-to-End

Upload a spreadsheet with any number of custom columns. The validator appends result columns alongside your existing data without touching what was there. No reconciliation work on the way out.

  • Every original column preserved byte-for-byte
  • Appended: status, event, rule-by-rule breakdown, intelligence flags
  • Full MX enrichment block (IP, hostname, country, city, ISP, ASN)
  • Download clean CSV, ready to re-import into any CRM or ESP
  • Supports large CSV and TXT uploads within account limits
View API Documentation
Validator CSV output preserving every custom column alongside per-rule results

Bulk Email Validation FAQ

The technical questions that come up most often.

What is a bulk email validation?

A bulk email validation runs a list of addresses through static checks that do not contact the destination mail server: RFC 5321 envelope syntax, DNS lookups, disposable matching, role patterns, gibberish scoring, and typo correction. It is the first of two layers in our bulk email verification service, catching 10 to 15 percent of bad addresses on typical lists (up to 20 percent on older, stale lists) before the SMTP verifier layer runs.

What is the difference between validation and verification?

Validation is the static layer above. Verification is the live SMTP handshake that confirms the recipient mailbox exists via an RCPT TO probe. Validation is cheap and deterministic. Verification is slower and authoritative on mailbox existence. Both layers together give 99.7 percent accuracy. See the bulk email verification for the SMTP half.

How many validation checks run on each address?

Sixteen. They group into three layers: syntax (RFC 5321 envelope, length limits, plus-addressing per RFC 5233), DNS (MX, A, AAAA, RFC 2606 and 6761 reserved TLDs, live IANA feed, RFC 1035 label rules), and intelligence plus cross-reference (disposable database, role patterns, free email provider detection, gibberish, Levenshtein typo correction, blacklist).

What is the best bulk email validation?

The best bulk email validation runs the full pipeline on every address rather than any one check in isolation: RFC 5321 envelope syntax, DNS with MX and A or AAAA fallback, reserved TLD rules per RFC 2606 and RFC 6761, disposable and role patterns, gibberish entropy scoring, Levenshtein typo correction, and provider-specific canonicalization for dedup. Static validation alone is not authoritative on mailbox existence, so a serious tool also pairs validation with live SMTP verification. Bulk Email Checker runs all sixteen static checks plus the SMTP verifier layer in one pipeline at 99.7 percent accuracy.

Is the max address length 254 or 320 octets?

254. The 320-octet figure most blog posts cite is a miscalculation. RFC 5321 §4.5.3.1.3 caps the envelope path at 254 octets because the angle brackets in the RCPT TO command consume part of the SMTP line length. We enforce 254.

How accurate is bulk email validation?

Validation alone catches 10 to 15 percent of bad addresses on typical lists, and up to 20 percent on older, stale lists. Accuracy at the validation layer is deterministic because the checks are either right or wrong against the RFC (a malformed address, a nonexistent TLD, a reserved string, a disposable domain). Validation is not authoritative on mailbox existence, which is what the SMTP verifier layer answers via RCPT TO. Both layers together run at 99.7 percent accuracy across the full pipeline.

What counts as a reserved TLD?

RFC 2606 reserves .test, .example, .invalid, and .localhost. RFC 6761 adds .onion and .local. ICANN reserved .internal in 2024. IANA policy forbids single-character TLDs. All are rejected without a DNS query.

How does typo correction actually work?

Levenshtein edit distance against hundreds of known provider domains, weighted by keyboard adjacency (gnail is closer to gmail than to kmail because g is next to n on a QWERTY layout). TLD swaps like .con→.com are a separate rule. Suggestions return in emailSuggested.

How do I validate an email list in bulk?

Upload the list as a CSV or TXT file. The validator runs its static checks on every address (RFC 5321 syntax, DNS lookups, disposable database, role patterns, typo correction, gibberish scoring), then the SMTP verifier layer probes every address that survived. Download the enriched list with pass or fail status, intelligence flags, suggested corrections, canonical form for dedup, and all original columns preserved byte-for-byte. Full walkthrough in the How It Works section above.

Is there a free bulk email validation?

Free validators typically stop at syntax (the @ check) or a DNS ping, without disposable matching, role patterns, typo correction, or canonical dedup. A real bulk email validation needs every layer on every address. Bulk Email Checker is pay-as-you-go starting at $2.95 for 1,000 validations, with no subscription, no monthly fee, and credits that never expire. The validator layer itself never consumes a credit. Credits are only spent when the SMTP verifier layer runs on what survives validation. For single-address checks, our email checker runs all 16 checks at no cost.

Is the disposable domain list updated?

Continuously. The dataset tracks over 272,174 domains and grows every day as new burner services surface. Historical entries remain so archived signups still resolve correctly.

What file formats does the validator accept?

CSV and TXT files. Excel files should be exported as CSV from Excel or Google Sheets before upload. Every original column is preserved byte-for-byte in the output.

How much does validation cost?

Pay-as-you-go starts at $2.95 for 1,000 validations. Volume tiers bring per-address cost down to $0.000132 at 25M. Credits never expire. Unknown results (DNS resolver failures, transient errors) consume zero credits.

Is bulk email validation GDPR compliant?

Yes. GDPR, CCPA, SOC 2 Type II, ISO 27001, and HIPAA ready. TLS 1.3 in transit, AES-256 at rest, per-tenant isolated containers, configurable retention, and a signed DPA ready for enterprise.

Can I use validation at signup time, not just on a list?

Yes. The same 16 checks are exposed through the Real-Time API with sub-second response times. Ideal for signup forms, checkout pages, and lead capture.

How often should I validate a list?

Every quarter at minimum. Lists decay at 2 to 3 percent per month. Always validate before a major campaign and route new leads through the Real-Time API at signup so no bad address ever enters the database.

Sixteen filters.
Zero costs.

Email validation is the first and fastest layer of our bulk email verification service. The SMTP verifier runs next on everything that passes. Credits never expire. Ten free validations a day, no credit card.

No credit card required Credits never expire 16 static checks per address SOC 2 Type II