How do you clean an email list before a cold email campaign?

A cold list hasn't opted in, so nobody on it is waiting for your message. Every bounce counts against the domain you send from. Amazon SES recommends keeping bounces under 2%, reviews an account at 5% and may pause sending at 10% (AWS enforcement FAQ, read 24 September 2026). Gmail asks senders to keep reported spam below 0.3% in Postmaster Tools.

Start with duplicates and obvious junk. Merge your sources, dedupe on the address, and drop rows with no @ sign. Then run the file through bulk verification. ZapBounce checks syntax, the domain's MX record and the mailbox itself, and it closes each connection before DATA, so nobody on your list receives anything.

Split the results into four piles. Valid rows go into the campaign. Invalid rows get deleted, since a 550 today is a hard bounce tomorrow. Catch-all rows go into a small second batch you send once the main one lands cleanly, and unknown rows wait for a re-check, because greylisting and throttling often clear on a later try.

Next, read the flags. Role addresses like info@ and sales@ rarely reach the person you're after, and a cold pitch there draws complaints. Disposable domains don't belong on a B2B list at all. Our answer on role accounts covers when one is worth keeping.

Verify close to the send. Hunter found 5.5% of verified addresses had degraded within eight weeks (4 November 2025), so a list cleaned in spring is stale by summer. A 10,000-row list costs $25 at ZapBounce, unknowns and duplicates are never billed, and credits never expire between campaigns. The cold email use case shows the CSV route into Instantly.

What bounce rate is safe for cold email?

Keep bounces under 2%, the level Amazon SES recommends for every sender. SES reviews an account at 5% and may pause sending at 10%, per its enforcement FAQ read on 24 September 2026.

Should I send cold email to catch-all addresses?

Send them after your valid rows, in a smaller batch you can watch. A catch-all domain accepts every address at the SMTP step, so some rows bounce later. Stop the batch if bounces pass 2%.

How long before a campaign should I verify my list?

Verify within a week of the send. Hunter measured 5.5% of verified addresses degrading within eight weeks, so an older check loses value with every week that passes.

Does my sequencer's built-in check replace a verifier?

A built-in check suits a small warm list. A cold list of thousands needs catch-all and unknown reported apart and a price per check you can see; ZapBounce charges $5 for 1,000 checks.

Check this against your own list

100 free credits a month, no card. Unknown results come back labeled and are never billed.