You send a campaign. The report comes back. Next to “Delivered” there is a smaller number that says “Bounced”.

Most people glance at it and move on. That is a mistake, because that small number is not only about the emails that failed. Mailbox providers read it as a signal about you. Every bounce you ignore makes the next campaign a little harder to deliver, including the emails going to people who really want them.

This guide explains what a bounce is, the real difference between hard and soft bounces, how to read the message behind each one, and what to do so fewer happen next time.

A hard bounce usually means a permanent delivery failure, such as a mailbox that does not exist. A soft bounce usually means a temporary problem, such as a full mailbox or a busy server.

To reduce your bounce rate: collect addresses properly, verify old or imported lists before sending, stop sending to hard-bounced addresses, watch repeated soft bounces, and read the actual error message before deciding what to do. Many bounces start with the list. Some start with your sending setup.

What is an email bounce?

A bounce is an email that could not be delivered, where the receiving server sent back an error. The server is telling you, in its own words, why it did not accept the message.

A bounce is easy to confuse with two other things. They are not the same.

What happenedWas the email accepted?Where you see it
BounceNo. The server refused it.Bounce report, with an error reason
Landed in spamYes. Then it was filtered.Usually nowhere. It counts as “delivered”.
Delivered, not openedYes.Delivered, with no open or click

Your email platform shows bounces in its campaign report. In Brevo, for example, you can open a contact’s history and see the exact error the server returned. Mailchimp keeps these bounce details in the email report for 30 days after sending.

Hard bounce vs. soft bounce

Most platforms split bounces into two groups. Knowing which one you are looking at decides what you do next.

Hard bounceSoft bounce
Type of errorUsually permanentUsually temporary
In simple words“This will not work.”“Not right now.”
Common causeMailbox or domain does not existMailbox full, server busy, message too large
Next actionStop sending to it and record itLet your platform retry, and watch for repeats

A soft bounce is a delay, not a verdict. But it is not a promise either. If the problem does not go away, a later attempt can still fail.

This surprises many senders. Several platforms say it directly in their own documentation. Mailchimp lists a receiving server that has permanently blocked delivery as a hard bounce. Postmark notes that an email can hard bounce and still be a valid address, because of the way the server rejected it.

Platforms also sort the same failure differently. Amazon SES, for example, treats rejected content as a temporary bounce, while Mailchimp treats some permanent blocks as hard. So always read the reason, not only the label.

Why emails bounce

Bounces come from two very different places. Fixing them means knowing which one you have.

Problems with the list or recipientProblems with your sending
The address was typed wrongYour domain failed authentication (SPF, DKIM, DMARC)
The mailbox was closed or deletedYou sent too much, too fast, and hit a rate limit
The domain no longer accepts emailYour sending IP or domain was blocked
The mailbox is fullThe message was too large or its content was rejected
The recipient’s server was down for a while

The right column matters more than people expect. Google says messages that are not authenticated may be marked as spam or rejected outright. No amount of list cleaning fixes that. Only your domain setup does.

If bounces are spread across many different domains with “user unknown” style errors, the problem is probably your list.

If bounces are concentrated at one provider, such as Gmail, with blocking or authentication errors, the problem is probably your sending setup.

How to calculate your bounce rate

The basic formula is simple:

Bounce rate = (Bounced emails รท Sent emails) ร— 100

Example: you send 1,000 emails and 20 bounce. 20 รท 1,000 ร— 100 = 2%.

Here is a real one. This is a campaign we sent to a list that was cleaned before sending: 10,000 emails, 4 hard bounces and 12 soft bounces.

CountRate
Hard bounces40.04%
Soft bounces120.41%
Total bounces180.45%

Platforms do not all measure the same way. Some divide by emails sent, some by recipients. Amazon SES counts only hard bounces, and measures over a “representative volume” of your recent sending rather than a fixed period. So the same campaign can show slightly different rates in different places. Compare like with like.

What is a good bounce rate?

There is no single safe number that applies everywhere. Mailchimp says mailbox providers change their limits and do not publish them. What you can do is look at what individual sending platforms say, and read each number for what it actually is.

PlatformRecommended targetWhen they take action
Amazon SESBelow 5%Account reviewed at 5%. Sending may be paused at 10%.
SendGridHard bounces under 5% of attempted emailsNot published
PostmarkMust stay below 10%

When Amazon says it reviews accounts at 5%, that is the point where you are already in trouble. It is not permission to run at 4.9%.

A sensible goal is simply this: keep your rate as low as you can, and investigate any increase early rather than waiting for a limit. Our own campaign above ran at 0.09% hard bounces, and that headroom is what protects the next campaign.

How to read a bounce message

Every bounce comes with a small report. Look at four things:

  • The recipient. Which address failed.
  • The time. When it happened. A burst at one time can point to a rate limit.
  • The destination domain. Gmail, Outlook, a company domain.
  • The error code and reason text. This is the part that tells you what to do.

Here are three real examples from Google’s own error list:

CodeWhat it meansWhat to do
550 5.1.1The account does not exist.Stop sending to it.
452 4.2.2The inbox is out of storage. Temporary.Let it retry. Watch for repeats.
421 4.7.26Rate limited because the email is not authenticated.Fix SPF and DKIM. This is not a list problem.

The first digit tells you a lot

Codes starting with 4 are temporary. The server is saying “try again later”, and your platform usually will. Codes starting with 5 are permanent. Sending the same message again, in the same way, is not expected to work. This is defined in the email standards RFC 5321 and RFC 3463.

You do not need a long list. Read the first digit to know if it is temporary or permanent, then read the plain text after the code. Most servers explain the problem in a sentence.

What to do after a hard bounce

  1. Stop sending to that address. Most platforms do this automatically. Amazon SES advises removing hard-bounced addresses immediately.
  2. Add it to your suppression list. This is a list of addresses you must never send to again. It stops the address coming back through an old file or a new import.
  3. Read the reason first. If it says the mailbox does not exist, you are done. If it mentions a block, a policy or authentication, the problem is on your side. Check your sending setup instead of blaming the address.

If you simply delete a hard-bounced contact, nothing stops the same address returning next month through an old spreadsheet. Keep a record that it failed. The record is what protects you.

What to do after a soft bounce

Usually, nothing straight away. Your platform retries temporary failures on its own. How long, and how many times, depends on the platform.

PlatformHow it handles soft bounces
BrevoRetries for 36 hours. Five soft bounces in a row across campaigns blocks the address.
MailchimpAfter 7 soft bounces for an inactive contact, or up to 15 for an active one, treats it as a hard bounce.
SendGridRetries delayed messages for up to 72 hours.

What you should do:

  • Do not delete after a single soft bounce. A full mailbox on Tuesday can be fine on Friday.
  • Watch for repeats. The same address soft-bouncing campaign after campaign is telling you something.
  • Fix content problems yourself. If the reason is “message too large” or “content rejected”, waiting will not help. Change the message.

How to prevent avoidable bounces before sending

Most bounces are cheaper to prevent than to clean up afterwards.

  • Collect addresses properly. Google advises confirming each address before subscribing someone. Double opt-in does exactly that.
  • Never buy or scrape lists. Google says plainly not to purchase email addresses from other companies.
  • Verify old or imported lists before sending. A list that sat unused for months is where most dead addresses hide.
  • Keep suppression lists in sync. If you use more than one tool, an address removed in one must be removed everywhere.
  • Authenticate your domain. Set up SPF and DKIM, and DMARC if you send in volume. Our guide to improving email deliverability covers this step by step.
  • Increase volume gradually.ย Google advises sending at a steady rate and avoiding sudden spikes.
  • Check the message size. Gmail’s attachment limit for personal accounts is 25 MB. Large images and attachments are a common, avoidable cause.

For the full preparation process, see how to clean your email list before sending a campaign.

Where email verification helps, and where it does not

Email list validation checks each address before you send. It can catch the problems that are visible in advance:

  • Addresses with broken format
  • Domains that do not exist or cannot receive email
  • Mailboxes the server says do not exist
  • Duplicates and disposable addresses

That removes a large share of avoidable hard bounces before they ever reach your report.

What verification cannot do

Be clear about the limits. No verification tool can:

  • Stop a mailbox filling up next week
  • Prevent rate limiting on the day you send
  • Fix a domain that is not authenticated
  • Remove a block against your sending IP
  • Guarantee your email lands in the inbox

Some results are also uncertain by nature. A catch-all domain accepts every address, so Mailgun’s documentation notes that validity simply cannot be determined. That is not the same as invalid. Our guide to email verification results explains how to handle each one.

How MailVexa fits

MetaLogic MailVexa is email verification software that runs on your own Windows or Mac computer. You import a CSV, TXT or Excel file, remove duplicates and fix formatting, verify the addresses, review the results, and export only the groups you choose.

Results come back as Valid, Risky, Invalid or Unknown, each with a reason. Invalid addresses stay out of your export. Risky and Unknown go into a separate file for review, instead of being deleted. Your list stays on your own computer the whole time.

Check your list before the next send. Run your file through MailVexa and see which addresses would have bounced. The trial covers up to 2,000 verifications over 14 days, with no card required.

Download the free trial โ†’

What to do if your bounce rate suddenly jumps

A sudden spike needs a calm order of steps. Resist the urge to simply send again.

  1. Pause the affected sending. Amazon advises that you stop sending until you fix the problem, if you can.
  2. Check where the bounces come from. All domains, or one provider like Gmail? SendGrid recommends identifying which provider is causing most of the failures.
  3. Group the errors by reason. “User unknown”, “mailbox full” and “blocked” are three different problems.
  4. Look at what changed recently. A new list, a new domain, a DNS change, a new platform, or a jump in volume.
  5. Fix the cause. Clean the list, repair authentication, or reduce your sending speed.
  6. Restart slowly. Send a smaller volume first and watch the bounce report before going back to normal.

Sending the same campaign again without changing anything only produces the same bounces, and adds more damage to your reputation. Amazon notes that simply stopping a bad campaign is not enough. You have to find and fix what caused it.

Common questions

Can a valid email address still bounce?

Yes. The mailbox can be full, the server can be down, or your email can be blocked because of your sending setup. Mailchimp notes that valid addresses do occasionally hard bounce.

Should I remove every soft-bounced address?

No. A single soft bounce is often temporary. Remove an address after repeated soft bounces, following your platform’s own rule.

How many times should an email be retried?

There is no universal number. Your sending platform decides, based on its own policy. Brevo retries for 36 hours and SendGrid for up to 72 hours, for example.

Can email verification prevent all bounces?

No. It removes problems that can be detected before sending. It cannot prevent a mailbox filling up, a rate limit, or a block caused by your sending setup.

Why did an email bounce after the address passed verification?

Something changed between the check and the send, the domain was catch-all so the result was never certain, or the rejection came from your side, such as authentication or reputation. Read the bounce reason to know which.

Does a low bounce rate mean my emails reach the inbox?

No. A bounce means the email was refused. A delivered email can still land in the spam folder. Bounce rate and inbox placement are two different measurements.

Sources

Provider rules change. Check the original pages before making decisions based on them.

MailVexa verifies your list on your own computer and shows the reason behind every result, so you can remove what is clearly broken and review what is uncertain.

Windows and macOS. The trial covers up to 2,000 verifications over 14 days, with no credit card required.


We build MetaLogic MailVexa, so weigh our description of it accordingly. Everything else in this guide applies whichever tools you use.

Share this article