Deliverability
How to clean an email list: 7 steps and when to do it
Clean your email list: duplicates, invalid addresses, unsubscribes and inactive contacts. Follow seven steps with a worked list-cleaning example.

Email lists change over time: people change jobs, inboxes disappear, typos enter forms and subscribers lose interest. Cleaning an email list helps reduce wasted sends and makes campaign reports more useful.
Start with duplicates and errors, apply suppression records, verify uncertain addresses and review inactive contacts. A technically valid address does not establish consent or interest.
When should you clean your email list?
A full review every six months is a practical starting point, not a universal rule. For a nonprofit, plan it before membership renewal or a major event campaign. Review sooner if your results deteriorate.
- After each campaign: process permanent bounces, complaints and unsubscribes immediately.
- Before an import or restart: check the database before contacting an old audience.
- Every six months: review duplicates, address validity, contact sources and recent engagement.
Which signals should trigger a cleanup?
Rising bounces or complaints, or poorly documented contact sources, call for an immediate review. Do not wait for a universal ceiling: providers use different rules and denominators. Handle permanent failures and unsubscribes after every campaign.
The Gmail sender guidelines recommend monitoring delivery errors and spam reports and adjusting volume when problems appear.
Hard bounce versus soft bounce
A hard bounce is a permanent failure, such as a nonexistent address: suppress it from future sends. A soft bounce is temporary, such as a full inbox or an unavailable server: investigate repeated failures rather than deleting after one incident.

Which contacts should you suppress, review or keep?
| Contact type | Recommended action |
|---|---|
| Invalid address or hard bounce | Suppress from future sends immediately. |
| Unsubscribe | Keep the suppression record; stop marketing messages. |
| Spam complaint | Suppress immediately and investigate the source. |
| Duplicate | Merge useful information into one contact record. |
| Single soft bounce | Monitor; do not delete automatically after one failure. |
| Inactive contact | Review their history before deciding whether to keep them. |
| Catch-all or uncertain address | Verify before including it in a campaign. |
How to clean an email list in seven steps
1. Back up the database and document its sources
Export a backup before deleting anything and document where each group came from: signup forms, customers, events, an old platform or manual imports. An address with no clear source requires further review.
2. Remove duplicates
Remove stray spaces and use your platform’s duplicate detection. Merge useful information while preserving opt-outs and suppression records. Do not let an older record reactivate a suppressed contact.
3. Correct only verified errors
Check missing at signs, spaces and apparent domain typos. Do not guess a replacement address: an uncertain correction can send a message to the wrong person. Ask the contact to confirm when necessary.
4. Verify addresses before sending
Verification can check syntax, the domain and whether a receiving server accepts mail. It does not prove consent or interest. Separate valid, invalid and uncertain results. The Sendora email verification guide explains the process in your account.
5. Maintain a suppression list
Unsubscribes, hard bounces and complaints must remain excluded even when they appear in a new import. Preserve these records so an old backup cannot accidentally reactivate them.
6. Review inactive contacts
A missing open does not prove an address is invalid. Check campaign history alongside replies, purchases or membership activity. For uncertain cases, verify the person’s continued interest through an appropriate channel before including them again.
7. Resume sending gradually
After a long break, begin with recent, engaged contacts and monitor bounces and complaints before increasing volume. Also check domain authentication using our SPF, DKIM and DMARC guide.
Example: review a list before a newsletter
Illustrative example with non-overlapping categories: a file contains 1,000 rows: 40 duplicate rows, 20 invalid addresses, 10 unsubscribed or complaining contacts and 30 uncertain addresses. After merging duplicates and excluding the other categories, 900 contacts remain to review for sending. Their origin and permission still need checking.
| Category | Count | Action |
|---|---|---|
| Duplicates | 40 | Merge without losing suppression information. |
| Invalid addresses | 20 | Exclude from future sends. |
| Unsubscribes and complaints | 10 | Keep suppressed, including after reimport. |
| Uncertain addresses | 30 | Set aside for verification. |
| Remaining contacts | 900 | Check source and permission before sending. |
How to measure the impact of cleaning
Compare similar campaigns before and after cleaning. Review delivered emails, bounces, complaints and clicks. A smaller list can be more useful if it contains reachable, interested contacts. Our email analytics guide explains the calculations.
Clean and manage contacts with Sendora
Sendora helps organize lists, verify addresses and exclude unsubscribed, bounced or complaining contacts from campaigns. Review the active recipient count before sending.
Frequently asked questions
Should I delete every inactive contact?
No. Review their history and interest first. Missing opens alone do not justify deletion; also consider clicks, replies, purchases and membership activity.
Does email verification guarantee delivery?
No. Verification reduces invalid-address risk, but delivery also depends on reputation, authentication, content and mailbox rules.
Can I reimport an unsubscribed contact?
The address may be retained as a suppression record, but it should not be reactivated for marketing without a new valid request.

