✦ Free DMARC Checker — No Signup Required

DMARC Record Checker

Instantly look up any domain's DMARC record. Validate syntax, parse tags, detect issues, and get actionable recommendations — free, real-time, no account needed.

✦ Free Email Warmup Tool

Fix Deliverability Issues with Warmbase

DMARC is the foundation — but inbox placement depends on sender reputation too. Warmbase automatically warms up your inboxes, rescues emails from spam, and builds lasting trust with ISPs. Used by thousands of cold emailers and sales teams worldwide.

  • ✓ Automatic inbox warming — zero manual work
  • ✓ Real human-like email interactions
  • ✓ Works with any ESP or custom SMTP
  • ✓ Spam folder rescue & reputation repair
Start Free Email Warmup →
98% Inbox Rate
10k+ Active Users
Free To Get Started

What is a DMARC Checker?

A DMARC checker is a free online tool that performs a live DNS lookup for a domain's DMARC TXT record, then validates its syntax, parses every tag, and returns a structured analysis of the configuration. Rather than manually decoding a raw TXT string, the checker presents each tag with its value, highlights errors and warnings, and recommends improvements — all in seconds.

DMARC (Domain-based Message Authentication, Reporting & Conformance) records live at _dmarc.yourdomain.com and tell receiving mail servers how to handle messages that fail SPF or DKIM authentication checks. When a domain has no DMARC record, or a misconfigured one, attackers can spoof the domain in phishing campaigns — and the domain owner has no visibility into it.

If you don't have a DMARC record yet, use our free DMARC generator to create one in seconds. Once it's published, come back here to verify it's correct.

The Warmbase DMARC checker goes beyond a basic lookup by providing:

  • Full tag parsing (v, p, rua, ruf, adkim, aspf, pct, sp, fo)
  • Syntax error detection with clear explanations
  • Best-practice warnings for weak or incomplete configurations
  • A policy strength score (0–100) to prioritize improvements
  • SPF and DKIM detection alongside DMARC results
  • Actionable recommendations specific to your domain's configuration

How DMARC Works

When a mail server receives an inbound email, it runs two independent authentication checks:

  1. SPF check — the receiving server looks up the SPF TXT record for the sending domain and verifies the sending IP address is authorised. SPF only evaluates the envelope sender (also called the Return-Path or MailFrom address), not the visible From header.
  2. DKIM check — the receiving server retrieves the public DKIM key from DNS and uses it to verify the digital signature attached to the message headers. A valid DKIM signature proves the message was not altered after signing and was sent by an authorised party.

DMARC adds a third layer on top of these two checks: identifier alignment. For DMARC to pass, at least one of SPF or DKIM must both pass and the authenticated domain must align with the visible From: header domain (either as an exact match in strict mode, or as a parent/subdomain match in relaxed mode).

If alignment fails, the receiving server consults your DMARC record to decide what to do — monitor only (p=none), send to spam (p=quarantine), or block entirely (p=reject). The server also sends a daily XML aggregate report to your rua= address detailing every message sent using your domain.

This combination makes DMARC the only email authentication standard that closes the loop between authentication results and domain owner visibility.

How to Check a DMARC Record

Using the Warmbase DMARC checker above takes under 30 seconds:

  1. Enter the domain — type the root domain (e.g. example.com) in the input field. No need to add www, https, or the _dmarc prefix — the tool handles the lookup automatically.
  2. Click "Check DMARC Record" — the tool performs a live DNS TXT lookup against _dmarc.yourdomain.com.
  3. Review the results — the checker displays the raw DMARC record, all parsed tags, a policy strength score, any errors or warnings, and specific recommendations.
  4. Check the authentication summary — the SPF and DKIM detection panels show whether those records are also in place for the domain.

If you prefer to check manually via command line, you can use:

dig TXT _dmarc.example.com +short

Or on Windows:

nslookup -q=TXT _dmarc.example.com

Both commands return the raw DMARC record string. The Warmbase checker saves you the manual parsing step and provides immediate expert analysis. If the checker finds no record, use our free DMARC record generator to build a valid record instantly.

Why DMARC Matters for Email Security and Deliverability

Email is the most impersonated communication channel in the world. Without DMARC, any attacker can send emails that appear to come from your domain — and recipients have no reliable way to know the message is fraudulent. DMARC solves this by giving domain owners full control and visibility over their email channel.

The consequences of operating without DMARC include:

  • Domain spoofing — criminals can impersonate your domain in phishing attacks, business email compromise (BEC), or malware distribution campaigns targeting your customers and partners.
  • Brand damage — when fraudulent emails appear to come from your domain, every recipient who is deceived damages trust in your brand — even though you were not the sender.
  • Reduced deliverability — major providers including Google and Yahoo now require DMARC for bulk senders. Domains without DMARC are increasingly rate-limited, spam-filtered, or blocked.
  • No visibility — without aggregate reports (rua=), you have no way of knowing who is sending email on behalf of your domain, or whether your own legitimate mail is passing authentication.

DMARC at p=reject effectively eliminates exact-domain spoofing. Combined with regular monitoring of aggregate reports and a mature SPF and DKIM setup, it is one of the highest-ROI security configurations any organisation can deploy.

DMARC Policy Explained: none, quarantine, reject

The p= tag is the most important field in any DMARC record. It tells receiving mail servers how to handle messages that fail DMARC checks. There are three values:

👁

p=none

Monitor only. No messages are quarantined or rejected. The server passes all mail regardless of DMARC result. Aggregate reports are still sent to rua=.

Use for: initial deployment, gathering reports, confirming legitimate mail passes before enforcing.

🔒

p=quarantine

Send failing mail to spam. Messages that fail DMARC are delivered to the recipient's spam or junk folder instead of the inbox.

Use for: intermediate enforcement after 2–4 weeks of clean p=none reports.

🚫

p=reject

Block failing mail entirely. Messages that fail DMARC are rejected at the SMTP level — they never reach the recipient's mailbox at all.

Use for: full enforcement once you are confident all legitimate mail passes authentication.

The recommended migration path is: p=none → p=quarantine → p=reject. Spend at least 2–4 weeks at each stage reviewing aggregate reports before advancing. Jumping directly to p=reject without reviewing reports can accidentally block legitimate business email.

DMARC Syntax Explained: All Tags Reference

A DMARC record is a DNS TXT record published at _dmarc.yourdomain.com. It consists of semicolon-separated tag=value pairs. The record must start with v=DMARC1.

v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com; adkim=r; aspf=r; pct=100;
Tag
Required
Description
Allowed Values
v
Yes
Protocol version. Must be the first tag.
DMARC1
p
Yes
Policy applied to the domain.
none · quarantine · reject
rua
No
URI(s) for aggregate XML reports. Recommended.
mailto:addr (comma-separated)
ruf
No
URI(s) for forensic (failure) reports.
mailto:addr (comma-separated)
adkim
No
DKIM identifier alignment mode. Default: r.
r (relaxed) · s (strict)
aspf
No
SPF identifier alignment mode. Default: r.
r (relaxed) · s (strict)
pct
No
Percentage of messages subject to the policy. Default: 100.
1–100
sp
No
Policy for subdomains. Inherits p= if not set.
none · quarantine · reject
fo
No
Failure reporting options for forensic reports.
0 · 1 · d · s

Common DMARC Mistakes

These are the most frequent DMARC configuration errors found across millions of domains:

No DMARC record at all

The most common issue. Without a DMARC record, the domain is fully spoofable and ISPs have no policy to enforce. Use our free DMARC generator to create your record, then add it to DNS as a TXT record at _dmarc.yourdomain.com.

Staying on p=none indefinitely

Many domains deploy DMARC in monitoring mode and never advance to quarantine or reject. After 4–8 weeks of clean reports, escalate to p=quarantine and eventually p=reject for real protection.

Missing rua= tag

Without an aggregate reporting address, you receive no DMARC reports and have no visibility into authentication failures. Always include rua=mailto:dmarc@yourdomain.com.

Multiple DMARC records on one domain

Only one DMARC TXT record is permitted per domain at _dmarc.yourdomain.com. Multiple records cause DMARC processing to fail entirely. Delete any duplicate records immediately.

pct value less than 100

The pct= tag controls what percentage of messages the policy applies to. A common mistake is leaving pct=10 or pct=50 from a gradual rollout and never increasing it to 100.

Publishing DMARC without SPF or DKIM

DMARC requires at least one of SPF or DKIM to pass. Without them, virtually all legitimate mail fails DMARC — with p=reject, this blocks your own email. Always set up SPF and DKIM first. Use our free SPF checker and DKIM checker to verify both are correctly configured before enforcing DMARC.

DMARC on sending domain but not on parked domains

Every domain you own — including parked domains that never send email — should have a DMARC record with p=reject to prevent them from being used in spoofing attacks. Use v=DMARC1; p=reject; with no rua on non-sending domains.

How to Fix DMARC Errors

Once you identify a DMARC problem using this checker, here is how to fix each common error:

  1. No DMARC record found — Use our free DMARC generator to build a valid record, then log in to your DNS provider and add a TXT record with host _dmarc. Allow up to 48 hours for propagation, then re-check here.
  2. Invalid syntax — the most common syntax errors are a missing semicolon between tags, spaces around the = sign, or an invalid p= value. Edit the TXT record carefully. Each tag must be in the format tag=value; with semicolons between pairs.
  3. Missing p= tag — the p tag is required. Add p=none as a minimum. Without it, the DMARC record is invalid and will be ignored by receiving servers.
  4. Malformed rua= address — the rua tag must use the format mailto:email@domain.com. A common error is entering just an email address without the mailto: prefix.
  5. Duplicate records — in your DNS provider, search for all TXT records at _dmarc.yourdomain.com and delete all but one. Keep the most complete record.
  6. pct below 100 — in your DNS TXT record, change pct= to pct=100 to ensure 100% of messages are subject to the DMARC policy.

After making any DNS change, use this DMARC checker again to confirm the record is live and valid. DNS propagation normally takes 15 minutes to a few hours, occasionally up to 48 hours.

DMARC for Google Workspace

Google Workspace fully supports DMARC, SPF, and DKIM. As of February 2024, Google requires all bulk senders (5,000+ messages/day to Gmail) to have a valid DMARC record with at least p=none. Failing to comply results in messages being rate-limited, spam-filtered, or rejected by Gmail.

To configure DMARC correctly for Google Workspace:

  1. Verify DKIM is enabled — in Google Admin, go to Apps → Google Workspace → Gmail → Authenticate Email. If DKIM signing is not enabled, turn it on and add the DKIM TXT record to your DNS before publishing DMARC.
  2. Verify SPF is set — add v=spf1 include:_spf.google.com ~all as a TXT record on your root domain if it is not already present.
  3. Publish a DMARC record — add a TXT record at _dmarc.yourdomain.com with v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com
  4. Review aggregate reports — after 2–4 weeks, confirm all legitimate mail is passing, then advance to p=quarantine and eventually p=reject.

Google signs with your exact domain via DKIM, so strict alignment (adkim=s) is achievable for Workspace customers and is recommended for maximum protection.

DMARC for Cold Email Outreach

Cold email senders face unique DMARC considerations. Unlike transactional or marketing mail, cold outreach operates at high volume across many sending domains and inboxes. Here is how DMARC fits into a cold email infrastructure:

  • Use dedicated sending domains — never send cold email from your primary business domain. Use dedicated sending domains (e.g. try-yourcompany.com, yourbrand-mail.com). Each domain needs its own DMARC, SPF, and DKIM setup.
  • Start with p=none — cold email sending domains are new and actively warming up, so use p=none with rua= to monitor without risking email blocking during the warm-up phase.
  • Use relaxed alignment — many cold email platforms (Instantly, Smartlead, custom SMTP) sign with subdomains or third-party domains. Use adkim=r; aspf=r to avoid alignment failures.
  • Still publish DMARC on parked domains — any domain you own but do not actively send from should have v=DMARC1; p=reject; to prevent spoofing.
  • Warm up inboxes before sending — DMARC is necessary but not sufficient. Inbox placement depends on sender reputation built through consistent inbox-to-inbox engagement. Warmbase automates this process, building the reputation your sending domains need to land in the inbox.

The combination of correct DMARC, SPF, and DKIM authentication plus a warmed-up sender reputation is the baseline for effective cold email deliverability in 2025 and beyond.

DMARC Monitoring Best Practices

Publishing a DMARC record is just the beginning. Ongoing monitoring is essential to catch new sending sources, misconfigurations, and potential spoofing attempts. Follow these best practices:

  • Always include rua= — aggregate reports are the foundation of DMARC monitoring. Use a dedicated mailbox or a DMARC report parsing service to receive and analyse daily XML reports.
  • Parse reports, don't read raw XML — DMARC aggregate reports are machine-readable XML files. Use a DMARC report analyser (there are several free options) to parse them into readable summaries showing pass/fail rates by source.
  • Review reports before escalating policy — before moving from p=none to p=quarantine, confirm that all legitimate mail sources show a near-100% DMARC pass rate. Any legitimate source failing DMARC must be fixed first.
  • Monitor for new sending sources — aggregate reports reveal every source sending email with your domain. Unknown sources in your reports indicate either a new service someone authorised without updating SPF/DKIM, or an active spoofing attempt.
  • Re-check DMARC after any DNS or ESP changes — changing ESP, adding a new email service, or modifying SPF can break DMARC alignment. Run this checker after any email infrastructure change.
  • Check subdomains independently — if you send from subdomains (e.g. mail.example.com), check their DMARC configuration too. Each subdomain can have its own DMARC record, or inherit the parent's using the sp= tag.

SPF vs DKIM vs DMARC — What Each One Does

SPF, DKIM, and DMARC work together to form a complete email authentication stack. Understanding each one helps you diagnose problems and build a more secure configuration.

📋

SPF

Specifies which IP addresses and mail servers are authorised to send email for a domain. Published as a TXT record on the root domain.

Limitation: only covers the envelope sender (Return-Path), not the visible From header. Breaks with email forwarding.

Check your SPF record →

🔑

DKIM

Uses a public-private key pair to add a cryptographic signature to email headers. Recipients verify the signature using the public key in DNS.

Limitation: only proves the message was signed by an authorised sender — does not prevent display name spoofing or unauthorised use of the From domain.

Check your DKIM record →

🛡

DMARC

Ties SPF and DKIM together with alignment to the visible From address, adds enforcement policy (none/quarantine/reject), and provides aggregate reporting.

Key benefit: the only standard that directly protects the visible From header and gives domain owners actionable visibility.

Generate a DMARC record →

The recommended setup is: SPF + DKIM + DMARC. All three together provide the most complete protection. DMARC alone is not effective — it requires at least one of SPF or DKIM to be correctly configured and passing before it can function. Use our free SPF checker, DKIM checker, and DMARC generator to verify and build your complete authentication stack.

Troubleshooting DMARC Issues

DMARC record exists but my emails still go to spam

DMARC at p=none has no impact on delivery. A p=quarantine or p=reject policy only affects messages that fail DMARC. Spam placement of legitimate email is driven by sender reputation, content quality, and engagement — not DMARC policy. Use Warmbase to improve inbox placement through systematic inbox warming.

DMARC fails even though SPF and DKIM pass

DMARC requires that the authenticated domain (SPF Return-Path or DKIM d= domain) aligns with the visible From: header domain. If you are sending from a subdomain or third-party platform that signs with a different domain, the alignment check fails even if SPF and DKIM individually pass. Check your adkim= and aspf= alignment settings and consider using relaxed mode (r). Use our free SPF checker and DKIM checker to verify both records independently.

My forwarded email fails DMARC

Email forwarding breaks SPF (because the forwarding server's IP is not in the original SPF record) and may break DKIM (if the forwarder modifies the message body). This is a known limitation of DMARC. The fix is ARC (Authenticated Received Chain), which trusted forwarders can implement. For most use cases, use relaxed SPF alignment (aspf=r) and rely on DKIM alignment for forwarded messages.

I am not receiving DMARC aggregate reports

Check that your rua= mailto address is correctly formatted (e.g. rua=mailto:dmarc@example.com). If the rua address is on a different domain from the sending domain, that domain must publish a DNS TXT record permitting DMARC reports: example.com._report._dmarc.reportdomain.com TXT "v=DMARC1;". Reports are also sent once per day, so allow up to 24 hours after publishing your record before expecting the first report.

DMARC checker shows the record as invalid but it looks correct

Common causes: (1) the record was recently added and DNS has not fully propagated yet — wait up to 48 hours and re-check; (2) there is a hidden character or encoding issue in the TXT record from copy-pasting — delete and re-type the record manually; (3) there are multiple DMARC records on the domain — check for and remove duplicates.

Frequently Asked Questions

A DMARC checker is a tool that performs a live DNS lookup for a domain's DMARC TXT record, then validates the syntax, parses all tags, and returns a structured analysis of the configuration including errors, warnings, and recommendations.

Common reasons include a missing or misspelled v=DMARC1 tag (which must come first), a missing required p= policy tag, an invalid policy value (must be none, quarantine, or reject), malformed rua= mailto addresses, or the presence of multiple DMARC records on the domain.

p=none is the monitoring policy. Receiving servers take no action on messages that fail DMARC — they simply deliver them and send reports to your rua= address. It is the safest starting point as it has zero impact on email delivery while you gather authentication data.

DNS changes typically propagate within 15 minutes to a few hours. In rare cases it can take up to 48 hours depending on your DNS provider's TTL settings. If a check immediately after publishing shows no record, wait an hour and try again.

Yes. DMARC requires at least one of SPF or DKIM to pass and align with the visible From header domain. Without SPF or DKIM configured, nearly all messages will fail DMARC. Always set up SPF and DKIM before publishing a DMARC record with quarantine or reject enforcement. Use our free SPF checker and DKIM checker to verify both are in place.

A published DMARC record signals domain legitimacy to receiving mail servers. Domains without DMARC are increasingly treated as lower-trust by ISPs. For cold email, a properly configured DMARC record is a baseline requirement for inbox placement — alongside inbox warming, which Warmbase automates.

With p=quarantine, messages that fail DMARC are delivered to the recipient's spam or junk folder. With p=reject, they are blocked at the SMTP level and never delivered. Reject is the strongest protection but should only be used after confirming all legitimate mail passes authentication.

The rua= tag specifies an email address where receiving mail servers send daily DMARC aggregate XML reports. These reports show which IP addresses sent mail using your domain and whether each source passed or failed SPF and DKIM. Without rua, you have no visibility into authentication results.

No. Only one DMARC TXT record is permitted at _dmarc.yourdomain.com. If multiple records are found, DMARC processing fails for that domain entirely. Always delete any duplicate DMARC records.

DKIM records are published under a selector subdomain (e.g. google._domainkey.example.com). Without knowing the specific selector your email provider uses, automated detection is limited to common selectors. "Not Detected" does not necessarily mean DKIM is absent — it may simply use an uncommon selector name. Check your email provider's documentation for your DKIM selector, then use our dedicated DKIM checker to verify a specific selector.

The policy strength score (0–100) rates how well-configured your DMARC setup is. It factors in policy enforcement level (p=reject scores highest), presence of aggregate reporting (rua=), alignment settings, and enforcement percentage (pct=100). A higher score means stronger protection and better email authentication posture.

Yes. Parked domains and non-sending domains are commonly used for spoofing because they typically lack email authentication. Publish v=DMARC1; p=reject; on every domain you own that does not actively send email to prevent it from being used in phishing attacks.

Your DMARC Is Set — Now Fix Inbox Placement

DMARC authentication is the foundation, but inbox placement depends on sender reputation too. Warmbase automatically warms up your email inboxes, builds sending reputation with ISPs, and rescues emails from the spam folder — so your cold emails actually get read.

Start Free Warmup with Warmbase →
Increase email deliverability with Warmbase and never land in your prospect's spam box again. 
Warmbase - Built with love for email marketers 💛
crossmenu