This article explains what a bounce is and how it occurs. It also explains why this is important for your deliverability.
What is a bounce?
If you have an automation that sends 100 messages to various contacts, each of these messages takes a unique path to the inbox. Say for example, you have an automation that sends a message to Joe at Gmail (email@example.com). This is the technical conversation that happens when we attempt to deliver that message:
ActiveCampaign: Hello, Gmail
ActiveCampaign: We have a message for Joe
Gmail: Okay, great, give us that message and we'll pass it along to Joe!
That whole conversation only take a few milliseconds, but it's very important to understand because sometimes things don't go so smoothly. This is what the conversation would look like if I try to send a message to an address at Gmail that doesn't exist, say firstname.lastname@example.org:
ActiveCampaign: Hello, Gmail
ActiveCampaign: We have a message for Bill
Gmail: Bill doesn't have a Gmail account. That account doesn't exist. Goodbye.
In this case, Gmail told us that the particular email address in question doesn't exist. Maybe Bill closed his account. Maybe it never existed in the first place. This is a bounce.
Why are bounces important?
Bounces are very important for deliverability because a sender that routinely has a high bounce rate is most likely using old lists. If you regularly send messages to invalid accounts that bounce, inbox providers like Gmail will consider your email “risky” and begin to send it to the spam folder.
Don't worry, we have you covered here. Whenever a contact hard bounces, they are marked as “bounced” and are automatically stopped from getting more messages. This article explains more about contact statuses in relation to bounces.
Why are my messages bouncing?
These are the most common reasons a message might bounce:
The address doesn't exist (Hard Bounce)
These types of bounces have a bounce code that begins with 5xx. It's normal to have a handful of these on every send because inbox providers shut down accounts that haven't been used for years.
Temporary bounce (Soft Bounce)
These types of bounces have a bounce code that begins with 4xx or 5xx. There are lots of temporary errors that can occur, like a full mailbox or a temporary server outage at the inbox provider. If we get 3 of these temporary bounces in a row for any particular contact we will mark the contact as “bounced” as if they had hard bounced.
If you receive a lot of spam complaints, certain inbox providers may block your email based on your poor sending reputation.
If your message happens to contain a phrase, blocklisted link, bad image, or link to a site with malware, inbox providers will bounce this message.
Restrictive DMARC record for your sending domain
This can cause legitimate messages to bounce. You can use a tool like this to check your DMARC record. If you have a p=reject record this will cause all messages to bounce if you haven't setup DKIM.
"From email" address
If you are sending with a "From email" address you are not allowed to use (like @yahoo.com or @chasebank.com) this will cause message to bounce.
"Auto-bounce" bad email addresses
We “auto-bounce” some contacts that are obviously bad addresses, like email@example.com. These contacts show up in the message report as “bounced” with a 9.1.5 bounce code because we identified it as a bad address.
I see a spike in my bounce rate. What happened?
Usually, this means that you somehow introduced a list of contacts that hasn't been used recently and contained a lot of old, inactive email addresses that no longer exist. You should take a hard look at the lists you used to make sure you didn't accidentally add in some old contacts who shouldn't be there.
It can also happen if your message happened to contain a phrase or link that triggered certain major spam filters. This is a temporary issue that you can resolve by avoiding that phrase or link in future campaigns.
Lastly, there is a chance that the spike is due to a block because of high spam complaints. These usually resolve themselves if you don't have a prior history of high complaint rates.
How can I reduce my high bounce rate?
As long as you are only using healthy data collection practices (secure opt-in forms), then you will see a low bounce rate. Some of the addresses on your list may shut down and bounce due to natural list churn. Some people may sign up with a misspelled address (like firstname.lastname@example.org). It's normal to see 0.5-1% of your messages bounce due to these normal factors and that's just fine. However, if you are seeing a high bounce rate, it's likely because there is an issue with how contacts are being added to your list or perhaps they're not being sent communications often enough. Listed below are methods you can start using today in order to cut down on your bounce rate.
Use a double opt-in
Using a double opt-in with your forms serves two main purposes. First, you are eliminating any invalid email addresses that may have been entered by contacts due to a typo or spam submissions by bots. Second, you’re ensuring that contacts do in fact own their email account and want to hear from you.
If you’re using an ActiveCampaign form to add contacts to a list, the double opt-in option feature will default to “On.” To ensure that this is on, navigate to the forms page in your account and click “Edit” for your form. From there, click the “Options” tab. Under “Form Action,” click the gear icon located next to the “Subscribes to List” action. You should get a pop-up screen where you can check to make sure that the double opt-in is on.
Add a captcha to form
Adding captcha to your forms will prevent bots from creating spam contacts in your account, whether or not you have enabled the double opt-in on your form.
To add captcha to your form, navigate to the forms page in your account and click “Edit” for your form. On the “Fields” tab, click “Standard” and drag and drop captcha to your form.
Send communications in set, regular intervals
If you have not sent a communication to your list in a while, it’s possible that some of the email addresses no longer exist. This will result in bounces and your sender (ActiveCampaign) can be marked as a spammer. In addition, if you do not email your list regularly (or if it’s been a long period of time), you risk your subscribers “forgetting” about you and marking your email as spam.
Set up engagement management automations
We have a free 2-part automation recipe that you can use for engagement management. This 2-part automation will tag your contacts as “Engaged,” “Disengaged,” or “Inactive” based on how much time has gone by since they have interacted with your communications. These tags can be used in analytics, segmentation, list hygiene, and triggering other automations.
To use these automations in your account, go to Automations and click “New Automation.” From the modal pop up, select “Manage Track Contacts” from the left menu. Click on the automation you wish to use and click “Create.” The automation wizard will then walk you through any modifications you need to make.
Use a real-time verification services as an extra safeguard
Services such as Briteverify can be used to preemptively identify a bounce by pinging an email address at the time of sign up to see if it's deliverable. This is recommended for senders who have thousands of sign ups a day.
I have a valid contact that bounced. Why did that happen?
Usually when this happens it is because the recipient's inbox provider decided to block the message you sent for one reason or another. This is a temporary error that should resolve itself, assuming the contact is valid.
However, in some rare cases the inbox provider will make a mistake and give us a misleading bounce code saying the address is invalid, when it was really bounced for another reason. If this happens, we'll take the inbox provider at their word and treat the account as invalid (hard bounce), even if this isn't true. If you know a specific bounced address is valid, reach out to support and we can take care of it for you.