Sending to unverified email addresses is the single fastest way to destroy a domain's sender reputation. Bounce rates above 3% trigger automated throttling at Gmail and Outlook. Above 5%, you risk being added to blocklists that take weeks to recover from. Email verification — done before every send — is not optional if you care about deliverability.
In this guide
- What email verification actually checks
- How to read verification results
- What to do with each result type
- Catch-all domains — the grey zone
- How often to re-verify your list
- Verifying in bulk vs. via API
- Free tool to verify any address now
1. What email verification actually checks
Email verification is not a single check — it is a sequence of four layers, each one narrowing down whether an address will actually receive your message.
1
Syntax validation
The most basic layer. Checks that the address follows the correct format — a local part, an @ symbol, a domain, and a valid TLD. Rejects obvious errors like missing @ or double dots. This alone eliminates nothing useful — almost every address in a real B2B database passes this check.
2
MX record lookup
Queries the DNS for the domain's Mail Exchange records. If a domain has no MX records, it cannot receive email — the address is invalid regardless of format. This is the first check that actually tells you something meaningful about deliverability.
3
Mailbox existence check
The most important layer. Contacts the mail server for the domain and asks whether the specific mailbox exists and can accept mail — without sending an actual message. If the mailbox is gone, the server says so. This is what separates a verified email from a merely formatted one.
4
Risk signal detection
Flags addresses that pass the previous checks but carry elevated risk. Disposable email providers (temporary inboxes created to bypass registration forms), role addresses (info@, support@, admin@), and catch-all domains all clear the mailbox check but behave differently in a campaign context.
2. How to read verification results
Every verified address comes back with one of four statuses. What you do with it depends on which one.
verifiedValid & Deliverable
The mailbox exists, the domain has a mail server, and the address passes risk checks. Safe to include in your campaign.
invalidInvalid
The address does not exist, the domain has no mail server, or the format is wrong. Remove it from your list immediately.
catch_allCatch-All Domain
The domain accepts all email regardless of mailbox existence. We cannot confirm the specific address. See section 4 for how to handle these.
unverifiedUnverified
The check could not complete — the server timed out, greylisted the request, or returned an ambiguous response. Retry once; if it fails again, treat as risky.
3. What to do with each result type
The decision rule for each status:
- verified — include in campaign. These addresses have passed all checks.
- invalid — remove immediately. Sending to these raises your bounce rate and wastes your sending volume.
- catch_all — send to a small test batch first (see section 4). Don't send the full volume until you've seen real bounce behaviour.
- unverified — retry once. If it fails again, move it to a low-priority suppression list rather than deleting it entirely. Some servers greylist aggressively but the address is still valid.
A practical threshold: aim to send only to lists where verified addresses make up at least 90% of the total. If your list is 60% verified and 30% catch-all, run the catch-all sub-test before sending at scale.
4. Catch-all domains — the grey zone
Catch-all domains are configured to accept every email sent to the domain — whether or not the specific mailbox exists. The mail server never says "this address doesn't exist" because it's programmed to accept everything. This is common at enterprise companies with IT policies that prevent bouncing email.
The practical challenge: a list of catch-all addresses may contain 40% valid inboxes and 60% dead ones — or 95% valid. You can't know without testing.
The recommended approach:
- Send to your verified addresses first. Let that campaign run for 3–5 days and monitor bounce rates.
- If bounce rates are under 2%, send a small batch (100–200) of your catch-all addresses.
- Watch actual bounce rates on that batch. If bounce rate stays under 3%, roll out the full catch-all segment. If it spikes, suppress all catch-all addresses from that domain.
Never send your entire catch-all list in one go. The downside risk — a single domain with thousands of catch-all addresses that all bounce — can wipe out a domain's reputation in a single campaign.
5. How often to re-verify your list
B2B email addresses decay at roughly 22% per year. People change jobs, companies restructure, domains get abandoned. A list you verified six months ago is not the same list today.
Before every campaign
Minimum standard. Even if you exported the list last week, run verification before you send.
Every 90 days
For lists you're not actively sending to but intend to use. Set a calendar reminder.
After a job change signal
If a contact triggers a job-change buying signal, re-verify their email before reaching out — they've likely changed domains.
After any high-bounce send
If a campaign comes back with bounce rates above 3%, verify the entire list immediately before sending again.
6. Verifying in bulk vs. via API
The right approach depends on your volume and how verification fits into your workflow.
Manual / bulk upload
Best for: one-off campaigns, ad hoc list cleans, non-technical users
Paste or upload your list, download the verified CSV. Works for up to 100 addresses at a time on the free tool. No code required.
Limitation: not automated — you have to do it manually before each send.
API integration
Best for: outreach tools, CRMs, homegrown systems with sending workflows
Call POST /api/verify-email from your application before storing or sending to any new contact. Verification happens in the background as contacts enter your system.
Limitation: requires a developer to wire it in — but once done, verification happens automatically on every new address.
7. Free tool to verify any address now
Sendburg's free email verifier runs all four checks — syntax, MX lookup, mailbox existence, and risk signals — and returns a deliverability score, MX host, and full flag breakdown. No account required.
Verify any email free
Single address · Bulk CSV up to 100 · REST API — all at send-burg.com/email-verifier
Try the free verifier →✓ Syntax check
Validates RFC format
✓ MX record lookup
Confirms mail server exists
✓ Mailbox check
Verifies the inbox exists
✓ Disposable detection
Flags temp email providers
✓ Role address detection
Flags info@, support@, etc.
✓ Deliverability score
0–100 confidence rating
Frequently asked questions
How do I verify an email address for free?+
Visit send-burg.com/email-verifier and type any email address. Sendburg checks the format, queries the domain's mail server, and confirms whether the mailbox exists — all free, with no account required.
What is the difference between email validation and email verification?+
Email validation checks format — does the address follow the correct structure? Email verification goes deeper: it checks whether the domain has a mail server and whether the specific mailbox exists and can receive mail. Verification is what actually predicts deliverability.
What is a catch-all email domain?+
A catch-all domain accepts every email sent to it, even if the specific mailbox does not exist. This makes it impossible to confirm individual address deliverability. Send to a small test batch first and monitor actual bounce rates before rolling out your full catch-all segment.
How often should I verify my email list?+
Before every campaign at minimum. B2B email addresses decay at roughly 22% per year as people change jobs and companies restructure. An unverified list that was clean six months ago may have a bounce rate high enough to damage your sender reputation.