DMARC Policy Not Enabled: What It Means and How to Fix It

DMARC policy not enabled means your domain is unprotected. Learn what it means, why it hurts deliverability, and how to publish and enforce DMARC correctly.

Published on

•

Updated

•

DMARC Policy Not Enabled: What It Means and How to Fix It
Do not index
Do not index
A campaign can be perfectly written and still fail before a prospect sees it. Messages land in spam, transactional emails disappear during onboarding, replies slow down, and a domain's reputation starts to suffer. At the same time, attackers can use the same domain in convincing phishing messages when DMARC is missing or left in monitoring-only mode.
The warning “DMARC policy not enabled” doesn't always mean the DNS record is absent. It can mean there's no valid DMARC record, the record is malformed, or the record uses p=none, which reports authentication failures without blocking them. The right response isn't always “change the policy to reject immediately.” The practical decision is whether the domain has enough evidence to move safely from monitoring to enforcement.
Table of Contents

Why DMARC Policy Not Enabled Hurts Your Inbox Placement

A sales team may notice the problem through falling reply rates. A product team may see customers miss password resets or onboarding messages. A security team may discover that spoofed messages are reaching recipients while a DNS scanner reports DMARC policy not enabled.
That warning describes an enforcement gap. A domain with no DMARC record gives receiving systems no domain-level instruction for handling messages that fail authentication. A domain with p=none does publish a policy, but that policy only enables observation. Receiving systems can send aggregate reports, while failed messages can still be delivered.
notion image

The quick answer

DMARC policy not enabled usually means one of three things:
  • No record: The domain has no TXT record at _dmarc.yourdomain.com.
  • Invalid record: A record exists, but syntax or required tags are wrong.
  • Monitoring-only policy: The record uses p=none, so it collects reports without requesting quarantine or rejection.
DMARC has three practical policy states:
Policy
What receiving systems are asked to do
Protection level
p=none
Deliver normally and report authentication results
Monitoring only
p=quarantine
Treat failing messages as suspicious
Partial enforcement
p=reject
Reject messages that fail DMARC policy evaluation
Strongest enforcement
A p=none record isn't useless. It helps the domain owner discover legitimate sending services, failed authentication, and alignment problems. The mistake is treating that visibility as protection. The National Cyber Security Centre guidance on a DMARC policy of none makes the distinction clear: monitoring mode doesn't tell receiving systems to quarantine or reject failures.
For teams working on outbound campaigns, this is part of a broader authentication system. A practical overview of authentication protocols for cold email can help connect SPF, DKIM, and DMARC decisions to sending operations. The same principles apply to newsletters, support mail, and transactional infrastructure.
Quick action: run a live How to Improve email deliverability review and check the DMARC record, SPF, DKIM, DNS configuration, blacklist status, and mail infrastructure together. A single record lookup may explain the warning, but it won't always explain why legitimate mail is still reaching spam.

How Missing DMARC Affects Deliverability and Sender Reputation

DMARC matters because it connects authentication to the visible From domain. SPF can authenticate the return-path domain, and DKIM can authenticate the signing domain. DMARC then checks whether at least one of those authenticated identities aligns with the domain recipients see in the From header.
Under RFC 7489, DMARC passes when SPF or DKIM passes and aligns. If both fail alignment, the message fails DMARC. A p=none policy doesn't change the authentication result. It changes what happens after the failure, because receiving systems aren't instructed to quarantine or reject the message.
notion image

Publication isn't enforcement

Adoption data shows why a visible DMARC record can create false confidence. In a 2026 monitoring dataset covering 1,374,593 domains, 68.2% had no effective protection, including absent, invalid, or p=none records, while 11.7% had full protection at p=reject with complete enforcement. Another 20.1% had partial protection through quarantine or gradual rollout. (DMARC adoption monitoring data)
A separate enforcement-focused scan found that only 12.8% of 5,499,028 domains enforced DMARC as of February 2026. The scan identified 1,670,975 domains with a DMARC record, including 967,474 at p=none, 374,041 at p=quarantine, and 327,959 at p=reject.
Those figures point to an operational problem, not just a DNS problem. Many organizations publish a record but stop before the decision that protects the domain. Mailbox providers can still evaluate SPF, DKIM, engagement, complaints, infrastructure, and reputation, but a domain that leaves failed mail unblocked remains exposed to impersonation and inconsistent delivery.

Authentication requirements raise the baseline

Gmail and Yahoo introduced major sender requirements in February 2024. Senders need SPF and DKIM authentication, while bulk senders sending 5,000 or more messages per day to Gmail also need a published DMARC policy of at least p=none, alignment, one-click unsubscribe support, and spam complaint rates below 0.3%.
That makes p=none a meaningful starting point for compliance and visibility, but it shouldn't be confused with a completed protection program. Inbox placement depends on aligned legitimate mail, stable sending behavior, low complaints, sound DNS, and a reputation that the domain maintains over time.

Prerequisites to Check Before You Enable DMARC Enforcement

Changing p=none to p=reject is a policy decision with delivery consequences. If a legitimate marketing platform, CRM, helpdesk, or internal application sends mail without aligned SPF or DKIM, enforcement can cause those messages to be quarantined or rejected.
The safe sequence starts with sender discovery. The domain owner needs to know which systems send mail, which visible From domains they use, and which authentication method each stream relies on.

Build the sender inventory

Create a list that includes:
  • Transactional systems: Password resets, receipts, alerts, and onboarding messages.
  • Marketing systems: Newsletters, campaign messages, and automated journeys.
  • Sales infrastructure: Outbound sequences, reply routing, and shared mailboxes.
  • Operational services: Ticketing, billing, recruiting, surveys, and internal notifications.
  • Legacy sources: Old servers, scripts, applications, and forgotten subdomains.
For each source, record the sending domain, return-path domain, DKIM signing domain, selector, and From domain. A sender that appears legitimate to the business can still fail DMARC if its SPF or DKIM identity doesn't align with the visible From domain.

Check SPF without creating a new problem

SPF uses DNS lookups to evaluate authorized senders, and the protocol has a 10 DNS lookup limit. Nested include statements can push a record over that limit even when every individual provider is legitimate.
Check for:
  • One SPF record: Multiple SPF TXT records can produce a permanent error.
  • Complete coverage: Every real sending source needs authorization through SPF or aligned DKIM.
  • Lookup safety: Includes and redirects shouldn't exceed the DNS evaluation limit.
  • Correct domain: The SPF identity must be considered against the domain used in the message flow.
A free SPF Checker can expose duplicate records, invalid syntax, missing mechanisms, and lookup concerns. The result matters because an SPF record that looks populated can still fail during real message evaluation.

Confirm DKIM signing and alignment

DKIM depends on a selector. A sending service might use selectors such as selector1 or marketing, but the selector name alone doesn't prove that signing works. The receiving system needs to retrieve the public key, validate the signature, and compare the signing domain with the visible From domain for DMARC alignment.
Check each sender for:
  1. A valid DKIM signature on delivered mail.
  1. A published public key at the expected selector.
  1. A signing domain aligned with the From domain, or an aligned SPF path as the alternative.
  1. Consistent signing across transactional and marketing streams.
DMARC doesn't require both SPF and DKIM to align for a pass. One aligned method is enough under the RFC logic. Both should still be maintained because either path can break when a provider changes return-path handling, signing configuration, or domain setup.
A full mailX audit can present these checks in plain English, alongside DNS, MX, SMTP, IMAP, blacklist, and infrastructure findings. That context helps teams fix the sender that matters instead of changing policy blindly.

How to Create and Publish Your DMARC Record Correctly

A DMARC record is a DNS TXT record published at _dmarc.yourdomain.com. The host name and value must be entered in the correct fields at the DNS provider, and the record must contain a valid DMARC version and policy.
The following examples use dmarc-reports@yourdomain.com as the aggregate report destination. That mailbox should be monitored, because reports are the evidence needed for a controlled rollout.

Choose the starting policy

For monitoring:
v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com; pct=100; sp=none
For staged quarantine:
v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@yourdomain.com; pct=25; sp=none
For full rejection:
v=DMARC1; p=reject; rua=mailto:dmarc-reports@yourdomain.com; pct=100; sp=reject
These examples illustrate the main controls:
  • v=DMARC1: Identifies the record as DMARC.
  • p=: Sets the requested policy for the organizational domain.
  • rua=: Specifies where aggregate reports should be sent.
  • pct=: Applies the policy to a percentage of messages covered by the policy.
  • sp=: Sets a policy for subdomains when they don't publish their own policy.
A simple record with p=none is often the correct first publication because it reveals senders without interrupting legitimate mail. It doesn't resolve the enforcement warning, however. A scanner that expects quarantine or reject will continue to describe the domain as not enabled until the policy moves beyond monitoring.

Publish and verify the DNS record

The publishing workflow is straightforward:
  1. Open the authoritative DNS zone for the domain.
  1. Create one TXT record with the host _dmarc.
  1. Paste the selected DMARC value without adding a second DMARC record.
  1. Save the change.
  1. Verify the public result with a DMARC checker and a TXT lookup.
DNS changes can appear within minutes, but propagation may take minutes to 48 hours, depending on caching and resolver behavior. Verify from outside the DNS provider's dashboard, because a local interface can show the intended value before public resolvers return it.
A DMARC Record Generator can help produce a syntactically consistent starting value. A live DMARC Checker should then confirm the policy, tags, and record location. If the value is visible but the warning remains, check whether the scanner requires enforcement, whether more than one record exists, and whether the record contains malformed syntax.

Compare the policy options

Policy
Receiver Action
Best For
p=none
Deliver normally and report failures
Initial discovery and alignment monitoring
p=quarantine
Treat failures as suspicious
Controlled enforcement while testing
p=reject
Reject failures
Mature sending environments with verified alignment
Publishing the record solves only the DNS publication layer. Inbox placement still depends on whether real senders authenticate correctly, whether recipients engage with messages, and whether the domain maintains healthy sending behavior.

Safe Rollout Strategy From Monitoring to Full Enforcement

The most reliable migration treats DMARC as a staged operational change. The policy should move only when reports and message testing show that legitimate streams are authenticated and aligned.

Start with evidence, not a deadline

p=none provides aggregate reports without asking receivers to block or quarantine mail. Review those reports for recognizable sources, unknown senders, repeated alignment failures, and sudden changes in volume. The report data should be matched against the sender inventory rather than accepted at face value, because an authorized provider can still be misconfigured.
Use a decision record for each source:
  • Known and aligned: Keep monitoring and include it in the approved sender inventory.
  • Known but failing: Fix SPF, DKIM, or alignment before increasing enforcement.
  • Unknown and failing: Investigate possible shadow systems, forwarding, or abuse.
  • Unknown and passing: Treat it as a priority because an unauthorized source may have access to valid authentication.
The practical method for turning aggregate XML into useful decisions is covered in how to improve inbox placement from DMARC.
notion image

Increase enforcement in controlled stages

After legitimate failures are corrected, move to quarantine with a limited pct value. The required rollout can vary by domain complexity, so the important control is gradual exposure, observation, and rollback readiness. Quarantine lets teams see whether aligned mail remains healthy before moving to full rejection.
At the final stage, use p=reject with pct=100 when the evidence supports it. A rejection policy protects against more spoofed mail, but it also makes unresolved sender configuration failures visible through lost messages.
Deliverability monitoring shouldn't stop at DMARC. Review bounce rate, complaint rate, sending volume, blacklist status, SMTP behavior, and mailbox access. A practical benchmark is to keep bounce rate ideally below 2% and spam complaint rate usually below 0.1%, while recognizing that context, list quality, audience, and provider policies affect interpretation.

Account for portfolio and infrastructure risk

Organizations with multiple domains should classify them by function. A customer-facing domain, a marketing subdomain, and a dormant defensive domain may require different sender inventories and rollout schedules. The sp tag also deserves attention, because a parent-domain policy can affect subdomains that don't publish their own records.
Sending behavior can undermine a technically correct rollout. Sudden volume spikes can hurt sender reputation, and warmup can take 2 to 6 weeks depending on volume and reputation. Enforcement changes should be coordinated with campaign launches, migrations, and new sending sources rather than introduced during a traffic surge.
For automated teams, live checks are especially important. mailX exposes deliverability checks through a web interface, API, and MCP, allowing developers and AI agents to inspect authentication, DNS, blacklist status, and infrastructure before an agent sends or changes a campaign. An agent can draft excellent copy and still damage a domain if it doesn't verify the sending path first.

Common Mistakes That Keep DMARC Policy Not Enabled

The warning often persists because teams fix the visible DNS symptom while leaving the underlying process incomplete.
  • Multiple DMARC records: Receiving systems may not know which policy to use. Keep one authoritative DMARC TXT record at the correct host.
  • Malformed syntax: Missing v=DMARC1, missing p=, invalid separators, or an incorrect report address can make a record fail validation. Run a live syntax check after publishing.
  • SPF and DKIM without alignment: Authentication can pass while DMARC fails if the authenticated domain doesn't align with the visible From domain. Test real messages, not just DNS records.
  • Rejecting too early: A strict policy before sender inventory is complete can interrupt receipts, alerts, or campaign mail. Start with observation and fix legitimate failures first.
  • Ignoring subdomains: A parent policy may not reflect the intended treatment for every subdomain. Review sp and publish explicit policies where the architecture requires them.
  • Relying on spam scores alone: A score can't reveal duplicate SPF records, failed DKIM selectors, missing MX configuration, blacklist listings, or SMTP connectivity problems. Combine reputation signals with authentication and infrastructure checks.
  • Allowing AI agents to send blindly: Agents need live validation before they launch campaigns, add a sender, or change DNS. Deliverability checks belong inside the workflow, not after the damage appears.
The practical fix is a complete audit that explains what works, what fails, why the failure affects inbox placement, and which change should happen next.
Use mailX to run a free live audit of DMARC, SPF, DKIM, DNS, blacklist status, SMTP, IMAP, and related infrastructure, with plain-English explanations and exact remediation steps. Teams can check a domain through the web app or connect mailX to an AI agent through its API and MCP before changing policy or sending another campaign.

Most senders lose 30–70% of their emails to spam without knowing it.

Get a free expert audit of your domain, email authentication, and infrastructure. Identify hidden issues and fix them fast.

Book Your Free Deliverability Audit