Catch-all domains
The reason no email verification service is 100% accurate, including this one.
What a catch-all domain is
A catch-all domain accepts mail addressed to any mailbox at it, whether or not
that mailbox exists. Write to hgkjsdfg@somecompany.com and the server takes
it without complaint, then works out what to do with it afterwards — usually dropping it
into an administrator's inbox, often silently discarding it.
It is a normal configuration, not a broken one. Companies use it so that mail to a
misspelled name still arrives, so that sales@ and info@ and
every departmental alias work without being individually created, and so that a
departing employee's address does not start rejecting mail the day their account closes.
Why it breaks verification
Email verification works by asking a mail server a question. The checker opens a conversation with the server that handles the domain and, in effect, asks: will you accept mail for this address? A server that rejects unknown addresses answers no for addresses that do not exist and yes for ones that do, and that difference is the entire signal.
A catch-all server answers yes to everything. The question stops carrying information. There is no follow-up question that recovers it, because from outside the domain there is no observable difference between a real mailbox and an imaginary one — both produce the same acceptance.
This is not a limitation of any particular product. It is a property of how SMTP works, and it applies identically to every verification service in existence.
How a catch-all is detected
You cannot tell whether a mailbox exists on such a domain, but you can reliably tell that the domain is a catch-all — which is the difference between a wrong answer and an honest one.
The method is to ask the same server about an address that certainly does not exist: a random string of characters at that domain, invented on the spot, which no one could have ever registered. If the server rejects it, the server distinguishes real from unreal, and its answer about your actual address means something. If it accepts that too, it accepts everything.
That second probe is what ListCheckup runs, and its result is what turns "the server said yes" into either a verdict or an admission.
What honest handling looks like
There are three things a verification service can do when it meets a catch-all domain, and only one of them is defensible.
| What it does | What that means for you |
|---|---|
| Reports it as valid | A guess presented as a fact. Your accuracy figure looks excellent and your bounce rate does not improve, because the addresses that were going to bounce were passed through as good. |
| Reports it as invalid | Worse. You delete real, reachable customers on the strength of something nobody actually determined. |
| Reports it as undetermined | The truth. You know which addresses carry a real answer and which do not, and can treat the two differently. |
ListCheckup returns a distinct catch-all verdict, separate from valid and invalid, and does not charge for it. The reasoning is in the product's own source: a catch-all is an outcome where the work was done, the mail server was asked, and it declined to say — so billing for it would be billing you for our inability to find out. The credit goes back.
The same applies to an address where the check could not complete at all, because a server was throttling or blocking us. That is reported as unknown — a fact about the mail server, not about your subscriber — and it is not charged either.
What this means for accuracy claims
When a verification service advertises 98% or 99% accuracy, ask what it did with the catch-all domains in the sample. There are only two possibilities: they were excluded from the calculation, or they were guessed at and counted as correct.
A high accuracy figure is easy to produce if undetermined results are quietly reported as valid. The bill looks better too, since every guess is a billable answer. The cost lands later, on your bounce rate, once the guesses turn out to be addresses that were never there.
What to do with catch-all addresses
They are not bad addresses. Many are perfectly real people at companies with a sensible mail configuration, and deleting them means deleting customers.
- Keep them, but keep them separate. Send to them as their own segment rather than mixed into your verified list, so that if some do bounce, the damage is contained rather than attached to every send you make.
- Let engagement decide. One or two campaigns will tell you far more than any external check can. An address that opens is real; one that neither opens nor bounces after several sends probably is not worth keeping.
- Do not re-check them expecting a different answer. The domain's configuration is what it is. Paying another service to look again produces the same shrug, usually at a higher price and sometimes disguised as a verdict.
- Watch the ratio. If catch-alls are a large share of your list, you are probably selling to businesses rather than consumers, and your acquisition — not your verification — is what to look at.
Where this leaves you
A verification service cannot tell you whether a mailbox exists on a catch-all domain, and neither can any of its competitors. What it can tell you is which of your addresses are in that position, so that the number you get back is a real answer about the rest.
That is what ListCheckup does: an address we cannot settle comes back marked as such, with the credit returned rather than charged as a guess. It opens in the coming weeks. Leave your address and we will tell you the day it does.
Related: what a bounce rate is and what counts as good, and the difference between a hard and a soft bounce.