22 Aug 2019 • BLOG - News
What Is the Return-Path and Why You Need to Customize It?
22 Aug 2019
Have you ever heard of a return-path? If you haven’t, maybe you are missing one thing that you can do to help your deliverability. The return-path is the one that will help you manage your bounces and clean your list. Let’s check it out in details.
What is a return-path
Let’s start with the purely technical explanation that is given in the RFCs standard documentation what a return-path is and then break it down and translate all this in more understandable language.
The return-path header represents the SMTP MAIL FROM address, where bounces would be sent. From section 4.4. “Trace Information” of RFC 5321:
“When the delivery SMTP server makes the “final delivery” of a message, it inserts a return-path line at the beginning of the mail data. This use of a return-path is required; mail systems MUST support it. The return-path line preserves the information in the from the MAIL command. Here, final delivery means the message has left the SMTP environment. Normally, this would mean it had been delivered to the destination user or an associated mail drop, but in some cases, it may be further processed and transmitted by another mail system.”
So this means that once the email is sent, the return-path is added to preserve the value of the SMTP MAIL FROM command. Thus it is the mailbox provider (for example Mailjet, Google, Hotmail, Yahoo) that adds the return-path header.
When you look at the full header of your message (we know that you don’t usually do that, but you can try now just to see what we are talking about), you will see the return-path header somewhere at the top – in most of the cases is just above the Received header, which shows the public IP where the mail was sent from (in our case this would some of Mailjet’s IPs). It is good to know that the return-path header must be only one. In case there are more this would mean that something is wrong with the SMTP configuration and you need to dig deeper to check it.
Till now everything sounds so strange, right? Maybe knowing the main purpose of the return-path will enlighten you a bit.
Return-path is used to process bounces. As an email service provider, it is good to have a generic address that is handling those bounces. And this should be an email that you will have access to – therefore an email with your domain. See where we are going now? We need to add a return-path header in all emails that is pointing to an address in the Mailjet SMTP environment to track bounces, but this address will be with the Mailjet domain. And everybody that is receiving your emails can see the return-path you are using and see that you are Mailjet’s client.
For some people, this is not an issue but still, if you want we are offering the possibility to personalize your Return-Path with a CNAME record. We will leave the details of why it is better to customize your return-path for now and just explain what return-path is more human words.
The return-path is an address. It can be also called reverse path, envelope from, envelope sender, MAIL FROM, 5321-FROM, return address, From_, and Errors-to. This address is receiving the information for all bounces. As much as we hate them, bounces still happen and we need to be aware. This can help you a lot with your deliverability. If the “return-path” header isn’t present, and a bounce happens, the mail servers will be confused and won’t know where to send the bounce notification. This means you won’t know about the bounce, won’t be able to remove that address from your list, and will continue sending to it, which can negatively impact your Sender Score.
Now you know how important the return-path is, but let’s see why is better to customize it.
Why you need to customize it
The reason for customizing your return-path has to do with email authentication processes – or how the recipient’s server determines which emails to let through and which ones to refuse. DMARC is an email validation system created to detect and prevent spoofing (which is when the bad guys pretending to be the good guys so their spam emails get through). One of the many things the DMARC system does is to check for alignment between your sender name and your return-path name. More information for DMARC you can find in our article.
As phishing attacks increase daily, ISPs work to protect their own reputations, even the trusted ESPs are being subjected to thorough checks. There are a lot of things that can be causing issues with deliverability, but one of the things that is easy to fix is – cleaning up your email header and customizing your return-path.
Every server has a different way of interpreting the mail headers to establish authenticity, but the more consistent the signals contained in your messages are, the better. It makes sense that the FROM address and the return-path address should with the same domain, right? Many servers will reject mail claiming to be from a certain address if the message isn’t sent by a server that usually handles that address. With Mailjet you can custom return-path so you can be sure that no one else is affecting your reputation.
At Mailjet you can customize your return-path using a CNAME record. To understand how this works, we need to see first what CNAME is.
What is CNAME
CNAME stands for Canonical Name. CNAME records can be used to alias one name to another. Any system hosting a site must have an IP address in order to be connected to the World Wide Web. The DNS resolves the name of your site to its IP address, but sometimes is more than one name that resolves to the same IP address, and this is where the CNAME is useful.
For example, if you own mydomain.com and www.mydomain.com pointing to the same site or application and they are hosted by the same server, to avoid maintaining two different records, it’s useful to create:
- An A record for mydomain.com pointing to the server IP address;
- A CNAME record for www.mydomain.com pointing to mydomain.com;
Then you will have mydomain.com pointing to the server IP address, and www.mydomain.com points to the same server IP address because it points to mydomain.com. So if there are any changes to be done with the IP address, you only need to update it in one place because it will replicate on the other.
The CNAME has some restrictions, however.
- A CNAME record must always point to another domain name and never directly to an IP address.
- A CNAME record cannot co-exist with another record for the same name. It’s not possible to have both a CNAME and TXT record for www.mydomain.com.
- A CNAME can point to another CNAME, although this configuration is generally not recommended for performance reasons. When applicable, the CNAME should point as closely as possible to the target name in order to avoid unnecessary performance overheads.
- A CNAME cannot be placed at the root domain level, because the root domain is the DNS Start of Authority (SOA) which must point to an IP address.
- MX and NS records must never point to a CNAME alias.
One amazing news it that with next-generation DNS technology, the same CNAME record will be able to redirect to one of several names based on dynamic parameters. And this will make the management of CNAMEs even easier.
The A and CNAME records are sometimes confused, but they are two different but common ways to map a hostname to one or more IP addresses. There are important differences between these two records that we need to keep in mind. The A record points a name to a specific IP (you want mydomain.com to point to the server 184.108.40.206) and the CNAME record points a name to another name instead of to an IP (www.mydomain.com pointing to mydomain.com).
Think for the CNAME like an alias for the target name that inherits its entire resolution chain.
A few common uses of CNAME records are:
- Providing a separate hostname for specific network services. Common examples are email or FTP that are pointing that hostname to the root domain;
- Many people are using subdomains to manage their different services or customer that are linked to the main domain (e.g. company.hostname.com), and use CNAME to point to the customer’s domain (www.company.com);
- Registering the same domain in several countries and pointing the country versions to the main “.com” domain;
- Pointing from several websites owned by the same organization to the main website;
Now when we know more for the CNAME record, let’s see how you need to set it up so you can customize your return-path with Mailjet. We are using the first of the common examples – you are using CNAME to point your own domain to our domain in the return-path address.
How you can customize a return-path with Mailjet
The default return-path that Mailjet uses is “bnc3.mailjet.com”. As we for sure need to receive the bounce events you can not change it completely, because we won’t be able to receive the events.
Setting up the CNAME
To customize your return-path you will have to do three simple steps – create a subdomain, create the CNAME record in your DNS zone and contact us to activate the redirection.
Create a subdomain to your main domain using the prefix “bnc3”. Let’s take the example with a main domain mydomain.com, you will have to create a subdomain bnc3.mydomain.com.
You need to access your DNS zone and create a CNAME that looks in the following way:
bnc3.mydomain.com. IN CNAME bnc3.mailjet.com.
This will mean that your domain bnc3.mydomain.com will now point to bnc3.mailjet.com. So, everyone will see bnc3.mydomain.com in your email header, but behind the scenes this will point to our bnc3.mailjet.com and we are going to still receive the bounce events and update your statistics.
The final step would be to open a ticket with our support team and give us those details so we can activate your customized return-path:
- The API key one which you want to activate the return-path
- The CNAME you set up – screenshot or the text version of the record will do great
Something that you need to keep in mind is that you can have only one return-path active per API key.
Once we have this information, we will do the necessary and our agents will get back to you with the good news that everything is ready. And there you go – you have your customized return-path.
Deliverability is so important for every sender and in this article, we learned one more thing that can help us with it and make it easier. The return-path is important for the ISPs so they know that there is where to send the bounces and somewhere to take care of them and why is better to customize it. You know now more about the CNAME record and how is works. And most importantly – you know how to customize your return-path with Mailjet.