Skip to main content
Docs/Using the tools
Using the tools

Verification statuses, explained.

Every address you check gets four things: a status, a plain-English reason, a recommended action and a score. Here's what each one means and what to do about it.

5 min read · Updated October 2026

We use the same four-status vocabulary as the major verification services, so your results import cleanly into your CRM or email platform. The status answers one question: will mail to this address bounce? The action answers a different one: what should you do with it? They can differ. An info@ address won't bounce, so it isn't Undeliverable, but a person may never read it, so it's Risky.

The statuses

  1. DeliverableThe mail server confirmed this mailbox exists and accepts mail. Only a deliverability check can give this answer. Action: send.
  2. ValidThe format is correct and the domain accepts email, but the mailbox itself has not been confirmed. This is the best answer a check can give without asking the mail server, so free checks never say Deliverable. Action: send, or run a deliverability check to be sure.
  3. RiskyIt probably won’t bounce, but sending carries a risk: a shared team inbox, a disposable address, a catch-all domain, a likely typo. The reason tells you which. Action: review, or remove when the reason calls for it (disposable, abuse@, noreply@).
  4. UndeliverableMail to this address will bounce: the format is wrong, the domain doesn’t exist or refuses email, or the mail server says the mailbox doesn’t exist. Action: remove. Every bounce hurts your sender reputation.
  5. UnknownWe asked the mail server and it didn’t give a clear answer (slow, greylisting, or blocking verification). You are not charged for Unknown. Action: retry later, or treat it as risky.

What is a catch-all domain?

Some mail servers are set to accept mail for any address at their domain, real or not, and sort it out later. When we ask whether [email protected] exists, a catch-all server always says yes, so the answer means nothing. We mark these Risky · catch-all rather than pretending they're confirmed. Many are real people at real companies, so sending in moderation is usually fine; just don't treat a catch-all list as verified.

The actions

  1. SendSafe to include in your campaign.
  2. ReviewLook at the reason and decide. Fine for some campaigns, not others.
  3. RemoveTake it off your list before you send.
  4. RetryCheck again later; the mail server didn’t answer clearly.

The score

The 0–100 score is a quick sort key, not a probability. Undeliverable is always 0. Risky sits between 35 and 69, lower when the action is Remove or several issues stack up. Valid is 75–89 and Deliverable 90–100. Results are sorted worst-first so problems are at the top.

How billing works: deliverability checks are charged only for definitive answers (Deliverable, Undeliverable, Risky). Unknown is never charged, and addresses on domains that can’t receive email are answered by our DNS check for free, without asking a mail server.

Every reason code

Your CSV export includes a sub_status column with one of these codes, so you can filter and automate on the exact reason.

  1. mailbox_confirmed · DeliverableThe receiving mail server confirmed the mailbox exists.
  2. unconfirmed · ValidFormat and domain check out. The mailbox itself was not checked (no deliverability check run).
  3. domain_unchecked · ValidFormat checks out, but we could not reach DNS to check the domain. Run the check again.
  4. role_based · RiskyA shared team inbox such as info@, support@ or sales@, not a person.
  5. system_mailbox · RiskyA system mailbox such as noreply@ or postmaster@. No person reads it. Action: remove.
  6. do_not_mail · RiskyA complaint or trap mailbox such as abuse@. Mailing it invites complaints. Action: remove.
  7. disposable · RiskyA temporary inbox from a throwaway provider. Action: remove.
  8. catch_all · RiskyThe domain accepts mail for every address, so this mailbox cannot be confirmed.
  9. no_mx_record · RiskyThe domain has no MX record and relies on a fallback that many senders treat as unsafe.
  10. possible_typo · RiskyThe domain is one keystroke away from a major provider (gmail.con). We suggest the fix; we never change it silently.
  11. test_pattern · RiskyLooks like a test address (test@, demo@).
  12. free_provider · RiskyA consumer mailbox (gmail.com). Only flagged if you set Free providers to Remove.
  13. redaction_marker · RiskyContains ? or *, usually a redacted export.
  14. custom_pattern · RiskyMatches one of your own custom patterns.
  15. smtp_risky · RiskyThe mail server answered in a way that suggests delivery is not safe.
  16. invalid_syntax · UndeliverableNot a valid email address format.
  17. placeholder · UndeliverableA placeholder like ?????@ or ***@, not an address.
  18. reserved_domain · UndeliverableA reserved test domain (example.com, .test, .invalid) that can never receive mail.
  19. domain_not_found · UndeliverableThe domain does not exist.
  20. null_mx · UndeliverableThe domain publishes a null MX record, which declares it accepts no email at all.
  21. no_mail_server · UndeliverableThe domain exists but has no mail server.
  22. mailbox_not_found · UndeliverableThe mail server says this mailbox does not exist.
  23. smtp_inconclusive · UnknownThe mail server did not give a clear answer. Not charged.

Export columns

Every export uses the same columns: email, status, sub_status, reason, action, score, suggestion (the corrected address when we spot a typo), free_provider and mailbox_checked (whether a deliverability check ran on that address).