Skip to content

What Is Email Verification? A Plain-English Guide

What email verification actually checks — syntax, MX records, disposable domains, SMTP — and when it's worth running.

Updated July 5, 2026

Email verification is the process of checking whether an email address is real, correctly formatted, and able to receive mail — before you ever try to send to it. Instead of finding out an address is bad when a message hard-bounces, you find out up front, at signup or before a campaign, and act on it.

The key thing to understand: good verification is non-intrusive. ClearMX never sends an email to test an address. It inspects the address, the domain behind it, and the receiving mail server's configuration, then reports what it found. You can try it right now with the free email verifier — no account needed for the first checks.

Why email verification matters

Every invalid address you collect costs you something. Bad addresses bounce, and a high bounce rate tells inbox providers like Gmail and Outlook that you may be a careless or spammy sender. That hurts deliverability for everyone on your list, including the people who genuinely want your email.

Teams typically reach for verification in a few situations:

  • At signup — reject fake or mistyped addresses before they enter your database.
  • Before a campaign — clean an existing list so a send doesn't spike your bounce rate.
  • On a schedule — re-check older lists, since addresses go stale over time.

The checks involved

A verification result is built from several independent checks. Each one answers a different question, and together they explain why an address looks good or bad.

Syntax

The most basic check: is the address even shaped like an email address? This is RFC-aware, so it catches obvious problems like a missing @, a stray space, or an invalid character — not just a crude "does it contain an at-sign" test.

Domain and MX records

An address is only useful if the domain behind it can receive mail. This check looks up the domain's DNS and its MX (Mail Exchanger) records, which name the servers responsible for accepting email. No MX records usually means no mailbox to deliver to. You can inspect any domain's records directly with the MX record checker, and there's a deeper explainer in our MX records guide.

Disposable domains

Disposable (throwaway) addresses come from services that hand out temporary inboxes that self-destruct in minutes. They're common in fake signups and rarely worth keeping. ClearMX flags these against a maintained list of disposable domains; the disposable email checker does just this one check on demand.

A disposable domain is a risk signal, not a hard failure. The domain usually has working mail servers and will happily accept your message; nobody will ever read it. So a disposable hit deducts heavily from the score and comes back risky with the reason disposable_domain, not undeliverable. Most teams reject those addresses anyway; the point is that you reject them on the reason, rather than waiting for a verdict that will never arrive.

Role accounts

Role accounts are addresses tied to a function rather than a person — info@, support@, sales@, admin@. They often forward to several people or none, so they behave unpredictably in marketing sends. Verification flags them so you can decide how to treat them.

Free providers

An address on Gmail, Yahoo, or another free provider isn't bad — most consumer email lives there. Being on a free provider costs an address nothing on its own; it's reported as context, especially useful if you expected business addresses. What does bite is that most of the large free providers refuse mailbox probes from everyone, so their addresses often can't be confirmed and settle on risky for that reason rather than for being free.

Catch-all (accept-all) domains

Some domains are configured to accept mail for any address at that domain, whether or not a mailbox exists. On these "catch-all" domains, no external check can prove a specific mailbox is real, so the address carries inherent uncertainty even when everything else looks fine. ClearMX reports it as accept_all and settles the address on risky rather than pretending to be sure.

The SMTP mailbox probe

ClearMX can go one step further and open a conversation with the receiving mail server to ask whether it would accept mail for that exact mailbox. Crucially, this stops before any message is sent — no email ever leaves. It's the closest you can get to confirming a mailbox exists without emailing the person.

The probe is not a paid add-on. It runs on every verification where it can, and a verification costs the same single credit whether the probe ran or not. It gets skipped in a few specific situations: the domain has no usable mail server to talk to, the domain belongs to one of the large consumer providers that refuse verification probes from everyone, or that same domain has already been probed too many times in the last minute. The result records which of those happened instead of leaving you with a blank.

This matters for how you read the verdict, because a confirmed mailbox is the only route to deliverable. An address whose probe was skipped is never marked deliverable on the strength of its MX records alone — it stays risky with the reason mailbox_unconfirmed. Honestly unconfirmed beats falsely green.

What the results mean

ClearMX combines those checks into a single, easy-to-act-on verdict plus a score from 0 to 100.

ResultScoreWhat it means
Deliverable80–100Safe to send. Valid syntax, working MX, and the mailbox itself confirmed at the mail server.
Risky50–79Real, but carrying a risk signal — a disposable domain, a catch-all domain, a role account, or a mailbox that couldn't be confirmed.
UndeliverableBelow 50Don't send. A hard failure: invalid syntax, no MX records, or a mailbox the server rejected outright.
UnknownSet asideThe check was inconclusive — greylisting, a timeout, or a DNS failure. Nothing is necessarily wrong with the address; we just can't say yet.

Branch on the result, not on the score. unknown is decided before the score bands are consulted and carries a mid-range score of its own, so applying the bands by hand would turn a merely greylisted mailbox into "undeliverable". The bands describe how the three decided results are separated; they are not a rule you can run on the score alone.

Every result also includes a machine-readable reason so you know why — values like mailbox_exists, no_mx, disposable_domain, mailbox_unconfirmed, or role_account — plus the full breakdown of individual checks.

A practical rule of thumb: block undeliverable at signup and keep deliverable. Then make a deliberate call on risky by reading its reason: disposable_domain is usually worth rejecting outright, while role_account, accept_all and mailbox_unconfirmed are judgment calls that depend on what a bad send would cost you.

How you'd actually use it

There are two common ways to run verification, and most teams use both.

  • Real-time, one at a time — call the email verification API at signup. Send POST /api/v1/verify with a bearer token, and you get back a synchronous JSON response with the result, score, reason, and each check.
  • In bulk — upload a CSV to bulk verification, let it verify every row in the background, then export a clean, deliverable-only list.

Getting started

You don't need a card to try verification. Every new account gets 500 free verification credits, and credits never expire — top up with pay-as-you-go credits priced in EUR, from €0.0060 each and cheaper at volume. Run a few addresses through the free email verifier to see the checks and results in action, then read up on reducing your bounce rate to put those results to work.

Related guides

Ready to verify your list?

Start free with 500 verification credits. Clean lists, block disposable signups, and verify by API or CSV.