Starter: monitor only
v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com
Collects reports without affecting delivery. Use it for the first few weeks.
Look up and test any domain’s DMARC record. See the policy, what every tag means, where reports go and exactly what to fix next.
DNS shows how a domain is configured. It can’t confirm that real messages pass DMARC alignment. To check a specific email, paste its headers into the Email Header Analyzer.
A DMARC lookup takes a few seconds. You don’t need access to the domain, because DMARC records are public.
Type a domain like yourcompany.com. You can also paste a website address or an email address; only the domain is used.
See whether a DMARC record exists, which policy it sets and what each tag means, in plain language.
Follow the next steps, or open the record in the DMARC generator to change it. Then run the check again.
Every check ends in one of these results. Here’s what each one means and what to do about it.
| Result | What it means | What to do |
|---|---|---|
| Enforced: reject | Receivers are asked to refuse mail that fails DMARC. This is full protection against exact-domain spoofing. | Keep reading your reports and set up SPF or DKIM for every new service before it sends. |
| Enforced: quarantine | Failing mail should go to spam. Most spoofing is stopped, but some of it still reaches users. | When reports show no legitimate mail failing, move to p=reject. |
| DMARC policy not enabled | The record uses p=none. It collects reports, but receivers deliver failing mail as normal. | Use the reports to fix your senders, then move to quarantine. |
| No DMARC record found | There’s no valid TXT record at _dmarc.yourdomain or a parent domain. Receivers have no instructions and you get no reports. | Publish a starter record with p=none and a report address. |
| Invalid record | Something exists, but it doesn’t start with v=DMARC1 or the policy is malformed, so receivers can’t apply it. | Rebuild it with the generator and replace the old record. |
| More than one record | Two or more DMARC records at the same name. Receivers ignore all of them. | Delete the extras so only one remains. |
| Couldn’t check | The DNS lookup failed or timed out. This says nothing about whether a record exists. | Try again in a minute. |
DMARC (Domain-based Message Authentication, Reporting and Conformance) tells receiving mail servers what to do when a message claims to come from your domain but can’t prove it.
SPF lists the servers allowed to send mail for a domain. It checks the hidden envelope sender, not the From address people see.
Server permissionDKIM adds a cryptographic signature that proves the message wasn’t changed and names the domain that signed it.
Message signatureDMARC passes only if SPF or DKIM passes and its domain matches the From address. Your record says what happens when it fails.
Alignment + policyyourcompany-billing.com. DMARC only protects the exact domain.A DMARC record is a single TXT record at _dmarc.yourdomain.com. These examples use example.com; replace it with your own domain and report address.
v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com
Collects reports without affecting delivery. Use it for the first few weeks.
v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@example.com
Failing mail goes to spam. Move here once your reports show your own mail passing.
v=DMARC1; p=reject; np=reject; rua=mailto:dmarc-reports@example.com
Failing mail is refused, including mail from subdomains that don’t exist.
v=DMARC1, exactly like that, as the first tag._dmarc. Most DNS panels add your domain automatically._dmarc.example.com.example.com because the panel already appends the domain.mailto:, which makes them invalid.DMARC was updated in 2025 by RFC 9989, which replaced RFC 7489. It added three tags and removed three. Many guides still list the old ones as current.
| Tag | What it does | Values and default |
|---|---|---|
v Required | Marks the record as DMARC. Must be first. | DMARC1 |
p Required | Policy for mail that fails DMARC. | none, quarantine, reject |
sp | Policy for subdomains. | Same values. Default: the value of p |
np New | Policy for subdomains that don’t exist in DNS. | Same values. Default: the value of sp |
rua | Where to send aggregate (daily summary) reports. | mailto: addresses, comma-separated |
ruf | Where to send failure reports about single messages. | mailto: addresses. Rarely sent |
adkim | How closely the DKIM domain must match the From domain. | r relaxed (default) or s strict |
| Tag | What it does | Values and default |
|---|---|---|
aspf | How closely the SPF domain must match the From domain. | r relaxed (default) or s strict |
fo | When to send failure reports. | 0 (default), 1, d, s |
t New | Testing mode. With t=y, receivers apply one level lower than p. | y or n (default) |
psd New | Marks a public suffix domain. Only for registries and similar operators. | y, n, u (default) |
pct Removed | Applied the policy to a percentage of mail. Newer receivers ignore it. | Use t=y instead |
ri Removed | Requested report interval. Reports arrive about daily anyway. | Remove it |
rf Removed | Failure report format. Only one format was ever used. | Remove it |
The policy is the most important tag. Move through these steps in order, using your reports to confirm that your own mail passes before each change.
Step 1 · monitor
p=noneFailing mail is delivered as normal. You get reports. Stay here 2–4 weeks while you find every sender.
Step 2 · spam folder
p=quarantineFailing mail goes to spam. A safe middle step; add t=y first if you want a softer start.
Step 3 · refuse
p=rejectFailing mail is refused. This is full protection against spoofing your exact domain.
Reports are how you find out who sends mail as your domain. Without them, you can’t safely enforce a policy.
example.com._report._dmarc.reports.example.net "v=DMARC1"
The largest mailbox providers now require DMARC from bulk senders, meaning anyone who sends about 5,000 or more messages a day to their users.
Since February 2024, bulk senders need SPF, DKIM and a DMARC record (at least p=none), with the From domain aligned to SPF or DKIM. Google began rejecting more non-compliant mail in November 2025.
Same rules as Gmail since 2024: SPF, DKIM, DMARC with at least p=none, alignment, and one-click unsubscribe for marketing mail.
Since May 2025, high-volume senders to Outlook.com, Hotmail and Live addresses need SPF, DKIM and DMARC of at least p=none. Non-compliant mail can be sent to junk or rejected.
It looks up the TXT record at _dmarc.yourdomain in public DNS, checks that it’s valid and explains what it tells receiving servers to do: the policy, which subdomains it covers, how strictly domains must match and where reports go.
Yes. There’s no account and no email signup, and you can check as many domains as you like. Only the domain name is sent to public DNS resolvers, and nothing is stored.
Either the domain has never published a DMARC record, the record was added at the wrong host (for example _dmarc.example.com.example.com), or it doesn’t start with v=DMARC1 exactly. New records can also take from a few minutes to a few hours to appear.
It means the record uses p=none. DMARC is set up and can send you reports, but receivers don’t act on mail that fails, so spoofed messages are still delivered. It’s the right first step, not the end state.
Start with p=none and a report address. When reports show that all your legitimate mail passes SPF or DKIM with alignment, move to p=quarantine and then p=reject. Take as long as your reports need; rushing to reject can block your own mail.
Check that the record has a rua tag with a mailto: address, that the mailbox accepts large attachments, and, if the address is on another domain, that the domain has published the authorization record. Reports also only arrive once you’ve actually sent mail to providers that report.
No. Subdomains without their own record use the parent domain’s record, with the sp policy if it’s set. Give a subdomain its own record only if it needs different settings.
RFC 9989, the updated DMARC standard, removed pct along with ri and rf. Newer receivers ignore pct and apply the policy to all failing mail. For a gradual rollout, use t=y (testing mode) instead.
SPF lists the servers allowed to send for your domain. DKIM signs each message so it can be verified. DMARC ties them to the From address people see, tells receivers what to do when both fail, and sends you reports.
Free, with no signup. They all run in your browser.
When you connect your domain, Atomic Mail shows you the MX, SPF, DKIM and DMARC records to add. Mail between your team is end-to-end encrypted, with no ads and no tracking.
Business
Free tools
Features
Compare
Learn
© 2026 Atomic Mail. All rights reserved.
AtomicMail Systems OÜ, Harju maakond, Tallinn, Kesklinna linnaosa, Harju tn 3 // Vana-Posti tn 2, 10146