Glai

Email list hygiene: how to keep a clean list

How to keep an email list clean: handle hard and soft bounces, complaints and unsubscribes, remove inactive contacts, and stay under provider limits.

Sam 5 min read

Updated

On this page

Keeping an email list clean means never emailing an address again after a hard bounce, a spam complaint or an unsubscribe, and removing people who have not engaged for a long time. Inbox providers judge you by those signals. Keep your bounce rate under 2% and your complaint rate under 0.1%, and your email keeps reaching the inbox.

The rule. A bounce, a complaint and an unsubscribe are all a clear "stop". Honour each one at once and for good. Everything else in list hygiene is fine-tuning.

Why a clean list matters

Gmail, Outlook and Yahoo do not read your email to decide where it goes. They look at how people react to mail from your domain: how much bounces, how many mark it as spam, how many open it. A list full of dead addresses and people who never wanted your email produces bad signals, and those signals follow your domain to every future send.

Your sending provider watches the same numbers. A sender who lets them drift can be paused, which stops your receipts and password resets along with your newsletter.

The numbers to stay under

SignalHealthyWhat happens above it
Bounce rateUnder 2%Amazon SES may put an account under review at around 5% and pause sending at around 10%
Complaint rateUnder 0.1%Amazon SES may review an account at 0.1% and pause sending at around 0.5%. Gmail asks bulk senders to stay under 0.1% and never reach 0.3%

These are the figures Amazon and Google publish for senders. Other providers use similar ones. Treat them as ceilings, not targets.

Bounces: hard and soft

A bounce is a message the receiving server refused. There are two kinds, and they are handled differently.

  • A hard bounce is permanent. The address does not exist, or the domain does not accept mail. Remove it immediately and never retry. Repeated hard bounces are the fastest way to look like someone using a bought list.
  • A soft bounce is temporary. A full mailbox, a server that is down, a message that is too large. Your provider retries for a while. If the same address soft-bounces on several sends in a row, treat it as dead.

Most hard bounces come from typos at sign-up and from old lists. Confirming new addresses by email (double opt-in) catches the typos, and it also proves the person wanted to hear from you.

Complaints: the signal that hurts most

A complaint is someone pressing "Report spam". Most inbox providers send these back to your sending provider through a feedback loop. Remove that address at once, and never add it back.

Complaints usually mean one of three things: the person did not expect your email, they could not find the unsubscribe link, or you send more often than they signed up for. Each has the same fix: say clearly at sign-up what you send and how often, and make leaving easy.

Unsubscribes: make them effortless

An unsubscribe is good news compared with a complaint. It costs your reputation nothing. So make it the easy option:

  • Put a visible unsubscribe link in every marketing email.
  • Make it one click. No login, no survey, no "are you sure?" page.
  • Honour it immediately, not "within 10 business days".
  • Send the List-Unsubscribe headers, so Gmail and Yahoo can show their own unsubscribe button next to your name. Both require one-click unsubscribe from bulk senders.

Remove people who stopped engaging

Someone who has not opened or clicked anything in six months to a year is probably not reading, and an abandoned mailbox can later become a bounce or a spam trap. Before removing them, send one or two re-engagement emails that ask a direct question: "Do you still want these?" Keep the people who click, and let the rest go.

A smaller list of people who want your email outperforms a large list that mostly ignores it. It costs less to send to, too.

A routine that keeps a list clean

  1. At sign-up: confirm the address, and say what you will send and how often.
  2. On every send: let your tool remove hard bounces, complaints and unsubscribes automatically.
  3. After every send: look at the bounce and complaint rates before you plan the next one.
  4. Every few months: run a re-engagement email, then remove the people who stay silent.
  5. Never: buy, rent or scrape a list. Those addresses did not ask for your email, and they include spam traps.

Glai does the per-send part for you. Bounces and complaints reported by your sending provider mark the contact as bounced or complained, unsubscribes take effect at once, and none of those contacts are included in a later campaign. Every campaign carries an unsubscribe link and the one-click headers.

A clean list only helps if your mail is authenticated, so set up SPF, DKIM and DMARC first. And once the right people are receiving your email, a clear subject line gets it read.

Questions people ask

What is a good email bounce rate?

Under 2% is healthy. Amazon SES may review an account at around 5% and pause sending at around 10%, so a rate above 2% is worth acting on straight away.

What is the difference between a hard bounce and a soft bounce?

A hard bounce is permanent: the address or domain does not exist, so remove it. A soft bounce is temporary, such as a full mailbox, and is retried. An address that soft-bounces repeatedly should also be removed.

What spam complaint rate is too high?

Keep it under 0.1%. Gmail tells bulk senders never to reach 0.3%, and Amazon SES may pause sending at around 0.5%.

How often should I clean my email list?

Bounces, complaints and unsubscribes should be removed automatically on every send. Review inactive contacts every three to six months.

Should I delete subscribers who never open?

Try to win them back first with a re-engagement email. Remove the ones who still do not respond: they lower your engagement and can turn into bounces.

Want this handled for you? Create a free Glai account and connect your own sending provider. Plans and limits are on the pricing page.

Share X LinkedIn Email

Keep reading

All posts
Privacy

Count visitors without a cookie banner

You can count visitors, sessions and sources without a consent banner. What the script sends, what is kept, and the two ways to tell visitors apart.

5 min read

See which of your traffic actually pays

Add one line of script, connect your payment provider, and every payment shows up next to the visit that brought it.

Start free