Scan your site free
Email Security

What is DMARC and why does your business email need it?

April 28, 2026  ·  5 min read  ·  By masoSec

Here's something most business owners don't know: right now, anyone on the internet can send an email that appears to come from your domain. No hacking required. Just a mail server, your domain name in the "From" field, and the email lands in your client's inbox looking exactly like it came from you.

This is called email spoofing, and it's the foundation of a large percentage of business email compromise attacks. DMARC — along with SPF and DKIM — is how you close that gap. Here's how it works, in plain terms.

The problem: email was built without authentication

The core email protocols (SMTP, dating back to 1982) were designed for reliability, not security. There's no built-in verification that the person sending an email is who they claim to be. An attacker can set the "From" address to anything — including billing@yourcompany.com — and most mail servers will deliver it.

The result: your clients receive what looks like an invoice from you. Your suppliers receive what looks like a payment instruction change. These attacks don't require breaking into your systems. They just require exploiting trust in your domain name.

Business email compromise (BEC) attacks cost businesses more than $2.7 billion per year according to the FBI — more than ransomware. Most of them rely on domain spoofing.

The fix: SPF, DKIM, and DMARC working together

These three DNS records work as a chain. You need all three for proper protection.

SPF: who is allowed to send email for your domain?

SPF (Sender Policy Framework) is a DNS record that lists the mail servers authorised to send email on behalf of your domain. When an email arrives claiming to be from your domain, the receiving mail server checks your SPF record: "Is this mail server on the approved list?"

Example SPF record (TXT record on your domain) v=spf1 include:_spf.google.com include:sendgrid.net ~all

This record says: "Only Google and SendGrid are authorised to send email for this domain. Everything else should be treated with suspicion (~all) or rejected (-all)."

SPF has one significant limitation: it only checks the envelope sender (the technical routing address), not the "From" address the user sees. Attackers can pass SPF while still spoofing the visible From address. That's where DKIM and DMARC come in.

DKIM: a cryptographic signature on your emails

DKIM (DomainKeys Identified Mail) adds a digital signature to every email sent from your authorised mail servers. The signature is created using a private key held by your mail server, and verified using a public key published in your DNS records.

Example DKIM record (TXT record at selector._domainkey.yourdomain.com) v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4...

When a receiving mail server gets an email claiming to be from your domain, it checks the DKIM signature. If the signature doesn't match — because the email was forged, or because the content was tampered with in transit — the check fails.

Unlike SPF, DKIM signs the visible "From" header. This makes it much harder to spoof.

DMARC: the policy that ties it all together

DMARC (Domain-based Message Authentication, Reporting and Conformance) is a DNS record that tells receiving mail servers what to do when SPF or DKIM checks fail — and asks them to send you reports about it.

Example DMARC record (TXT record at _dmarc.yourdomain.com) v=DMARC1; p=quarantine; rua=mailto:dmarc@yourdomain.com; pct=100

The p= tag is your policy — what happens to emails that fail authentication:

p=none

Monitor only. Failing emails are delivered normally. Use this when you're first setting up DMARC to understand your email flows before enforcing anything.

p=quarantine

Failing emails go to the spam/junk folder. A good intermediate step — spoofed emails won't reach inboxes but you can review what's being caught.

p=reject

Failing emails are rejected outright and never delivered. The strongest protection — and what you should aim for once you've confirmed your legitimate email is passing.

The rua= tag tells mail servers where to send aggregate reports. These reports (sent daily by Gmail, Microsoft, Yahoo, and others) show you who is sending email claiming to be from your domain — including both your own legitimate senders and any spoofing attempts.

How to set it up

1
Add an SPF record to your DNS

Ask your email provider (Google Workspace, Microsoft 365, etc.) for their SPF include statement. Add a TXT record on your root domain with v=spf1 include:... -all.

2
Enable DKIM signing in your email provider

Most providers (Google Workspace, Microsoft 365) have a DKIM setup page. They'll give you a CNAME or TXT record to add to your DNS. Once added, all outgoing emails will be signed.

3
Add a DMARC record starting with p=none

Add a TXT record at _dmarc.yourdomain.com with v=DMARC1; p=none; rua=mailto:your@email.com. This lets you start receiving reports without blocking anything yet.

4
Review reports and move to p=quarantine, then p=reject

After a week or two of reports, you'll know what email services are sending on your behalf. Once you're confident everything legitimate is passing, move to quarantine, then reject.

How do you know if you're protected right now?

You can check your current DNS configuration manually, or use a tool that checks it automatically. The three things to verify:

Many businesses have SPF set up but no DMARC — which means the policy is effectively "do nothing with failures." Without DMARC, SPF and DKIM provide visibility but no enforcement.

Check your email security in 60 seconds

masoSec instantly checks your SPF, DKIM, and DMARC configuration and tells you exactly what's missing — for free.

Scan your domain free