Bulk Email Verification: How It Works, What It Costs and How to Run One
Bulk email verification is checking an entire list of addresses in one job: you upload a CSV, every row gets syntax, domain, mail server and mailbox checks, and you download the file back with a status on each address. It is the step that stops dead addresses from bouncing when you import a list into a sequencer, ESP or CRM.
This guide covers what happens to each row, how to prepare the file, what to do with each result, and what it costs at different list sizes.
What happens to each address
A proper bulk verifier runs layered checks. Cheaper checks run first so expensive ones are only spent on addresses that pass.
| Check | What it catches | What it cannot tell you |
|---|---|---|
| Syntax | Missing @, spaces, illegal characters, double dots | Whether the domain exists |
| Domain and DNS | Domains that do not exist or have expired | Whether the domain takes mail |
| MX record | Domains with no mail server | Whether the mailbox exists |
| SMTP mailbox | Mailboxes the server says do not exist | Anything on catch-all domains |
| Extra flags | Disposable, role-based (info@, sales@), free webmail | Whether the person will reply |
The SMTP step is what separates real verification from formatting checks. Our post on syntax vs MX vs SMTP checks shows what each layer catches.
How to run a bulk verification, step by step
- Export the list as CSV. One row per contact, with the email in its own column. Keep the other columns; a good verifier passes them through.
- Remove duplicates first. Exact and case-insensitive duplicates are common in merged exports. The free duplicate email remover does this in the browser.
- Trim obvious junk. Empty cells, placeholder values like test@test.com, and addresses on your suppression list should go before you pay to check them. Five free cleanup steps covers the rest.
- Upload and map the email column. Most tools detect it automatically.
- Wait for the job. Do not split one list into many tiny jobs; it makes results harder to merge back.
- Download by segment. Export valid, risky and invalid separately so you never send to the wrong file by accident.
- Write results back to the source. Mark invalids in your CRM or ESP so the next export does not bring them back.
What to do with each result
| Result | Meaning | What to do |
|---|---|---|
| Valid | The server accepted the mailbox | Send |
| Invalid | Mailbox or domain does not exist | Remove and suppress |
| Catch-all / accept-all | Domain accepts every address, so the mailbox cannot be confirmed | Send last, in small batches, or skip for cold email |
| Risky | Disposable, role-based, or other warning signs | Decide by use case; usually skip for cold outreach |
| Unknown | No usable answer at check time | Re-check later or hold back |
The catch-all decision matters most for B2B lists, where a large share of company domains accept everything. Should you email catch-all addresses has a decision framework.
What bulk verification costs
There are two pricing shapes in this market. Pay-per-credit charges for every address, so the bill grows with the list and every re-check costs again. Flat monthly plans charge the same amount no matter how many addresses you check within the plan limits.
Below are published pay-as-you-go prices for a one-off clean at three list sizes. Each price was read from the vendor's own pricing page on the date shown; prices change, so check the page before you buy.
| Vendor | 10,000 | 50,000 | 100,000 | Source, date checked |
|---|---|---|---|---|
| ZeroBounce | $129 | $499 | $649 | zerobounce.net, 21 Oct 2026 |
| Kickbox | $70 | $275 | $500 | kickbox.com, 19 Oct 2026 |
| Bouncer | $60 | $250 | $400 | usebouncer.com, 19 Oct 2026 |
| MillionVerifier | $39 | $89 | $149 | millionverifier.com, 19 Oct 2026 |
| DeBounce | $25 | $75 | $135 | debounce.com, 12 Oct 2026 |
| SimpleVerifier | $19 (one month of Growth) | $29.99 a month, unlimited | $29.99 a month, unlimited | Pricing |
For a single list under 10,000, a cheap per-credit vendor like DeBounce can cost less than us, and that is fine to use. The flat plan wins when you verify every week, re-check old lists, or clean lists in the tens of thousands. The verification cost calculator runs the numbers for your own volume.
Bulk verification mistakes to avoid
- Verifying once and sending for months. Business addresses decay as people change jobs. Re-check anything older than about three months before a new campaign; how often to re-verify has a cadence.
- Treating catch-all as valid. It is a different result for a reason. Mixing it into the valid file hides where bounces come from.
- Dropping the other columns. If your verifier strips names and company fields, you have to merge results back by hand, which is where mistakes happen.
- Sending everything the day you verify. Start with the valid segment at your normal volume and watch the first batch before adding anything riskier.
When bulk verification is not enough
Verification tells you whether an address can receive mail. It does not fix authentication, warm-up, or content problems. If a verified list still lands in spam or bounces with policy messages, read the bounce text with the bounce message analyzer and check your setup with our deliverability checklist.
Try it on your own list
Upload a CSV on the verify page and you get a status for every row, with valid, risky and invalid exportable separately. You get 100 free email checks when you sign in with Google, no card, which is enough to test a sample of your list before you commit.
Common questions
What is bulk email verification?
It is checking a whole list of email addresses in one job, usually by uploading a CSV. Each address goes through syntax, domain, mail server and mailbox checks, and you download the results with a status for every row.
How long does it take to verify a list in bulk?
Small lists of a few thousand often finish in minutes. Large lists take longer because mail servers limit how fast they answer, and some providers deliberately slow down repeated checks. Lists heavy in one corporate domain can be slower than mixed lists.
Does bulk verification send an email to each address?
No. The mailbox check opens a conversation with the receiving mail server and asks whether it would accept mail for the address, then disconnects before any message is sent.
Will a verified list have zero bounces?
No list is bounce-free. Catch-all domains accept every address at check time, mailboxes close after the check, and some security gateways hide mailbox status. Verification removes most avoidable hard bounces, not all of them.
What should I do with unknown results?
Unknown means the server did not give a usable answer at check time. Re-check them later, or hold them back from your first send and add them only once the valid segment has gone out cleanly.
Verify unlimited addresses for $29.99/month
Real SMTP mailbox checks. No credits, no per-email fees.
Get Started