How to Verify an Email Address Before Sending
You found an address, typed it into a spreadsheet, or got it from a signup form. Before you send anything important, it is worth checking that the address actually works. This guide shows you how to verify an email address step by step, from quick free checks you can do yourself to verification tools that handle whole lists. You will also learn how to read the results, including the confusing ones like “catch-all” and “unknown.”
Prices are the USD prices vendors show to US visitors. Outside the US some pricing pages show other currencies (Hunter, for example, shows EUR), so the amount you see may differ. Each vendor fact links to the page it came from.
What verifying an email address actually checks
A verification does not send a real message. It runs a series of checks that together tell you how likely an address is to accept mail:
- Format. Is the address written correctly, with one @ sign and a valid domain?
- Domain. Does the domain exist, and is it set up to receive email?
- Mailbox. Does the receiving server say this specific mailbox exists?
- Risk signals. Is it a disposable address, a role inbox like info@, or a domain that accepts mail for any address?
Hunter’s Email Verifier page, for example, lists format, disposable and webmail checks, an MX record check, a connection to the mail server, and a mailbox check that does not send an email.
Step 1: Check the format and look for typos
Start with your own eyes. Most bad addresses fail for simple reasons:
- A misspelled provider, such as “gmial.com” or “outlok.com”
- A missing or doubled @ sign
- Spaces, commas or trailing dots copied from a document
- A missing top-level domain, such as “jane@acme”
Some verifiers fix common provider typos for you. NeverBounce’s pricing page, for instance, mentions automatic correction of misspellings like “gmai” to “gmail.”
Step 2: Confirm the domain can receive email
A domain needs MX (mail exchange) records to receive email. You can check this for free from your computer’s command line:
| System | Command |
|---|---|
| Windows | nslookup -type=mx acme.com |
| macOS or Linux | dig mx acme.com +short |
If the command returns one or more mail servers, the domain is set up for email. If it returns nothing, addresses on that domain almost certainly cannot receive mail, so remove them before sending.
This step only tells you the domain works. It says nothing about whether a particular person’s mailbox exists.
Step 3: Check the mailbox with a verification tool
To check the mailbox itself, a verifier connects to the receiving mail server and asks whether it will accept mail for that address, then disconnects before anything is sent. You could do this by hand with a raw mail server connection, but it is slow, error prone and can get your IP address blocked by servers that dislike repeated probes. A verification tool is the practical choice.
For a single address, a free checker is usually enough. Here are a few options, with details from each vendor’s own page:
- Hunter. According to Hunter’s Email Verifier page, you can check addresses without signing up, and a free account verifies up to 100 addresses a month. On Hunter’s pricing page, each verification uses half a credit, and checks that come back Unknown are not charged.
- ZeroBounce. ZeroBounce’s pricing page lists one credit per verified address and no charge for “unknown” results. Pay as you go starts at $39 for 2,000 addresses, and a subscription costs $99/month.
- NeverBounce. On NeverBounce’s pricing page, pay as you go costs $8 per 1,000 credits, which expire 12 months after purchase. A Growth plan is $49/month.
- Voila Norbert. Voila Norbert’s pricing page offers pay-as-you-go verification from $0.003 per email.
These are examples, not a ranking. Many email finder tools include verification too (see email finder vs email verifier), which you can compare in this list of the best email finder tools.
Step 4: Verify a whole list in bulk
If you have a list rather than one address, upload it as a CSV to a bulk verifier instead of checking addresses one by one. Most tools return a file with a status for each row. Hunter, for example, offers a Bulk Email Verifier and an API alongside its single checker (source).
Before you upload, it helps to:
- Remove obvious duplicates and blank rows.
- Fix visible typos from Step 1.
- Keep a copy of the original file so you can match results back to your contacts.
Step 5: Read the results correctly
Every tool names its statuses a little differently, but most results fall into four groups:
| Result | What it means | What to do |
|---|---|---|
| Valid or deliverable | The server accepted the mailbox | Safe to send |
| Invalid or undeliverable | The domain or mailbox doesn’t exist | Remove it |
| Catch-all or accept-all | The server accepts mail for any address, so the mailbox can’t be confirmed | Send with care, or confirm another way |
| Unknown | The server didn’t give a clear answer, for example because it was slow or blocking checks | Retry later or treat as risky |
Catch-all results deserve a closer look for business outreach, because many company domains are set up this way. Some verifiers have their own methods for these: Hunter says it can verify accept-all addresses for several major email providers (source).
Step 6: Verify at the point of signup
If addresses come in through a form, check them when people submit it rather than months later. Two common approaches:
- Real-time verification. A verifier API checks the address as the form is submitted and asks the user to fix it if it fails.
- Double opt-in. You send a confirmation email with a link, and the address joins your list only after the person clicks. This proves the mailbox works and that its owner wants your emails.
When to verify your email address list again
An address that was fine six months ago may not be today, because people change jobs and companies close mailboxes. A good habit is to verify:
- Any address you found yourself, before the first email
- Any list you haven’t emailed in a while, before a new campaign
- Any purchased or imported list, before it touches your sending account
FAQ
Can I verify an email address without sending an email?
Yes. Verification tools check the format, the domain’s mail records and the mail server’s response for that mailbox, all without delivering a message.
Is there a free way to verify an email address?
Yes. You can check the format and run an MX lookup yourself for free. For a mailbox check, several tools have free options, such as Hunter’s free account with up to 100 verifications a month (source).
What does “catch-all” mean in a verification result?
It means the domain’s server accepts mail for every address, so the verifier can’t confirm that one specific mailbox exists. The address may work, but it carries more risk than a valid result.
Why did a verifier return “unknown”?
The receiving server didn’t give a clear answer, often because it was slow, temporarily refusing connections, or blocking verification checks. Try again later, or treat the address as risky.
Does a valid result guarantee my email will arrive?
No. Verification tells you the address exists, but delivery also depends on your sending setup, your reputation and the content of your message.
Wrapping up
To verify an email address before sending, check the format, confirm the domain has MX records, and run the mailbox check through a verification tool. Read catch-all and unknown results with care, verify lists in bulk before campaigns, and check new signups as they arrive. A few minutes of checking up front keeps your messages landing where you meant them to go. If you’re weighing costs, check Email Finder Online pricing.