Email Bounces: What to Do About Them?

Email Bounces: What to Do About Them?

The email bounces are one of the most annoying sights that occur when your email fails to be delivered to the recipient's inbox, thus, putting all your hard work into the bin. When an email bounces back, the mail server of the recipient sends an SMTP Reply or 'return to sender' email containing a detailed reason behind the bounce back. Some email bounces are easy to fix while others are a bit stubborn depending upon their type. In this article, we will present a detailed overview of an email bounce, its different types, and how to fix them. So let's begin:

Email Bounces: Hard Bounce and Soft Bounce

An email bounce happens when your email cannot be transmitted to the recipient. There are two types of email bounces that you might face: Hard bounces and soft bounces:

Hard Bounces

Hard bounces are the permanent email delivery issues that stop the delivery of an email due to some unchangeable reasons including the wrong email address, the receiving server no longer available, or an incorrect recipient's address or domain name.

Soft Bounce

Soft bounces are the temporary email delivery failures that arise due to some temporary issues such as the recipient's server being down or the email being too long to deliver. In such cases, the service providers resend the email after some time but if the bounce continues to happen then they eventually stop.

Sudden Increase in Email Bounces

It is very important to verify the recipient's email address before sending an email or you will receive a hard bounce. The rate of hard bounce increases due to typo mistakes especially while sending an email to a list of people without validating their email addresses. To prevent such scenarios, you should always check the validity of the existing list or apply a double opt-in feature to ensure that your email addresses are correct.

Understanding Soft Bounce Scenarios

Soft bounces are easier to handle than hard bounces. Some soft bounces take seconds to solve, while others can get complex. Some soft bounces occur due to extended email size, abandoned inbox of the recipient, or limitations placed on your account by your ESP. Yes your ESP can place limitations on your account if you are doing something that's affecting/hurting other senders on your shared IP.

How to Stop a Sudden Increase in Soft Bounce?

You can avoid an increase in soft bounces by:

  • Cleaning up your email contact list regularly
  • Send well-constructed emails, to-the-point, and relevant emails
  • Improve your reputation by sending emails with the recipient's consent

How to solve the Email Bounces?

Email bounces are not difficult to prevent if you regularly update the list of your recipient's email addresses and practice healthy email-delivery methods. Some senders, after receiving hard bounce messages, delete the email address of that recipient from their list. Instead of doing so, you should add those emails to the suppression list and try to inform that person in some other way about the delivery issue. This is important for your business when you don't want to lose any customers in case they change their email addresses and forget to update it on your system.

Verify email addresses before sending

You can verify email addresses to exclude non-existing or bouncing addresses. See our email verification guide for more information.

const verificationResult =
  await mailslurp.emailVerificationController.validateEmailAddressList({
    validateEmailAddressListOptions: {
      emailAddressList: [recipient],
    },
  });
// returns a map of `{ emailAddress: isValid }`
expect(
  verificationResult.resultMapEmailAddressIsValid[recipient]
).toBeTruthy();
// or lookup results in arrays
expect(verificationResult.invalidEmailAddresses.length).toEqual(0);
expect(verificationResult.validEmailAddresses.length).toEqual(1);

Verify recipients during sending

You can enable verification filters when sending to verify unknown email addresses when sending takes place. The method can either remove those that bounce from your recipient list or throw an error instead.

// the `validateEmailAddresses` option will verify then filter and remove bad recipients
// you can also configure the method to throw instead with `VALIDATE_ERROR_IF_INVALID`
await mailslurp.sendEmail(inboxId, {
  to: [recipient, bouncedRecipient],
  validateEmailAddresses:
    SendEmailOptionsValidateEmailAddressesEnum.VALIDATE_FILTER_REMOVE_INVALID,
});

Filter bounced recipients

When sending use the filterBouncedRecipients option to filter out any known bounced email addresses from the recipient list.

// use the `filterBouncedRecipients` to filter
// out previously bounced recipients and avoid errors
await mailslurp.sendEmail(inboxId, {
  to: [recipient, bouncedRecipient],
  filterBouncedRecipients: true,
});
// will only email `recipient` and will skip a known bounced recipient