Email list decay is inevitable. People change jobs, abandon old addresses, or simply stop engaging. On average, 22–30% of email addresses become invalid within a year. If you're not actively cleaning your list, your bounce rate is slowly climbing and your inbox placement is slowly falling.
Step 1: Remove Hard Bounces Immediately
This should happen automatically after every send via your ESP. Most platforms suppress hard-bounced addresses after one failure. If yours doesn't, export the bounce report after each campaign and remove them manually. Never send to a confirmed hard bounce twice.
Step 2: Run the Full List Through a Verification Service
Before doing anything else with an old or imported list, upload it to an email verification service. The service will classify each address as:
- Valid — keep
- Invalid — remove immediately
- Catch-all — segment for special handling
- Disposable — remove
- Role address — review and decide
A single bulk verification run can cut your list by 15–30% on older lists, and immediately reduce your bounce rate on the next send.
Step 3: Remove Chronically Unengaged Contacts
Low engagement is as damaging as invalid addresses — ISPs use engagement signals (opens, clicks) to score your sender reputation. Define an inactivity threshold:
- B2C email: remove contacts who haven't opened in 6 months
- B2B email: remove contacts who haven't engaged in 12 months
Before removing them, send a re-engagement campaign: a single email asking if they still want to hear from you. Those who click stay; those who don't are removed.
Step 4: Fix Your Collection Process
Cleaning an existing list is reactive. The goal is to prevent bad addresses from entering in the first place:
- Use double opt-in — subscribers must confirm by clicking a link. Eliminates typos and fake signups.
- Add real-time verification to forms — an API call at signup checks the address before it's stored.
- Remove obvious disposable domains — block known temporary email providers at the form level.
Step 5: Set a Regular Cleaning Schedule
Email hygiene is not a one-time event. Set a recurring schedule:
- After every campaign: suppress hard bounces, monitor complaint rate
- Quarterly: remove unengaged contacts, run verification on new imports
- Annually: full list verification, review and update suppression lists
What Good Metrics Look Like After Cleaning
| Metric | Good | Warning | Critical |
|---|---|---|---|
| Hard bounce rate | < 0.2% | 0.2–0.5% | > 0.5% |
| Soft bounce rate | < 1% | 1–2% | > 2% |
| Spam complaint rate | < 0.08% | 0.08–0.1% | > 0.1% |
| Open rate (engaged list) | > 20% | 10–20% | < 10% |
Summary
List cleaning is an ongoing discipline, not a one-off task. Remove hard bounces instantly, verify imports before sending, trim the unengaged regularly, and fix your collection process so the problem doesn't recur.