How to Clean Your Email List

How to Clean Your Email List

To clean your email list, you verify every address before you send and remove the invalid, risky and disposable ones. A high number of bounces harms your sender reputation, which reduces the number of emails that reach the recipient's inbox.

Bounces aren't the only problem. Sending to spam traps, frequent complaints and low engagement also harm your sender reputation.

Short answer

  1. Verify the list before you send. Upload it to an email verification tool, or spot-check a few addresses first.
  2. Know what the results mean. Each address gets a score from 0 to 10 and, where relevant, a result code such as mailbox, disposable or catchAll.
  3. Remove or segment by result. Drop addresses that will bounce, and decide separately what to do with risky ones.
  4. Re-run the check before every big send. Addresses that were valid last quarter can bounce today.
  5. Know your tool's data retention. In CampaignKit, bulk jobs are deleted 30 days after they're created, so download your results.

How to keep an email list in shape?

The best option is to send an opt-in email once a new prospect gives you an email address. This validates the existence of the email address and also helps your marketing emails to get delivered to the prospect's inbox instead of promotions or spam.

Segment your email list by engagement and remove emails with no engagement over time.

Sending opt-in emails is not always possible. You might have an existing email list or emails were collected offline.

Email verification tools help you to clean and maintain a high-quality email list. They run a series of checks on each address to tell you whether it's safe to use for email marketing.

Why should I use an Email Verification Tool?

  1. Bounce rates harm your sender reputation. Detect and remove bounces early from your email lists. For bounces you've already received, see how to read a bounce back message and decide what to remove.
  2. Email addresses can become invalid. Even with an opt-in an email address can become invalid over time and will bounce.
  3. Temporary email addresses shouldn't be used for email marketing and be removed from your email list
  4. Protect your sender reputation to make sure your emails get delivered to the recipient's inbox.
  5. Fewer dead emails mean better insights into your audience through open and click rates.
  6. Fewer people on your list can save you money and improve your Return on Investment (ROI)

How email verification actually works

Here's what CampaignKit checks for every address, and what the result looks like. Other tools work along similar lines, but the codes below are ours.

The core checks:

  • Syntax: is the address correctly formatted?
  • Domain (MX): does the domain exist, and does it publish an email server (MX record)?
  • Mailbox: can the email server be reached, and does it confirm that the address exists? This check returns n/a when the mailbox can't be verified.

The score

Every address gets a score from 0 to 10:

Score What it means
0 The email will bounce.
2 The email can be used, but it looks risky, for example a temporary (disposable) address.
6 The mail server didn't let us verify the mailbox (verifyRejected), so its existence is unconfirmed.
9 The address passed, but its domain is catch-all (it accepts mail for any address), so this mailbox can't be confirmed individually.
10 The address passed all checks, and the server will accept email for it.

These are reference points, not the only possible values.

The result codes

When an address doesn't get a clean pass, a result code tells you why:

Code What it means
syntax The address isn't correctly formatted.
domain The domain doesn't exist or has no MX record.
mailbox The mail server reported the recipient as unknown.
verifyRejected The mailbox couldn't be verified because the recipient's mail server rejected verification attempts.
blacklist The address was found on our blacklist.
disposable The address or its domain belongs to a temporary email service.
role A role-based address such as sales@ or info@, rather than a person's own mailbox.
catchAll The domain is catch-all: it accepts mail for any address, so this specific mailbox can't be verified on its own.
didYouMean The address failed, but its domain looks like a typo of a well-known provider, so we suggest a correction.

Catch-all and role addresses are different things

The 2022 version of this post mixed these up, so it's worth being precise:

  • A catch-all domain is configured to accept mail for every address on it. The server says "yes" to anything, so no tool can confirm that a particular mailbox exists. CampaignKit counts these addresses as deliverable, but flags them with catchAll.
  • A role address like sales@, contact@ or info@ belongs to a function or team, not a person. It can sit on any domain, catch-all or not. CampaignKit flags it with role.

An address can be one, both or neither. Treat them as separate questions when you decide what to keep.

Clean your email list with CampaignKit

  1. Spot-check first (optional). Try a few addresses in the free single-address email verifier to see what the results look like.
  2. Create an account. New accounts get 200 free validations, no credit card required.
  3. Upload your list. Bulk validation takes a CSV or Excel file.
  4. Wait for the job to finish, then review the results and download them as CSV.

After the free validations, pricing is pay-as-you-go, from $6 for 2,500 emails. Credits never expire, and one credit pool covers both email validation and Email Finder. See email validation pricing for all volumes.

Using the API

If you want to clean lists automatically, for example as part of an import, you can create the same bulk jobs through the API. The Validation Jobs API docs cover uploading a file, checking the job status and downloading results.

Using Mailchimp? There's a separate guide on cleaning your Mailchimp email list.

Check it works

Once the job has finished, read the results in this order:

  1. Score 0: remove. These addresses will bounce. The result code tells you why, for example syntax or domain.
  2. Score 10: keep. All checks passed, and the server will accept email for these addresses.
  3. Everything in between: decide. A score of 9 usually means a catch-all domain. A score of 6 means the mail server didn't let us verify the mailbox (verifyRejected). Low scores such as 2 mean the address is usable but risky, for example disposable. Deductions stack, so an address with several issues scores lower. Check the result code before you remove anything.
  4. Catch-all addresses sit just below a full pass. They're deliverable, but not individually verifiable, so a catch-all address with nothing else wrong scores 9 rather than 10. Keep them in a separate segment if you want to watch their bounce rate.

Download the results as CSV and import the cleaned list back into your email tool.

Troubleshooting

A valid-looking address got a middling score. Check the result code. If it's verifyRejected, the recipient's mail server didn't let us verify the mailbox, so the address typically scores 6. The address may be fine. It just can't be proven. If it's also a role address (role), the deductions stack and the score drops further.

An address failed, and there's a suggested correction. That's didYouMean. When an address fails and its domain closely resembles a well-known provider (for example gmai.com instead of gmail.com), the result includes a suggested address and domain. It's only a suggestion: it never appears for an address that passed, and it won't "correct" a domain that is already on the list of known providers. Confirm with the contact rather than rewriting addresses silently.

The job's results are gone. Bulk validation jobs are deleted 30 days after they're created. Download the CSV before then, and re-run the list if you need fresh results.

Next step

Regular email verification belongs in every marketer's toolbox. It protects your sender reputation and gives you more reliable numbers on the people you actually reach.

Start by checking a handful of addresses in the free email verifier. Then clean the full list with a bulk upload: new accounts get 200 free validations, no credit card required, and pricing is pay-as-you-go after that. To automate it, use the Validation Jobs API.

Join 1,000+ CompaniesImproving Email Deliverability

Start with 200 free validations. Upgrade only when you're ready.

No credit card required • Cancel anytime