How to Clean an Email List Before a Campaign

Cleaning a list is boring, mechanical and the single cheapest thing you can do to protect a campaign. Here is the order that works.
Table of contents
1. Deduplicate, properly
Start by removing exact duplicates, then near-duplicates: the same address in different cases, with or without dots in the local part on providers that ignore them, and the same person appearing under two addresses on the same domain.
Sending the same message twice to one person is not just wasteful, it is one of the fastest ways to earn a spam complaint.
2. Remove the addresses that were never real
Before any technical verification, filter obvious noise: malformed addresses, test entries, role accounts you have no reason to write to, and free-mail addresses if your campaign is strictly business.
Role addresses deserve a decision rather than a reflex. Writing to a generic support or info address is legitimate in some contexts and pure noise in others.
3. Verify what remains
Verification checks syntax, then the domain and its mail servers, then the specific mailbox through a real SMTP conversation. A DNS lookup alone only confirms the domain exists, which is a much weaker statement.
You will get four kinds of result, and they call for four decisions:
- Valid: send.
- Invalid: remove, permanently, from the source system as well as from the export.
- Risky: the server gave an ambiguous answer. Segment and send separately, or leave out of an important campaign.
- Catch-all: the domain accepts everything, so the test proved nothing. Judge on other signals and keep in a separate batch.
4. Update the source, not just the file
The most common mistake is cleaning an export and leaving the CRM untouched. Three months later the same dead addresses come back into the next campaign. Push the results back where the data lives.
5. Warm up if your domain is new
A clean list sent from a domain with no sending history is still a risk. If the domain is new, start with small volumes to engaged recipients and increase gradually. Reputation is built by being wanted, not by being verified.
How often
Business addresses decay continuously as people change jobs. A list that has not been used for six months should be verified again before a send. A list used weekly needs it far less often, because bounces already tell you what is happening.
What the four verification results actually mean
Every verification tool returns categories, and the words are not standardised. Understanding what sits behind each one prevents both timid and reckless decisions.
- Valid. The server accepted the specific mailbox during a real SMTP conversation. This is as close to certainty as email gets.
- Invalid. The server explicitly rejected the address, or the domain has no mail server at all. Permanent, and the only category you should delete outright.
- Risky. The syntax and the domain are fine, but the server gave an ambiguous answer, was temporarily unavailable, or rate-limited the check. These addresses may work perfectly. They just were not confirmed.
- Catch-all. The domain accepts every address, so the test proved nothing about this particular mailbox.
The most common mistake is folding risky and catch-all into invalid, because it produces a satisfying clean number. On a B2B list, that can mean discarding a large share of your real contacts.
Segment your send, do not just clean it
Cleaning is only half the work. How you send matters as much as what you send to.
Send your verified addresses first, on their own. That batch produces almost no bounces, which is exactly the signal receiving servers use to judge you. Once it has landed, send the risky and catch-all batches separately, ideally a day later.
The logic is reputational rather than technical. A provider evaluating your domain sees a clean send followed by a mixed one, rather than a single blended campaign with an average bounce rate. If the second batch performs badly, your important messages have already been delivered.
Metrics to watch after the send
A list is not clean once, it is clean at a moment in time. Three numbers tell you whether your cleaning worked:
- Hard bounce rate. Below one per cent on a verified batch is normal. Above two per cent means the verification was superficial, or the list aged between the check and the send.
- Spam complaint rate. The threshold that matters at the major providers is around 0.1 per cent, with real trouble beyond 0.3. Verification does not affect this at all, because it measures whether people want your email, not whether the address exists.
- Delivery gap between batches. If your catch-all batch performs comparably to your verified batch, you can be more confident with those addresses next time. If it bounces heavily, you have learned something about the source of your list.
Build the habit into your collection
The cheapest list to clean is the one that never got dirty. Two measures prevent most of the damage: validate the syntax and the domain at the point of capture, in your forms, so obvious typos never enter the database; and record where each contact came from, so that when a source turns out to produce dead addresses you can remove them all at once rather than one bounce at a time.
Conclusion
Deduplicate, filter, verify, segment by result, and write the results back to the source. Half an hour of unglamorous work before a campaign protects the thing that decides whether any of it lands: the reputation of the domain you send from.
Frequently asked questions
How often should I clean a list?
Before any significant send, and at minimum every six months for a list you use rarely. Business addresses decay continuously as people change jobs, so a list untouched for a year will have a meaningful share of dead addresses.
Does verification improve my open rate?
Indirectly. It does not make anyone want to read you, but it protects the sender reputation that gets your messages into inboxes at all. A clean list mostly prevents a fall rather than producing a rise.
Should I remove addresses marked as risky?
Not automatically. Risky means the server gave an ambiguous answer, not that the address is dead. Send to them in a separate batch after your verified one, and use what happens to decide.
Track the emails that matter
Install mailcheck for free and track up to 10 emails per month in Gmail and Zoho Mail.
Add to Chrome, freeNo credit card. Unlimited tracking from 9 EUR per month.
Keep reading
Email tracking