How to clean an email list before a big send (step by step)
A practical checklist for cleaning an email list: what to remove, what to keep, what 'risky' actually means, and how to do the whole thing in under an hour.
By ListBouncer · September 12, 2026 · 3 min read
You have a campaign going out and a list you're not entirely sure about. Maybe it's been a while since you last emailed it. Maybe it came from a form that never had any validation. Either way, sending to it blind is a gamble with your sender reputation.
Here's the process, start to finish.
1. Export the whole list as a CSV
Pull everything out of your email platform, not just the segment you plan to send to. Old segments are exactly where the dead addresses hide, and you want to catch those before they get re-added to an active campaign later.
Any column layout is fine. You need an email column; a name column is useful but optional.
2. Deduplicate
Most platforms already prevent duplicates, but exports from CRMs, spreadsheets and old forms often have the same address two or three times with different capitalisation or trailing spaces. Deduplicate on the lowercase, trimmed email before you do anything else. It saves credits and avoids counting the same bounce twice.
3. Strip the obviously bad rows
Before running any verification, scan for the things a human can spot in seconds:
- Rows where the email column is empty or contains something that isn't an email
- Addresses with typos in the domain (
gmial.com,yahooo.com,outlok.com) - Internal test addresses your team added while setting up the form
- Anything with
test,asdforexamplein it
4. Run the list through a verifier
This is the step that actually finds the dead addresses. A verifier checks each one against its mail server and returns a verdict. The verdicts usually fall into a few groups:
Valid. The mailbox exists and accepts mail. Keep these.
Invalid or will bounce. The domain has no mail server, or the server explicitly says the mailbox doesn't exist. Remove these. Every one of them is a guaranteed hard bounce.
Disposable. Temporary addresses from services like Mailinator or Guerrilla Mail. Remove these. Nobody is reading them.
Role. Addresses like info@, support@ or admin@. These are real, but they're shared inboxes and they generate a disproportionate share of spam complaints. Keep them only if you have a specific reason to.
Catch-all. The domain accepts mail for any address, so the verifier can't tell whether the specific mailbox exists. These are a judgment call. Recent sign-ups are probably fine. Addresses that are years old are probably not.
Unknown or major provider. Some providers (Yahoo, Outlook, most Google Workspace and Microsoft 365 domains) block per-mailbox verification. The address is likely fine, but it can't be confirmed. Keep them if they came from a real sign-up; be cautious if the list is old or purchased.
5. Decide what to do with the risky buckets
The valid and invalid buckets are easy. The middle buckets are where the actual decision happens.
A reasonable default for a re-engagement send: keep valid, keep unknown and major-provider addresses that signed up in the last year, drop everything else. For a high-stakes send from a domain you can't afford to burn, be stricter and drop catch-alls too.
6. Send to the clean list, then watch the bounces
After the send, check the bounce report. If you cleaned properly, hard bounces should be well under 1%. If they're not, the addresses that bounced tell you something about which bucket you should have been stricter with.
How long this takes
Steps 1 to 3 take about ten minutes for most lists. Verification depends on the tool and list size, but for a list of a few thousand it's typically done within the hour, and you can get on with something else while it runs.
ListBouncer is built for exactly this workflow. You drop the CSV, it finds the email column, verifies every address, and emails you when it's done. The cleaned list downloads split into the buckets above, so step 5 is just picking which files to import.
Put it into practice
Clean your list before the next send.
100 free addresses, no card required. Upload a CSV and see what comes back.
Try ListBouncer free
