Email list cleaning: how to clean your list step by step

Email list cleaning means suppressing addresses that hard-bounce, unsubscribe or complain, removing role addresses and obvious typos, and moving contacts who no longer click or buy out of regular sends after a re-engagement attempt; do part one continuously and review inactive contacts every month or two.

How to clean your email list#

  1. Export everything first

    Download the full list, including unsubscribed, bounced and complained contacts, so you have a backup and a record of who must stay excluded.

  2. Suppress hard bounces

    Move every address that failed permanently to your suppression list and never email it again.

  3. Watch soft bounces

    Retry temporary failures, and suppress addresses that keep failing across several campaigns.

  4. Keep unsubscribes and complaints suppressed

    Honor every opt-out and spam complaint, and keep those records so a later import cannot add them back.

  5. Remove role addresses and fix typos

    Take out addresses such as postmaster@ or abuse@, and correct or remove misspelled domains.

  6. Re-engage, then sunset inactive contacts

    Send a short re-engagement sequence to people with no clicks or orders for months, and stop regular sends to those who do not respond.

  7. Repeat on a schedule

    Handle bounces and opt-outs continuously, review inactive contacts every month or two, and check any list before you import it.

Why email list cleaning matters#

A clean list gets more of your campaigns into the inbox and gives you numbers you can trust. Mailbox providers judge your sender reputation partly by how your list behaves: addresses that do not exist, people who complain and people who never read your email all count against you.

The large providers say so directly. Gmail advises senders to automatically unsubscribe recipients who have multiple bounced messages, and to consider unsubscribing recipients who do not open or read their messages S1. Yahoo asks senders to remove invalid recipients promptly and to monitor hard bounces, soft bounces and inactive recipients S2.

Cleaning is not about making the list smaller for its own sake. It removes the addresses that cannot or will not receive your email, so the people who do want it keep getting it. For the wider picture, see email deliverability basics.

Hard bounces and soft bounces#

A bounce is a message the receiving server would not accept. Mail servers report the reason with a status code, and the leading digit tells you how to treat it. RFC 3463 defines class 5 as a permanent failure that resending in the current form will not fix, and class 4 as a persistent transient failure where a later attempt may succeed S3.

How to handle each type of bounce
TypeTypical causeWhat to do
Hard bounce (5.x.x)The mailbox or domain does not exist S3Suppress immediately and do not try again
Soft bounce (4.x.x)A full mailbox or a temporary server problem S3Let your sending service retry; suppress if the address keeps failing across several campaigns
Block or policy rejectionThe receiving provider refused the message because of content or reputationInvestigate the cause before sending more; it is a sender problem, not a list problem

A hard bounce is the clearest signal on your list. Continuing to send to addresses that do not exist tells mailbox providers you are not maintaining your data.

Unsubscribes, complaints and the suppression list#

A suppression list holds every address that must not receive marketing email again: unsubscribes, hard bounces and spam complaints. Suppress rather than delete. If you delete an unsubscribed contact and later import an old spreadsheet, nothing stops that person from getting your next campaign.

  • Unsubscribes: in the US, CAN-SPAM requires you to honor an opt-out within 10 business days S4. Yahoo asks bulk senders to honor unsubscribes within 2 days S2.
  • Spam complaints: treat a complaint as an unsubscribe. Gmail recommends keeping the spam complaint rate below 0.10% and never reaching 0.30% S1.
  • Imports: when you move tools, export unsubscribed, bounced and complained contacts along with active ones, so they stay excluded in the new tool.

Role addresses, typos and spam traps#

Role addresses

Role addresses belong to a function rather than a person. RFC 2142 lists common mailbox names such as info, sales, support, abuse and postmaster S5. Several people may read them, nobody in particular asked for your newsletter, and a complaint from one reader affects everyone. Spamhaus says addresses such as postmaster@ and abuse@ should almost never be on a marketing list S6. Remove those outright. Addresses like info@ at a small business can be a real customer’s only address, so check the order history before removing them.

Typos

Misspelled domains, such as a missing letter in a common mailbox provider, never reach the customer. Some of these lookalike domains are run as spam traps S6. Fix obvious typos when you can confirm the correct address, for example from an order, and remove the rest.

Spam traps

A spam trap is an address used to identify senders with weak collection or hygiene practices. Spamhaus describes several kinds S6:

  • Pristine traps: addresses never given to a real person, which only appear on lists that were scraped, bought or filled by bots.
  • Dead address traps: once-valid addresses that a provider shut down. Spamhaus notes that mail to them is rejected with a hard bounce for a period, often 12 months or more, before they become traps S6.
  • Typo traps: addresses at domains that look like common ones.

The practical lesson is that a list which suppresses hard bounces and stops emailing long-inactive addresses rarely reaches a recycled trap. Spamhaus also points out that hunting for individual traps only treats the symptom S6. The fixes are consent at sign-up, confirmed or double opt-in where it suits your shop, and the cleaning steps in this guide. Never buy or rent a list.

Inactive subscribers and a sunset policy#

Inactive contacts are the hardest part of list cleaning, because they are valid addresses that simply stopped responding. A sunset policy decides when they leave your regular sends. Spamhaus describes it as a way to clear old, unengaged addresses from your database, and notes that mailbox providers use recycled traps to evaluate list hygiene S7.

Define inactivity by clicks and orders, not opens. Apple’s Mail Privacy Protection downloads remote content in the background by default, regardless of whether the person engages with the email S8, so an open does not prove anyone read it. For a small apparel shop like Ninefold, where customers often buy once a season, a reasonable starting point is six months without a click or an order.

  1. Build a segment of contacts with no clicks or orders in your chosen window.
  2. Send a short re-engagement email campaign: something new, a reason to return, and a plain question about whether they want to stay.
  3. Return anyone who clicks or orders to your regular campaigns.
  4. Suppress the rest from regular sends, and keep the record so they are not imported again by accident.

Yahoo suggests sending inactive subscribers a reconfirmation email periodically S2, and Gmail suggests periodically checking that recipients still want your email S1. The re-engagement sequence covers both.

Email validation services: when they help#

Validation services check addresses before you send: whether the format is valid, whether the domain accepts email, and in many cases whether the mailbox appears to exist. They are useful in specific situations:

  • Before your first send to an old list that has not been emailed in a long time.
  • When you import contacts collected offline, such as sign-up sheets from a pop-up market.
  • At the sign-up form, to catch typos while the customer can still correct them.

They do not replace consent or engagement data. A validation check can tell you an address exists; it cannot tell you the person agreed to hear from you or still reads your email. Some results will be inconclusive, and a list that needs heavy validation usually has a collection problem worth fixing at the source. If you use one, compare a few providers on price per check and how they report unknown results; no single service is right for every shop.

How often to clean your email list#

A cleaning schedule for a small online store
TaskWhen
Suppress hard bounces, unsubscribes and complaintsContinuously, after every campaign
Review soft bouncesAfter each campaign
Review inactive contacts and run re-engagementEvery one or two months
Check role addresses and typosWhen you import contacts, and once a quarter
Validate an old or offline listBefore you send to it
Full review before a busy seasonA few weeks before Black Friday or your biggest sale

Sending frequency affects the schedule too: the more often you email, the sooner problems show. See how often to send marketing emails.

What Tellnod handles for you#

Tellnod is an MCP connector for writing, previewing and sending marketing email inside Claude or ChatGPT. Several cleaning steps happen as part of every campaign:

  • Import: “Import my customers from this CSV. Only mark people as subscribed if the file says they opted in.” Consent status and unsubscribes are kept, and contacts without consent information are not marked as subscribed.
  • Exclusions: unsubscribed, bounced and complained contacts stay excluded. When you describe a segment, Tellnod counts it and removes unsubscribed and bounced contacts.
  • Confirmation: the approval card shows the recipient count and who is excluded and why. Nothing is scheduled until you press Confirm.
  • Safeguards: sending pauses automatically at a 0.1% complaint rate or a 2% bounce rate, and the results card reports bounces and unsubscribes for each campaign.

Deciding who counts as inactive is still your call. For customers, you can ask “Email customers who haven’t ordered in six months” and send them a re-engagement campaign from the same chat. Tellnod is free up to 500 contacts and 2,000 emails a month; see pricing, or connect Tellnod to try it.

FAQ#

What is email list cleaning?

Removing or suppressing addresses that hurt your sending: hard bounces, unsubscribes, spam complaints, role addresses, typos and contacts who have stopped engaging. The goal is to email only people who can and want to receive your messages.

How often should I clean my email list?

Suppress bounces, unsubscribes and complaints after every campaign. Review inactive contacts every month or two, and check any list before you import it or start sending to it.

Should I delete unsubscribed contacts?

No. Keep them on a suppression list instead. Deleting them removes the record that they opted out, so a later import could add them back to your campaigns.

Do email verification tools remove spam traps?

They can catch invalid and mistyped addresses, but they are not a dependable way to find spam traps. Spamhaus recommends fixing how addresses are collected and maintained rather than hunting for traps.

Sources#

  1. [S1] Gmail Help: Email sender guidelines, checked
  2. [S2] Yahoo Sender Hub: Sender best practices, checked
  3. [S3] RFC 3463: Enhanced mail system status codes, checked
  4. [S4] FTC: CAN-SPAM Act compliance guide for business, checked
  5. [S5] RFC 2142: Mailbox names for common services, roles and functions, checked
  6. [S6] Spamhaus: Spamtraps, fix the problem, not the symptom, checked
  7. [S7] Spamhaus: What is an email sunset policy and why do you need one?, checked
  8. [S8] Apple: Mail Privacy Protection and privacy, checked