“No DMARC record found” — what it actually means, and the record to publish
You ran a mail tester, a DNS lookup or a security scan against your own domain and it came back no DMARC record found. This page tells you what that sentence means in practice, what it does and does not put at risk, and the exact DNS record to publish — in the order that will not break your own email.
of the domains in our two 2026 samples publish no DMARC record at all — 41 of 83 independently sampled small-business domains, and 178 of 522 sites built by 141 professional web agencies. You are not in unusual company, and having an agency did not help.
Free, no signup: what a stranger can already read about your domain
Everything above is about the record you are missing. This says whether it is actually missing on your domain right now, and what else is in the same state, in about ten seconds.
Type a domain and get four checks in about ten seconds: whether anyone can send email in your name (SPF, DKIM and DMARC), how long your HTTPS certificate has left, when your domain registration expires, and whether the site answers over HTTPS rather than plain http. No email address, no account, nothing installed. It runs the same code our paid monthly report runs.
Open the free check on its own page → · We measured 604 domains: 72-83% had at least one finding
What the message means
DMARC is a single line of text published in your domain’s DNS, at the name
_dmarc.yourdomain.com. It is an instruction addressed to every mail server on
the internet, and it says: when a message arrives claiming to be from this domain and
it fails authentication, here is what I want you to do about it.
“No DMARC record found” means you have never published that instruction. It is not a warning that something has broken. It is a report that a control was never switched on.
yourcompany.com publishes no DMARC record at all. Receiving mail servers have been given no instruction about what to do with a message that claims to come from you, so a forged one is delivered like any other.
The sentence above is the wording our own free checker returns for this finding, reproduced here from the running code rather than retyped.
What actually happens without it
Anyone, anywhere, can compose an email, put yourcompany.com in the
From: line, and send it. That is not a flaw in your setup; it is how SMTP has
always worked. The address in the From: header is typed by the sender, the way
a return address is written on an envelope by hand.
SPF and DKIM let a receiving server detect that a message did not come from you. DMARC is the part that tells it what to do once it has detected that. Without DMARC, the receiver has the evidence and no instruction, and the overwhelming default is to deliver the message anyway. The practical result:
- A forged invoice with your company in the From line reaches your customer’s inbox looking exactly like every real one you have ever sent.
- A message to your own staff, apparently from a director, asking for a payment detail change, arrives with nothing to mark it as foreign.
- You find out when somebody phones to ask whether the email was really from you.
What it does not do. DMARC does not protect against lookalike
domains — yourc0mpany.com is a different domain and your record has no
authority over it. It does not encrypt anything, it does not stop spam arriving to
you, and it does not secure your website. It governs one thing: mail that claims to be
from you.
The record to publish
Create a TXT record in the DNS for your domain:
Name: _dmarc
Type: TXT
Value: v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain
Some control panels want the full name _dmarc.yourcompany.com instead of
just _dmarc. Both are the same record; use whichever form your provider asks
for. TTL can be left at the default.
Publish p=none first, and do not skip this. It is the
setting that asks receivers to do nothing except send you reports. It is deliberately
harmless, and its whole purpose is to show you which of your own systems — the invoicing
tool, the CRM, the newsletter platform, the booking form — are sending as you without
being authorised. Going straight to p=reject before you know that list is the
single most common way a business breaks its own mail, and it breaks it silently: the
messages are refused at the far end and nobody tells you.
Then move it, or it was never worth publishing
This is the part most instructions leave out, and it is the reason the second-largest
finding in our data exists at all. A DMARC record at p=none is a monitoring
stage, not a destination. Leave it there and you have a record that reports forgery after
the fact and asks nobody to stop it.
- Weeks 1–2 —
p=none. Collect the aggregate reports arriving at yourruaaddress. Every sender you recognise and intend to keep needs to be authorised in SPF, signed with DKIM, or both. - Then
p=quarantine. Failing mail goes to spam rather than the inbox. Recoverable if you have missed a sender. - Then
p=reject. Failing mail is refused outright. This is the setting that actually stops the forged invoice.
v=DMARC1; p=reject; rua=mailto:dmarc-reports@yourdomain; fo=1
The aggregate reports arrive as compressed XML and are close to unreadable by eye. Any of the free DMARC report readers will parse them; you do not need to buy a platform to get through the first two weeks.
How to check that it worked
DNS changes propagate in minutes to hours. From a terminal:
nslookup -type=TXT _dmarc.yourcompany.com
dig +short TXT _dmarc.yourcompany.com
You are looking for a single string beginning v=DMARC1. Two DMARC
records on the same name is a defect — receivers are entitled to ignore both,
which puts you back where you started while every checker reports that a record exists.
What we measured, and on whom
Most articles on this subject quote a global adoption figure from a vendor report. We wanted a number for the population a small business actually belongs to, so we measured it directly, from the outside, using only what these domains publish to the entire internet.
| Sample | Domains | No DMARC at all | DMARC present but p=none | Neither enforces |
|---|---|---|---|---|
| Independent small-business sweep | 83 | 41 (49.4%) | 29 (34.9%) | 80.7% |
| Sites built by 141 web agencies | 522 | 178 (34.1%) | 186 (35.6%) | 69.7% |
The second row is the one worth sitting with. These are businesses that paid a professional to build their website, and 69.7% of them still publish no enforcing DMARC policy. Of the 29 agencies in the sample with five or more sites in their portfolio, 0 had a clean sheet across all of them.
Neither sample is random. One is drawn from agency portfolios, which over-represents businesses that hired a professional; the other is a regional small-business list. Both are populations we can describe; neither licenses a claim about business in general.
These are point-in-time readings. Any individual domain may have been fixed the next day.
We sell a service that monitors exactly this. That is a real interest and you should weigh it. It is also why the whole fix is on this page and why we would rather you published the record yourself than bought anything.
Fix it yourself. Then find out when it breaks again.
Everything on this page is the whole fix, free, with nothing held back. What a DNS change cannot do is tell you when somebody edits it back, when a certificate runs out, or when a registration lapses — all three carry dates and none of them announce themselves. A3E’s perimeter monitor re-runs all four checks every month and emails you only when something moves: CA$99/month per site, cancel any time. A single report with no monitoring is CA$29.
Check a domain free See the monitorQuestions
Is no DMARC record a security vulnerability?
It is a missing control rather than a broken one. Without DMARC a receiving mail server can detect that a message claiming to be from your domain is not authenticated, but has been given no instruction to do anything about it, so the usual outcome is delivery.
What is the minimum DMARC record I can publish safely?
v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain published as a TXT record at _dmarc.yourdomain.com. It asks receivers to change nothing and to send you reports, so it cannot break existing mail.
Can I publish p=reject straight away?
You can, and it is the most common way a business breaks its own email. Anything sending on your behalf that is not authorised will be refused at the far end and the failures are silent. Start at p=none, read the reports until you recognise every legitimate sender, then move to quarantine and reject.
Does DMARC stop lookalike domains?
No. DMARC only governs mail claiming to come from the exact domain that publishes it. A visually similar domain registered by someone else is outside its authority.
How do I check whether my DMARC record is live?
Query the TXT record at _dmarc.yourdomain.com with nslookup or dig and look for a single string starting v=DMARC1. Two DMARC records on the same name is a defect: receivers may ignore both.
The other five in this set
DMARC record published but invalid: why receivers discard it
DMARC p=none: what it does, and how to move off it safely
No SPF record found: the record to publish, and why SPF alone is not enough
Gmail 550-5.7.26: what it means and the records that fix it
SPF permerror — too many DNS lookups, and how to get back under ten
The measurement behind every number on this page: 604 domains, method and limitations
Every figure on this page is generated from the stored raw measurement files behind our 604-domain study (522 agency-built sites measured 2026-08-20, 83 independent domains measured 2026-08-01), and the quoted finding wording is read out of the running checker at build time. An automated control re-asserts both against this live page on every operating cycle; if either changed and this page did not, it fails. Generated 2026-09-05T23:34:13Z.
← Back to all articles