Deliverability
Breaking down a DMARC record: What it is and how it looks like
DMARC is becoming increasingly important amidst changes from mailbox providers, but it can be a fairly technical concept. Letâs dive into an example of a DMARC record and break down what each part means and how it relates to the goals of DMARC authentication.
PUBLISHED ON
DMARC authentication is hard â we know it. For many email senders, the technical complexities of DMARC are just enough of a headache to put it off until it becomes an absolute must in the world of email.
Well, that time has come. Gmail and Yahoo have announced theyâll be strengthening their fight against unsolicited emails in 2024 with new requirements, including enhanced email authentication â and that includes DMARC.
DMARC records are a critical part of the DMARC authentication process and understanding how to create yours is key to ensure DMARC is set up correctly.
We discussed the basics of DMARC and how to implement it in our post âWhat is DMARC and how it worksâ. Now, weâll cover what DMARC records are, how to create yours and what each tag means, and how to get it added to your domainâs DNS.
Table of contents
The âvâ tag
The âpâ policies
The âruaâ tag
The ârufâ tag
The ârfâ tag
The âpctâ tag
The âspâ tag
The âadkimâ tag
The âaspfâ tag
The âriâ tag
What is a DMARC record?
DMARC records are an integral part of your DMARC compliance â your domainâs authentication handbook, if you will.
In short, a DMARC record is a DNS TXT record that gets added to a domain to specify what should happen to an email that fails SPF and DKIM authentication. DMARC records tell mailbox providers what to do with these unauthenticated messages: do nothing, quarantine them, or reject them.
DMARC records are effectively a short line of text with instructions that is stored in the Domain Name System (DNS). They look just like this:
One of the most important elements in a DMARC record is the policy (p), which can be found at the beginning, but thatâs not the only information youâll find if you look closely.
So, what do all the other tags mean? What valuable information do they provide? Letâs examine each tag in detail.
How to create a DMARC record: The basic tags
DMARC records can contain a range of different tags to let mailbox providers know what to do with incoming email that fails DMARC authentication. Some of these tags are required, some are optional but commonly used, and others are less frequent.
Hereâs a table with all the tags weâll go over in this post â some of the more basic and other less common options you might find useful for your business.
TAG | REQUÂIREÂD | WHATÂ IT DOESÂ |
---|---|---|
TAG | ||
âvâ | Yes | The âvÂâ tag idenÂtifies the DNS recoÂrd and specÂifies the DMARÂC versÂion. |
REQUÂIREÂD | ||
âpâ | Yes | The âpÂâ tag specÂifies a domaÂinâs DMARÂC poliÂcy: noneÂ, quarÂantine, or rejeÂct. |
WHATÂ IT DOESÂ | ||
âruaâ | No | The ârÂuaâ tag indiÂcates the emaiÂl addrÂess wherÂe DMARÂC agÂgregate repoÂrts for failÂed emaiÂl authÂentications will be sentÂ. |
ârufâ | No | The ârÂufâ tag indiÂcates the emaiÂl addrÂess wherÂe DMARÂC foÂrensic repoÂrts for failÂed emaiÂl authÂentications will be sentÂ. |
ârfâ | No | The ârÂfâ tag declÂares the foreÂnsic repoÂrting formÂat â currÂently, only âaÂfrfâ. |
âpctâ | No | The âpÂctâ tag indiÂcates the percÂentage of emaiÂls that will be quarÂantined or rejeÂcted if authÂentication failÂs. |
âspâ | No | The âsÂpâ tag specÂifies a partÂicular DMARÂC poliÂcy for emaiÂls comiÂng from subdÂomains. |
âadkimâ | No | The âaÂdkimâ tag defiÂnes what an emaiÂl must do to pass DKIM authÂentication. |
âaspfâ | No | The âaÂspfâ tag defiÂnes what an emaiÂl must do to pass SPF authÂentication. |
âriâ | No | The ârÂiâ tag indiÂcates how ofteÂn aggrÂegate repoÂrts are sent to the emaiÂl addrÂess specÂified in the ârÂuaâ tag. |
Every DMARC record contains at least two tags â the âvâ and the âpâ. But you also want to be sure and include the âruaâ, and some of these optional tags that can also add valuable information.
Letâs start off by looking at the basic tags in a DMARC record.
The âvâ tag
The âvâ value is the identifier. It represents the version of DMARC that your domain is using. At this point, âv=DMARC1â is the only version in use.
When the mailbox provider performs a DMARC scan, itâs looking for an identifier. If it doesnât find one, it doesnât perform a DMARC check. In other words, the âvâ tag makes it known that emails from your domain are eligible for DMARC authentication.
The âpâ policies
The âpâ tag tells the mailbox provider what to do with messages that fail DMARC. As mentioned earlier, there are three policy options: none, quarantine, and reject. The best policy for you depends on where you are in the process.
This is the most important part of the DMARC record. Letâs look at all three options.
Monitor policy: p=none
The DMARC policy ânoneâ tells the email receiver to do nothing with a message that fails authentication, and to send a report about it to an email address you specify in the DMARC record. This means the emailâs recipient will still see the failed email in their inbox. In other words, nothing happens.
Interestingly, the current plans put forth by Yahoo and Google require bulk email senders only to set p=none as their policy, even though itâs the least restrictive choice. But why go to all this trouble to set up DMARC only to tell it to do nothing with emails that fail to pass authentication?
Well, itâs simple: When youâre just getting started, you donât know exactly what to expect. And if you choose either of the other two policy options, you might get bombarded with thousands or even millions of emails notifying you of emails failing your DMARC checks.
You donât want that. You might also end up quarantining or rejecting legitimate emails from your brand. You definitely donât want that, either.
p=none is a good policy to start with so you can see where things stand initially. Itâs the monitoring step. You can get a sense of your current data and the reality it represents, and then begin adjusting your DMARC record over time.
Quarantine policy: p=quarantine
The next policy option is âquarantineâ. This DMARC policy instructs email receivers to filter emails that fail the DMARC checks into the recipientâs spam folder. Then, it sends the DMARC report to an email address you specify, just like with the âp=noneâ policy.
So, quarantining emails means that recipients can still see and open problematic emails, but theyâll be in their spam folder.
Reject policy: p=reject
The third policy option is ârejectâ. Like the others, it also sends a DMARC report. But additionally, this option completely rejects emails that fail DMARC checks and blocks them from ever reaching the recipientâs email inbox.Â
As you monitor and adjust your DMARC record, your goal is to reach a point where you can confidently reject all emails from spammers and spoofers attempting to profit off of your brand.
The âruaâ tag
The âruaâ tag specifies the email address you want to receive all aggregated DMARC reports that will get created whenever an email fails authentication. It looks like this:It looks like this:
You can add any email address you choose to the âruaâ tag, or even specify multiple ones.
However, youâll want to make sure you create a new email address that will only be used for this purpose. You might get a lot of DMARC reports â probably one per day â and you donât want to clog up your other email addresses with them.
The ârufâ tag
The ârufâ tag indicates the email address where the forensic reports of DMARC failures will be sent. These forensic reports contain additional details about each email that fails to pass authentication.
The tag looks something like this:
Youâll get emails with forensic reports in real time, meaning youâll get many more of these than the aggregate ones. So, again, make sure you identify a dedicated email address for these reports.
But unlike the âruaâ email address, which can be anything, the address you specify in your ârufâ tag must be from the domain that published the DMARC record.
The ârfâ tag
The ârfâ tag specifies the format for the reports youâll receive. Currently, âafrfâ is the only value in use, so there isnât necessarily a strong reason to do this, other than to further strengthen your DMARC record.
Oh, and in case you were wondering, âafrfâ stands for aggregate failure reporting format.
The âpctâ tag
The âpctâ tag allows you to control what percentage of emails that fail authentication get quarantined or rejected.
In other words, if you select âp=quarantineâ or âp=rejectâ, but do not select a âpctâ other than 100, 100% of failing emails â that is, all emails â will get quarantined or rejected.
If youâre just starting with your DMARC authentication, it might be wise to start off with a lower percentage, such as 10%, and make sure the emails failing your DMARC policy are correctly flagged.
For example, you might begin with âp=quarantineâ and âpct=10â. This would mean that 10% of emails that fail authentication will get quarantined into the spam folder, and the remaining 90% will pass through to the inbox.
Over time, the goal is to have your âpctâ value set to 100. So, if you decide to start it off lower, be sure to monitor your data and increase this percentage as you gain confidence the policy is working as it should.
Other DMARC record tags
Weâve covered the basic tags in the section above, but these are not the only pieces of information that can be added to your DMARC record.
There are several other tags that can be included to provide additional instructions for mailbox providers. Here are a few important ones:
The âspâ tag
By default, a DMARC policy is hierarchy based, meaning any policy applied at the top level will filter through to all subdomains.
The âspâ tag allows you to change the DMARC policy for your subdomains. It works in the same way as the policy (âpâ) tag from earlier, and has the same three options â none, quarantine, and reject â, but they can differ from what you specify for your âpâ values.
For example, suppose you never intend to send any emails from any subdomains and want to prevent spoofers from attempting to do so. You might use this combination of tags in your DMARC record: p=none; sp=reject.
In this example, the âpâ value applies to your main domain, and the âspâ value applies to all possible subdomains.
If you have a variety of email addresses and use various subdomains as part of your email communications, you may want to start off with sp=none to see some DMARC reports and study the data before taking action.
The âadkimâ tag
The âadkimâ tag gives you two options for defining what an email must do to pass your DKIM authentication, and it can be set to âsâ for strict or ârâ for relaxed. If you donât set this value, it defaults to relaxed.
Strict (âsâ) means an email passes the DKIM portion of DMARC authentication only if the entire âd=â field in the DKIM signature exactly matches the From address.
Relaxed (ârâ) means that email messages will pass if the DKIM âd=â field matches only the root domain of the From address.
The term âroot domainâ refers to the core section of your email address. Letâs assume that is âaddress.comâ. So, a sending domain such as âservice.address.comâ would fail a strict setting, but would pass a relaxed one, because they share the address.com domain.
At Sinch Mailjet, we recommend our customers to set their âadkimâ setting to a relaxed status and avoid using strict if possible.
The âaspfâ tag
Similar to the previous tag, the 'aspfâ tag specifies what an email must do to pass your SPF authentication. You can set it to the same two values: strict (âsâ) s and relaxed (ârâ).
Both of these values work the same as they do in the âadkimâ tag - âsâ looks at the entire address specified in the âs=â field of your SPF signature, while ârâ focuses only on the root domain.
As before, if you donât specify this value, it defaults to the relaxed setting.
At Sinch Mailjet, we recommend our customers to set their âaspfâ setting to a relaxed status and avoid using strict if possible.
The âriâ tag
How often do you want to receive DMARC aggregate reports? If you donât specify anything different, these reports come once a day, reporting all the emails that failed your authentication protocols.
The âriâ tag allows you to alter how often you get these reports. The minimum â and default â value is once a day, but you can set it to a different timeframe, so they come every other day, once a week, or at whatever cadence you prefer.
Itâs important to note that this value is measured in seconds, not days. A âriâ value of 86400 means youâll get reports once a day, so if you want to set a different timeframe, youâll need to get good at math. Did you know there are 86,400 seconds in a day? Well, now you do.
How to add your DMARC record
So, now you know the tags. Take some time to reflect on which ones you want to include and create a DMARC record that matches your email needs. Remember â you might not need them all, but youâll at least want to include the âvâ and âpâ tags. And like we said before, at Sinch Mailjet, we also recommend specifying the âruaâ tag.
Once youâve created your DMARC policy, you need to go to your hostâs DNS settings to publish it. Depending on your host, the steps might vary, but hereâs the basic procedure:
Under DNS hostname, enter your record name: _dmarc.yourdomain.com.
Under DNS record value, input your DMARC record: Make sure this is the full record with all the tags and values as discussed earlier.
Save the changes.
Adding and publishing your DMARC record is a relatively simple process, but itâs only one step in setting up your DMARC authentication, so make sure youâve completed the full configuration before you call it a day.
Want to learn more about DMARC? Check out what the experts had to say in Sinch Mailgunâs podcast, Emailâs Not Dead. Join Ash Morin from Dmarcian and Kate Nowrouzi, VP of Deliverability at Sinch Mailgun, as they discuss the ins and outs of DMARC with our hosts.
Setting up your DMARC authentication
Okay, had enough code talk for one day? We thought so.
DMARC records are an essential part of your DMARC authentication, but that doesnât mean you need to add all these tags or learn them off by heart. Keep this post handy whenever you're setting up or changing your DMARC configuration and apply the tags that best fit your use case.
With the recent changes announced by Gmail and Yahoo, setting up your DMARC authentication is no longer a choice, and bulk email senders will need to familiarize themselves with new authentication requirements â soon.
If youâre not sure what DMARC is, why you need it, or how to set it up, check out our post âWhat is DMARC and how does it workâ. Weâve got everything you need to get your email authentication in check before these new requirements come into effect in January 2024.
Still need some extra help? Sinch Mailjetâs support team is ready to help Mailjet customers navigate these changes. Whether you need a helping hand while going through configuration or just some reassurance that your DMARC policy has been correctly set up, weâve got you. Just reach out to our team for assistance!