Syntax, domain, MX and mailbox checks on one address or a hundred thousand, with catch-all domains and spam-trap risk called out rather than quietly counted as valid.
Syntax catches the malformed and the mistyped. The domain check confirms it resolves at all. The MX check confirms it can receive mail — a domain with no MX record cannot, no matter how real the address looks. The mailbox probe asks the receiving server whether that specific address exists, which is the only check that separates a plausible address from a deliverable one.
Catch-all domains accept mail for every address, so the mailbox check cannot confirm anything. Rolling those into 'valid' makes the report look better and the bounce rate worse. Warmerly reports them as accept-all, alongside a separate spam-trap risk flag, so you can decide what to do rather than discovering it after the send.
A bulk verification is a job, not a page you have to keep open. It appears in the Data Library while it runs and stays there afterwards, re-openable, exportable, and available to push straight into a campaign.
Verification is the cheapest insurance in cold email. A hard bounce rate above a few percent tells every mailbox provider you are working from a list you did not check, and repeated sending to dead addresses is the most reliable route onto a domain blocklist. The check costs minutes. The alternative costs the domain.
The obvious cost is the wasted send, and it is the smallest part. Bounce rate feeds reputation directly at every large provider — a sender with an elevated bounce rate is, by definition, one whose list is not maintained, and that is scored against everything else you send from that domain.
The larger cost is spam traps. Recycled traps are addresses that once belonged to real people and were later repurposed to catch senders working from stale data. They look completely ordinary. Hitting one is a strong signal to the operators of domain blocklists, and hitting several is how a healthy sending domain becomes an unusable one inside a week.
Verify before import, not after the first send. Suppression catches the bounces you have already paid for; verification stops most of them happening. Doing only the second means learning your list was dirty by damaging your domain with it.
Syntax validation catches the obvious: a missing @, an impossible character, gmial.com. It is cheap and it eliminates a surprising share of a hand-built list, but it tells you nothing about whether the address exists.
The domain check confirms the domain resolves. The MX check goes further and confirms it has mail exchangers — a domain with no MX record cannot receive mail at all, which quietly invalidates every address on it regardless of how plausible each one looks.
The mailbox probe opens an SMTP conversation with the receiving server and asks whether the specific address exists, without delivering anything. This is the check that matters, and it is also the one with a genuine limitation: a server configured to accept everything will say yes to any address you name.
A catch-all — or accept-all — server accepts mail addressed to anything at the domain, real or not, and sorts it out internally. From outside there is no way to distinguish a real mailbox from an invented one, so verification genuinely cannot resolve the question.
Many verification services report these as valid, because a higher valid percentage sells better. The consequence is a report claiming 96% valid on a list that bounces at 8%. Warmerly reports them as their own category, because 'we could not determine this' is the truthful answer and it is the one that lets you make a decision.
What to do with them depends on your appetite. Excluding them from a large send is the conservative choice. Sending to them from a well-warmed mailbox in small volumes, and watching the bounce rate closely, is reasonable for a high-value segment. Sending to a hundred thousand of them from a new domain is not.
B2B email data decays at a meaningful rate every year, concentrated in job changes. A list verified three months ago is not a verified list — it is a list that was verified once. Re-verify anything older than about a month before a large send.
There is an API, keyed to a workspace, for verifying at the point an address enters your world rather than in a batch before a campaign. The highest-value place to call it is a signup or lead form: rejecting a mistyped address while the person is still on the page is worth far more than discovering it in a bounce report next month.
The second-highest is a CRM import. Verifying on the way in keeps the decay out of the system that everything else reads from, rather than cleaning it repeatedly downstream.
Aim for a bounce rate under 2% on any campaign, and treat anything above 5% as a stop-and-fix rather than a note for the retrospective. If a verified list still bounces heavily, the problem is usually age — the verification is old, or the list was bought and had already decayed before it reached you.
Bought lists are worth a specific warning. They are typically stale, frequently contain traps, and have usually been sold to several other senders who are all mailing them. No amount of verification makes a purchased list a good idea; verification will simply tell you, accurately, how bad the one you bought is.
Very accurate for domains that answer honestly — dead addresses and dead domains are identified reliably. Catch-all domains are the genuine limitation, and they are reported as their own category rather than counted as valid.
Under 2%. Above 5% is a stop-and-fix: it is damaging your sending domain in real time, not just wasting sends.
It depends on the value of the segment. Excluding them is conservative and safe. Sending in small volumes from a warmed mailbox while watching bounce rate is reasonable for high-value targets. Sending to them at scale from a new domain is not.
Before any significant send if the list is more than about a month old. B2B data decays quickly, mostly through job changes, so a previously verified list is not a currently verified one.
Yes — there is a workspace-scoped API. The best place to call it is at the point of entry, such as a signup form, so bad addresses are rejected before they ever reach your database.
One address or a hundred thousand — syntax, domain, MX and mailbox, with catch-all and trap risk reported honestly.