DMARC Reporting Explained: How to Read Reports, Fix Failures, and Reach Enforcement Safely Across Every Sending Domain

Key takeaways
- RUA aggregate reports summarize domain-level authentication activity in XML, while RUF forensic reports describe individual failed messages and carry higher privacy exposure.
- A message passes DMARC when SPF or DKIM authenticates and the authenticated domain aligns with the visible From domain, so a single failed mechanism does not create a DMARC failure.
- Authentication failure and receiver disposition are separate results, so a report can record a DMARC failure with a disposition of none under p=none.
- Reports reveal legitimate senders, forwarding paths, misconfigured vendors and probable spoofing, which makes them the evidence base for a staged move to p=quarantine and p=reject.
- DMARC reporting governs the domain layer alone, so security awareness training remains necessary for phishing, BEC and impersonation delivered through authenticated or compromised accounts.
DMARC reporting gives domain owners receiver feedback on Domain-based Message Authentication, Reporting and Conformance. That feedback shows which messages pass SPF, DKIM and alignment before spoofing or delivery failures damage a domain.
This guide explains how to configure RUA aggregate reports and RUF forensic reports, validate DNS authorization, read XML and troubleshoot missing or inconsistent data. Those findings identify legitimate senders, forwarding paths, third-party services, probable spoofing and business email compromise (BEC).
Aggregate reporting is organized around report metadata, the published policy and records that show source IP, message count, authentication results and receiver disposition. RUF can expose message headers, subjects, URLs and message IDs, so receiver support and privacy controls shape its use.
With that evidence, administrators can correct SPF, DKIM and alignment failures, measure compliance across domains and subdomains, and stage movement from p=none to quarantine or reject without disrupting trusted mail. Authentication telemetry remains evidence for investigation rather than proof that a message is malicious.
DMARC protects the sending-domain layer. It pairs with security awareness training that equips employees to recognize social engineering, spear phishing, vishing, smishing and deepfake-enabled impersonation that authentication cannot stop.
Adaptive Security helps close that human-layer gap. Explore Adaptive Security's security awareness training to pair domain authentication with employee readiness.

What Is DMARC Reporting and Why Does It Matter?
DMARC reporting is the feedback mechanism attached to Domain-based Message Authentication, Reporting and Conformance. It shows how receiving mail systems evaluate messages claiming to come from an organization's domain, including the sending sources, SPF and DKIM results, domain alignment, published DMARC policy and receiver disposition.
This evidence helps organizations verify that legitimate mail authenticates correctly before moving from monitoring with p=none to enforcement with p=quarantine or p=reject.
What Is DMARC Reporting?
DMARC reporting gives domain owners visibility into email authentication across the internet. A receiving mail system evaluates a message that uses the organization's domain in the visible "From" address. It compares the authentication results with the published DMARC record, then sends feedback to the reporting addresses specified in that record.
Those reports help security and messaging teams identify legitimate services, misconfigured senders, unauthorized infrastructure and spoofing attempts.
Three standards work together:
- Sender Policy Framework (SPF): A DNS-based record that lists the mail servers authorized to send email for a domain.
- DomainKeys Identified Mail (DKIM): A cryptographic signature added to an email so the receiving system can verify that the signing domain authorized it and that the message was not altered in transit.
- Domain-based Message Authentication, Reporting and Conformance (DMARC): A policy and reporting standard that checks whether SPF or DKIM authenticates the message and aligns with the domain shown to the recipient.
DMARC does not require both SPF and DKIM to pass. A message passes DMARC when at least one mechanism passes and aligns with the visible From domain. Alignment describes the relationship between the authenticated domain and the domain a recipient sees.
A message can pass SPF for a vendor's domain and still fail DMARC if that authenticated domain does not align with the organization's From domain.
The IETF's DMARC specification defines aggregate reporting as feedback about authentication results, published policy and receiver disposition. Reports generally identify the source IP address, sending organization or service, domain used for SPF, domain used for DKIM, authentication outcomes, the domain owner's policy and the receiver's disposition.
DMARC reports do not provide a complete copy of every message. They provide structured evidence that helps teams map the organization's sending ecosystem, validate approved services and investigate anomalies without exposing message content in an aggregate report.
Why Do DMARC Reports Matter for Security and Deliverability?
DMARC reporting protects domain trust and supports message delivery because cyberattackers and legitimate business services often use the same visible identity. Spoofing occurs when an unauthorized sender presents an organization's domain or a trusted employee's address to manipulate recipients.
In a business email compromise (BEC) attack, criminals impersonate an executive, supplier or finance contact to obtain money, credentials or sensitive information. Authentication visibility gives defenders evidence about which sources are sending with that identity.
The first security benefit is sender discovery. Organizations often lose track of services that send email on their behalf, including customer relationship management platforms, payroll systems, ticketing tools, marketing services, recruiting systems and regional business units.
DMARC reports surface those sources so administrators can verify ownership, correct authentication and remove abandoned senders. That inventory reduces the number of legitimate services cyberattackers can imitate and prevents forgotten infrastructure from undermining enforcement.
The second benefit is deliverability control. A strict DMARC policy can protect recipients from unauthorized messages, although an incorrectly configured policy can also affect legitimate mail.
A vendor might send with SPF that does not align. It might also sign messages with a DKIM domain that differs from the visible From domain. Receiving systems can treat both patterns as DMARC failures even when the vendor is authorized.
Reviewing reports before enforcement allows messaging teams to fix those dependencies before they disrupt invoices, password resets or customer communications.
DMARC reporting also supports investigation after a suspected campaign. A sudden increase in messages from an unfamiliar hosting provider, new sending country or unexpected cloud service gives the security team a concrete signal to investigate.
The team can compare that activity with known business services, update authentication controls and reinforce employee defenses against related impersonation attempts through phishing simulations that include business email compromise.
Reporting and blocking serve different purposes. Reporting is the measurement layer that shows whether an organization's authentication design reflects how email actually moves through the business. Security leaders should treat report review as an ongoing inventory process that continues well beyond the initial DNS change.
What Is the Difference Between Authentication Failure and Policy Disposition?
Authentication failure describes the result of a technical check. Policy disposition describes what the receiving mail system did with the message after considering that result and the sender domain's DMARC policy. These outcomes are related, although they are never interchangeable.
A message can fail SPF while passing DKIM, or pass SPF while failing DKIM. It can pass both mechanisms and still fail DMARC because neither authenticated domain aligns with the visible From domain. It can also fail DMARC and reach the inbox when the domain publishes p=none, because that policy requests monitoring rather than a specific enforcement action.
The main DMARC policies are:
- p=none: Ask receivers to monitor and report authentication failures without requiring quarantine or rejection.
- p=quarantine: Ask receivers to treat failing messages as suspicious, often by placing them in spam or another review location.
- p=reject: Ask receivers to refuse messages that fail DMARC, subject to the receiver's implementation and local processing rules.
A report can therefore record a DMARC failure with a disposition of "none." That outcome does not mean the message authenticated successfully. It means the receiver declined to quarantine or reject it under the policy in force.
Conversely, a message can pass authentication and still encounter delivery problems caused by content filtering, reputation systems, rate limits or recipient-side rules.
This distinction matters when moving from p=none to enforcement. Teams should identify every legitimate sending source, confirm SPF authorization, validate DKIM signatures, verify alignment and monitor recurring reports for gaps.
They can apply enforcement gradually by using a limited percentage of messages or a controlled subdomain while watching for legitimate mail that fails alignment.
DMARC reporting cannot determine whether an employee will trust a convincing impersonation message after it reaches the inbox. It does show whether the organization's domain is authenticating correctly and whether receivers are acting on failures. That visibility becomes more useful when teams understand how RUA aggregate reports and RUF failure reports deliver different forms of evidence.
What Are RUA and RUF DMARC Reports? DMARC Reporting Explained
DMARC reporting explained starts with two distinct feedback channels: RUA aggregate reports and RUF forensic reports. RUA provides periodic, domain-level summaries of email authentication activity, while RUF provides message-level failure details when a receiving provider supports and permits forensic reporting.
RUA is broader, more predictable and generally safer for routine monitoring because it summarizes traffic in XML rather than sharing message-specific data. RUF is narrower and more investigative because it can expose information about an individual message that failed authentication.
Both report types improve visibility into domain abuse and configuration errors. Neither one replaces phishing awareness training or other controls that address how people respond to deceptive messages.
How Do RUA Aggregate Reports Work?
rua is the DMARC tag that tells receiving mail systems where to send aggregate feedback. A domain owner publishes it as a mailto: address in the DMARC record, such as rua=mailto:dmarc-reports@example.com. The receiver sends periodic XML reports describing authenticated and unauthenticated messages that claimed to come from the domain.
Aggregate reports usually group results by source IP address, sending organization, authentication outcome and applied DMARC policy. They do not normally provide the full contents of each message. That structure allows security teams to answer operational questions without examining every email:
- Which services are sending mail for the domain?
- Which sources pass SPF or DKIM?
- Which legitimate vendors fail alignment?
- Is an unauthorized IP sending messages that impersonate the domain?
The ri tag controls the requested reporting interval for aggregate reports, expressed in seconds. For example, ri=86400 requests reports approximately every 24 hours. The value expresses a preference, and delivery on that schedule is never guaranteed.
Receiving providers can use different schedules, combine reporting windows or omit reports according to their systems and policies. A daily RUA report creates a useful monitoring rhythm, although it never functions as a real-time alert.
RUA reports are the practical foundation for DMARC deployment because they provide coverage across the domain's sending ecosystem. Security teams can begin with p=none, review legitimate and unauthorized sources, correct SPF and DKIM alignment, and move toward enforcement with evidence rather than guesswork.
This staged process reduces the risk of disrupting invoices, password resets, marketing messages and other legitimate mail.
The DMARC specification defines rua as the destination for aggregate reports and ri as the requested interval between reports. Because aggregate files can contain records from multiple receivers, organizations should route them to a dedicated parser or reporting platform instead of relying on a shared employee inbox.
RUA answers a domain-wide question about email traffic. It supports trend analysis, sender inventory, policy tuning and spoofing detection. It is less useful when an analyst needs to reconstruct one suspicious message or determine exactly what a recipient saw.
What Are RUF Forensic Reports?
ruf is the DMARC tag that requests failure or forensic reports. Unlike rua, which summarizes message populations, ruf can describe individual messages that failed a specified authentication condition.
Depending on the receiving provider's implementation, a report can include selected headers, authentication results, sender and recipient domains, and other message details. Receivers often redact or limit this information because it can expose personal data or confidential content.
The fo tag controls which authentication failures trigger RUF reporting. The default fo=0 requests a report only when both SPF and DKIM fail to produce an aligned DMARC result. fo=1 requests a report when either SPF or DKIM fails, making it the broadest common failure option. A domain can also request fo=d for DKIM-specific failures or fo=s for SPF-specific failures.
The failure reporting specification in RFC 6591 defines the format and handling model for these reports. fo=1 increases investigative coverage, although it also increases report volume and privacy exposure.
A message can pass one authentication mechanism while failing the other because of forwarding, a misconfigured third-party sender or an alignment error.
Organizations should define who can access RUF data, how long it is retained and whether its contents require additional privacy review. These controls keep message-level telemetry useful without turning forensic reporting into an uncontrolled collection of employee or customer information.
RUF is not required for DMARC compliance. A domain can publish and enforce a valid DMARC policy without a ruf tag, and not all mailbox providers send forensic reports even when a domain requests them.
Receiver support, local privacy requirements, provider policy and message-handling practices determine whether RUF feedback arrives. The absence of RUF data does not prove that no messages failed or that a receiving provider ignored the request improperly.
Forensic reports are most useful during targeted investigations. When a domain owner is troubleshooting a recurring authentication failure, a limited set of message-level reports can reveal the affected sender, authentication path and alignment behavior.
RUF works as a supplemental signal. It never functions as a guaranteed incident feed or a replacement for mail logs, secure email telemetry or human-layer reporting.
What Is the Difference Between RUA and RUF?
RUA and RUF differ in granularity, consistency and operational purpose. RUA offers a high-level view of domain traffic over a reporting period, while RUF focuses on individual authentication failures.
RUA is typically better for measuring policy readiness and identifying unauthorized senders, while RUF is better for examining selected failure events in detail.
| Attribute | RUA Aggregate Reports | RUF Forensic Reports |
|---|---|---|
| Scope | Domain-level summaries grouped by source and outcome | Individual message-level failure feedback |
| Format | Usually compressed XML | Provider-defined failure-report format, often with selected headers |
| Frequency | Periodic, commonly requested with ri | Triggered by qualifying failures and receiver policy |
| Receiver support | Broad but not universal | More limited and inconsistent |
| Privacy exposure | Lower because message content is generally absent | Higher because message-specific details can be included |
| Investigation value | Strong for trends, inventory and policy tuning | Strong for examining individual failures |
| Compliance requirement | Useful but not mandatory | Not required for DMARC compliance |
| Operational role | Continuous domain governance | Targeted troubleshooting and forensic review |
Neither report type tells a complete story about phishing risk. DMARC evaluates whether a message claiming to use a domain aligns with SPF or DKIM.
It does not determine whether a legitimate authenticated message contains a malicious link, uses a compromised vendor account or persuades an employee to transfer money. Teams should connect DMARC findings with phishing simulations and human-layer training so technical email signals and employee reporting behavior reinforce each other.
Which DMARC Report Type Should Organizations Use?
Most organizations should prioritize RUA for continuous monitoring and add RUF selectively when a specific investigation or governance requirement justifies the additional privacy and handling burden.
RUA supplies the operating picture needed to identify legitimate senders, correct authentication failures and move from monitoring toward enforcement. RUF can provide deeper evidence for carefully scoped failure analysis where receiving providers support it.
Administrators should use RUA to understand the services sending mail for a domain. They should request RUF when message-level evidence about a particular authentication failure is required and the relevant receivers support it.
RUA is the safer choice when privacy rules restrict the collection of message headers or recipient information. Strict controls should be established before enabling RUF. Exposing every phishing attempt requires a wider control set that includes secure email analysis, incident response and employee-centered phishing reporting.
The strongest operating model treats RUA as the baseline and RUF as an optional investigative layer. Configure rua to a monitored reporting destination, set a realistic ri value, review sender trends regularly and document authorized third-party services.
When using ruf, choose the narrowest fo setting that answers the investigation question, define retention rules and confirm which providers actually return reports.
That division keeps DMARC reporting useful without confusing authentication telemetry with complete email defense. RUA shows whether the domain's sending infrastructure is aligned, and RUF can explain selected failures.
Human-layer controls remain necessary because cyberattackers can use lookalike domains, compromised accounts, malicious attachments, vishing, smishing and other tactics that authenticated-mail reporting does not resolve.
How Do DMARC Reports Work From DNS to XML Delivery?
DMARC reports begin with a DNS TXT record that tells receiving mail systems where to send authentication feedback. After publication, authorized receivers evaluate SPF, DKIM and domain alignment, compile the results and deliver aggregate reports as XML files.
The initial reports serve as an inventory checkpoint rather than proof that every legitimate sender is configured correctly.
Publish the DMARC Reporting Record
The reporting flow begins with a TXT record at _dmarc.yourdomain.com. Before enabling enforcement, confirm that SPF and DKIM authenticate legitimate services, including marketing platforms, ticketing systems, payroll providers and other third-party senders.
Google Workspace administrator guidance recommends allowing SPF and DKIM to authenticate legitimate mail for at least 48 hours before adding DMARC. An incomplete sender inventory can otherwise create delivery problems.
Production records should use the organization's actual domain. The examples below use yourdomain.com and dmarc-reports@yourdomain.com as placeholders. Both need to be replaced with a domain and reporting destination the organization controls.
A monitoring-first record can look like this:
`text
v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com; ri=86400; fo=1; pct=100
`
Each tag controls a different part of reporting or enforcement:
- rua specifies aggregate-report destinations. Use mailto: before every address. Separate multiple destinations with commas.
- ruf specifies failure or forensic-report destinations. These reports can contain message-level details, although many receivers do not send them, and Gmail does not support the ruf tag.
- ri requests the aggregate reporting interval in seconds. 86400 requests approximately 24-hour reporting.
- fo requests failure-report conditions. Common values include 0 when both SPF and DKIM fail, 1 when either mechanism fails, d for DKIM-specific failures and s for SPF-specific failures.
- pct applies the DMARC policy to a percentage of relevant messages. Use a whole number from 1 to 100. Omitting the tag means 100%.
- p tells receivers how to handle messages that fail DMARC. Valid policies are none, quarantine and reject.
A fuller example showing both report types is:
`text
v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com,mailto:dmarc-archive@yourdomain.com; ruf=mailto:dmarc-failures@yourdomain.com; ri=86400; fo=1; pct=100
`
Do not copy this record without checking receiver support, privacy requirements and mailbox capacity. Use a dedicated group, mailbox or reporting service rather than an employee's normal inbox.
Google states that report volume depends on how much mail a domain sends and how many recipient domains receive it. Large organizations can receive hundreds or thousands of reports daily.
The p tag does not determine whether a report exists. rua controls aggregate feedback, while ruf requests failure feedback. Start with p=none while reviewing sending sources, then move to quarantine or reject only after legitimate senders consistently pass authentication and alignment.
Authorize Every External Reporting Destination
Receivers apply an additional safety check when a report address belongs to a different domain. Without that check, a cyberattacker could direct large volumes of reports about another organization's domain to an unrelated mailbox. External authorization requires the destination-domain owner to explicitly accept those reports.
Suppose yourdomain.com publishes:
`text
v=DMARC1; p=none; rua=mailto:reports@reports.example.net
`
The owner of reports.example.net must publish a TXT record at:
`text
yourdomain.com._report._dmarc.reports.example.net
`
That record normally contains:
`text
v=DMARC1;
`
The exact DNS name matters. The source domain comes before ._report._dmarc., followed by the reporting domain. The destination owner controls this authorization, and the organization configuring DMARC has no ability to publish it.
If the destination is a service such as dmarc.vendor.example, that service must publish the authorization record in its own DNS and provide the correct setup instructions.
The same rule applies to multiple rua or ruf destinations. Authorize each external reporting domain independently. If a record sends reports to reports.example.net and collector.example.org, both destination domains must authorize yourdomain.com.
A destination within yourdomain.com does not require cross-domain authorization, although the mailbox or group must exist and accept incoming reports.
Third-party reporting services commonly use this arrangement because they receive reports for many customer domains. They ingest attachments, decompress and parse the XML, then present source IPs, authentication results and policy outcomes in a dashboard.
That arrangement changes the operational workload while leaving the DNS requirement intact. The organization still needs to publish rua or ruf, verify the service's destination address and confirm that the service has authorized the domain.
Do not send reports to a reporting domain unless its owner has deliberately provided an authorized destination. A valid-looking mailto: address is insufficient on its own. Without authorization, a compliant receiver can refuse to send the report or ignore that URI, protecting both the reporting system and the organization named in the DMARC record.
Understand Delivery Timing and XML Structure
After DNS publication, receiving systems query the record while processing messages that claim to come from the protected domain. They evaluate SPF, DKIM and DMARC alignment, apply the published policy, aggregate results for the reporting period and send the report to each authorized rua destination.
When ri=86400, a receiver usually sends an aggregate report about once per day. The interval remains a request that receivers can schedule differently.
Some receivers deliver daily. Others batch reports on their own schedules, while reporting services can consolidate data into weekly summaries. DNS caching, receiver polling intervals, report-generation schedules and the time of the first qualifying message all affect when data appears.
A correct DNS record can produce no report until a participating mailbox provider processes mail from the domain. Wait through several reporting cycles before concluding that the record or destination is broken.
Report volume follows message volume and recipient-domain diversity. A company sending 50,000 messages to one provider can receive a different report pattern from a company sending 5,000 messages through many providers.
Forwarding, mailing lists, multiple sending IP addresses, failed authentication attempts and several authorized destinations can also increase the number of records or attachments. Route reports to a controlled mailbox or reporting service, then monitor storage, parsing failures and unexpected senders.
Aggregate reports use XML so systems can combine results across providers and reporting periods. A report commonly arrives as an XML file attached to an email, often compressed with gzip.
It does not normally contain the full body of every message. Instead, it summarizes authentication outcomes and identifies the infrastructure that sent mail using the domain.
The three main sections of an aggregate XML report are:
- report_metadata identifies the reporting organization, report ID, reporting window and, in some cases, contact information.
- policy_published records the DMARC policy retrieved for the source domain, including p, sp, adkim, aspf and pct.
- record contains grouped observations. Each record typically includes a source IP, message count, disposition, applied DMARC policy and SPF and DKIM authentication results.
A simplified structure looks like this:
`xml
<feedback>
<report_metadata>
<org_name>Receiver Example</org_name>
<report_id>unique-report-id</report_id>
<date_range>
<begin>1767225600</begin>
<end>1767312000</end>
</date_range>
</report_metadata>
<policy_published>
<domain>yourdomain.com</domain>
<p>none</p>
<pct>100</pct>
</policy_published>
<record>
<row>
<source_ip>192.0.2.10</source_ip>
<count>25</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>pass</spf>
</policy_evaluated>
</row>
</record>
</feedback>
`
The XML records what a receiver observed, and it carries no judgment about whether a business process is legitimate. A marketing sender might pass DKIM and fail SPF alignment, while a spoofed message might fail both.
Compare source IPs, DKIM signing domains, envelope-from domains and message volume against the approved sender inventory before changing policy.
Incoming reports work best as an operational signal. Review new senders, investigate authentication failures, correct legitimate services and increase enforcement in controlled stages. For organizations that also need to coach employees on suspicious messages, phishing response and reporting workflows connect mailbox signals with faster human-layer action.

How Should Teams Read and Analyze a DMARC Aggregate Report? DMARC Reporting Explained
DMARC reporting explained in practical terms means turning compressed XML feedback into a clear map of the domain's sending ecosystem. That map shows which services send email, whether authentication passes, and where spoofing or configuration errors remain.
Validate the report period and sender, inspect the policy and authentication fields, normalize each record, and classify every traffic source before changing DNS. A failed record is an investigation signal rather than proof of malicious activity, because forwarding, third-party services and policy overrides can produce legitimate failures.
1. Read the XML Anatomy Before Judging a Sending Source
A DMARC aggregate report uses a feedback root element and contains three areas that establish context: report_metadata, policy_published and one or more record elements.
The IETF specification for DMARC aggregate reporting defines the report as an XML document that receivers submit to the address in the domain's rua tag. Authentication results and policy outcomes are grouped by message stream.
The feedback element is the report's outer container. It normally includes the version and identifies the reporting organization, published policy and message records.
In report_metadata, read org_name to identify the receiver, email and extra_contact_info for operational follow-up, and report_id to detect duplicate reports. The date_range values, expressed as Unix epoch timestamps in UTC, define the reporting window. They describe the period covered by the report rather than the exact first and last message observed.
Inspect policy_published after confirming the metadata. The domain identifies the DMARC policy domain. The p value shows the requested action for the domain, such as none, quarantine or reject, while sp applies to subdomains when present.
adkim and aspf show whether DKIM and SPF alignment are strict or relaxed, and fo records failure-reporting preferences. Some implementations also report np for non-existent subdomains, although support is not universal.
Compare these values with the DNS record the organization intended to publish, while accounting for DNS propagation and recent configuration changes.
Each record represents a group of messages that share the reported connecting IP address and the relevant policy-evaluation and identifier combination. It never represents one individual email.
A record with count set to 2,000 means the receiver grouped 2,000 messages that produced the same reportable result tuple. Separate rows can exist for the same IP when the identifiers, authentication results or evaluated policy differ.
The following structure shows the investigation path without using organizational data:
`xml
<feedback>
<report_metadata>
<org_name>Receiving Organization</org_name>
<report_id>unique-report-id</report_id>
<date_range>
<begin>period-start</begin>
<end>period-end</end>
</date_range>
</report_metadata>
<policy_published>
<domain>example.com</domain>
<p>quarantine</p>
<sp>none</sp>
<adkim>r</adkim>
<aspf>r</aspf>
</policy_published>
<record>
<row>
<source_ip>203.0.113.10</source_ip>
<count>42</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf>
</policy_evaluated>
</row>
<identifiers>
<envelope_from>mailer.example.net</envelope_from>
<header_from>example.com</header_from>
<envelope_to>recipient.example</envelope_to>
</identifiers>
<auth_results>
<dkim>
<domain>example.com</domain>
<selector>selector1</selector>
<result>pass</result>
</dkim>
<spf>
<domain>mailer.example.net</domain>
<result>pass</result>
</spf>
</auth_results>
</record>
</feedback>
`
The source_ip is the connecting mail server. Use it to identify the provider, service or infrastructure owner, while treating an IP lookup as an indicator rather than proof of ownership.
count is the message volume in that row. disposition is the action the receiver applied, while policy_evaluated reports DMARC-aligned DKIM and SPF results. A none disposition does not mean DMARC passed. It can indicate a none policy, a local override or a receiver decision to withhold the requested action.
The identifiers element connects authentication to the visible mail identity. header_from is the domain recipients see in the From header and the domain DMARC protects. envelope_from is the SMTP MAIL FROM domain evaluated by SPF, and envelope_to identifies the recipient domain.
In the example, SPF passes for mailer.example.net, although SPF alignment fails because that domain does not align with example.com. DKIM passes and aligns because the signing domain is example.com, so DMARC passes through DKIM even when SPF alignment fails.
2. Normalize Records and Investigate Each Authentication Path
Manual review works for a few reports, although several days of XML quickly create duplicate rows, inconsistent provider names and misleading conclusions. Save the original compressed files, validate the XML, and load one row per report record into a relational table or reporting service.
A useful schema includes the report date, receiver, report ID, policy domain, source IP, count, disposition, header-from, envelope-from, envelope-to, DMARC-aligned SPF result, DMARC-aligned DKIM result, raw SPF result, raw DKIM domain, DKIM selector and any policy-override reason.
A reporting dashboard should aggregate by source IP, authenticated domain, header-from domain, receiver and period. Deduplicate by report ID and record context before summing counts.
Keep source_ip and authentication domains as separate dimensions because one provider can use multiple IP ranges and one IP can serve multiple customers. Preserve the raw XML for disputes, parser errors and later review.
Use these checks for every row:
- Compare header_from with the domain being protected.
- Inspect auth_results for the raw SPF and DKIM outcomes.
- Compare the authenticated domains with header_from under the alignment mode in policy_published.
The SPF domain identifies the domain tested for the SMTP MAIL FROM identity. Its result can be pass, fail, softfail, neutral, temperror or permerror. The DKIM domain, selector and result show which signing identity was tested and whether its signature verified.
Classify traffic using evidence from several fields rather than one failed check.
| Classification | Signals to Review | Investigation Action |
|---|---|---|
| Compliant | DMARC-aligned DKIM or SPF is pass; disposition is normally none | Confirm the source, document it and monitor volume |
| Noncompliant | Both aligned DKIM and aligned SPF fail | Check the source, message purpose and policy impact |
| Forwarded | SPF fails, DKIM passes or fails inconsistently, and the source is a mailbox, list or forwarding service | Preserve DKIM alignment and review forwarding behavior |
| Legitimate configuration error | Known provider or business process, but missing SPF authorization, broken DKIM, wrong signing domain or misaligned MAIL FROM | Correct DNS or provider settings, then verify later reports |
| Probable spoofing | Unknown source, failed aligned DKIM and SPF, suspicious volume or no business explanation | Investigate the IP and message path, then enforce the published policy when coverage is understood |
A reason element inside policy_evaluated explains a policy override, such as a receiver's local decision to accept or treat a message differently. Record that reason instead of interpreting disposition alone.
A receiver can report none even when the published policy is stricter, so the override context matters.
For operational visibility, place normalized results in a DMARC reporting and dashboard workflow that allows security teams to compare sources, periods and policy outcomes without opening every XML attachment. Keep the source data accessible because dashboards summarize evidence and cannot replace validation.
3. Calculate Compliance Rates and Track Trends Over Custom Periods
A domain's DMARC compliance rate is the volume of messages that passed DMARC divided by the total reported message volume for the same domain and period:
DMARC compliance rate = compliant message count ÷ total message count × 100
Count a row as compliant when policy_evaluated.dkim is pass or policy_evaluated.spf is pass. Weight each row by its count value rather than by the number of XML rows.
If three normalized rows contain 800, 150 and 50 messages, and the first two pass DMARC, compliance is (800 + 150) ÷ 1,000 × 100 = 95%. Avoid a simple average of row-level percentages because a low-volume source would distort the result.
Set the analysis window before calculating the result. For daily monitoring, group by UTC date from date_range. For a custom 30-day period, sum deduplicated records whose report windows overlap the selected period and document how partial windows are handled.
Track total volume, compliant volume, noncompliant volume, aligned DKIM rate, aligned SPF rate, forwarded volume and unknown-source volume across each period.
Use trend data to connect changes to specific actions. A sudden DKIM failure after a vendor migration points to a signing or selector problem. Sustained SPF failure with passing DKIM often reflects forwarding or an unnecessary SPF dependency.
A new high-volume IP with both alignment checks failing requires source validation before DNS changes. Review trends after each provider onboarding, DNS change and policy adjustment.
DMARC aggregate reports provide evidence for safer enforcement rather than an automatic command to move directly to reject. Resolve known configuration errors, identify legitimate forwarded traffic, verify unexplained sources and confirm that the compliance calculation covers the organization's actual mail streams.
Accurate classification turns report data into a controlled path from visibility to enforcement.
How Should Administrators Interpret SPF, DKIM, Alignment, and Policy Results in DMARC Reporting Explained?
DMARC reporting explained starts with three separate questions: Did SPF or DKIM authenticate the message? Did an authenticated domain align with the visible From domain? What action did the receiving server take?
SPF pass with DKIM fail can still produce a DMARC pass, as can DKIM pass with SPF fail, because DMARC requires only one authenticated and aligned identifier.
Both SPF and DKIM can pass while DMARC fails if neither authenticated domain aligns with the visible From domain. The correct response depends on the sender, delivery path, alignment mode and receiver's disposition, so a single pass or fail value in isolation is never enough.
What Does Each SPF, DKIM, and DMARC Result Combination Mean?
This matrix separates the authentication signal from the alignment decision and the receiver's action.
| SPF Result | DKIM Result | Alignment Outcome | DMARC Result | What It Means |
|---|---|---|---|---|
| Pass | Fail | SPF aligns | Pass | SPF authenticated the envelope sender, and that domain matches the visible From domain. Investigate the DKIM failure because message modification or key problems have removed the backup path. |
| Fail | Pass | DKIM aligns | Pass | The message signature authenticates the visible From domain, although the Return-Path or envelope sender failed SPF. Forwarding, delegated sending or an incomplete SPF record commonly causes this pattern. |
| Pass | Pass | Neither aligns | Fail | Both mechanisms authenticated domains, although neither domain matches the visible From domain under the configured alignment mode. This indicates a third-party sender configuration error, and spoofing remains possible. |
| Pass | Pass | At least one aligns | Pass | The message satisfied DMARC. The receiver can still deliver, quarantine or reject it based on reputation, malware detection and local policy. |
| Fail | Fail | No aligned identifier | Fail | The message has no usable authenticated path. Treat it as an unauthorized sender until the source is verified. |
| None or missing | Pass | DKIM aligns | Pass | SPF did not produce a usable result, although aligned DKIM was sufficient for DMARC. |
| Pass | None or missing | SPF aligns | Pass | DKIM was absent, and aligned SPF provided the DMARC pass. This leaves the message more vulnerable to forwarding and content changes. |
DMARC requires only one aligned authentication path to pass. A failed SPF result does not automatically indicate a malicious message, and an SPF pass does not prove that the visible sender is authorized.
The DMARC specification defines this pass condition through identifier alignment, so administrators must inspect the authenticated domains rather than treat SPF and DKIM results as independent verdicts.
DMARC alignment has two modes. Relaxed alignment is the default for SPF and DKIM and permits the authenticated domain to share the same organizational domain as the visible From domain. For example, bounce.mail.example.com can align with example.com.
Strict alignment requires an exact domain match, so mail.example.com does not align with example.com. The aspf tag controls SPF alignment, while adkim controls DKIM alignment.
A DMARC policy result also differs from a receiver disposition. p=reject, p=quarantine and p=none state the domain owner's requested treatment for a DMARC failure.
The report's policy_evaluated fields show how the receiver evaluated the message, while the disposition field records what the receiver actually did. A message can fail DMARC and still reach the inbox under p=none, and a receiver can apply a local override that softens a stricter policy.
How Do Forwarding, Mailing Lists, and Delegated Senders Affect Alignment?
Forwarding creates a common source of confusion in DMARC reporting because the transport path changes while the visible From address remains the same. SPF authenticates the SMTP envelope sender against the connecting server's IP address.
When an intermediary forwards the message, the final receiver sees the forwarder's IP, which the original SPF record might not authorize.
A DKIM signature can survive forwarding because it travels with the message. It fails when the forwarder changes signed headers or body content.
Mailing lists often add footers, subject tags or moderation notices, creating the modifications that invalidate a DKIM signature. If SPF also fails, the forwarded message can fail DMARC even when the original sender was legitimate.
ARC, or Authenticated Received Chain, records authentication results and the message's handling through intermediaries. It does not rewrite SPF, DKIM or DMARC into a pass.
Under RFC 8617, receivers can use a trusted ARC chain as an input to local handling decisions, particularly when forwarding or mailing-list activity explains the failure. Inspect arc=pass, the sealing domain and the recorded prior results before accepting that explanation.
Third-party SaaS senders create a different pattern. A vendor might authenticate mail with its own domain, such as vendor.example.net, while the visible From address uses example.com. SPF and DKIM can both pass, yet DMARC fails because neither identity aligns.
Configure a custom Return-Path for aligned SPF, a custom DKIM signing domain, or both. Adding a vendor's IP address to SPF authorizes the transport without correcting alignment.
Subdomains require the same discipline. Under relaxed alignment, alerts.example.com can align with example.com, while strict alignment requires an exact match with the visible From domain.
Review the header_from, envelope_from and dkim_domain values together before changing DNS, because a record that fixes authentication without fixing alignment will not produce a DMARC pass.
How Should Teams Verify and Prioritize DMARC Report Sources?
Source verification should begin with the reporting sender rather than the result combination. Group records by source IP, envelope sender, DKIM signing domain, header From domain and message volume.
Classify each source as an approved internal system, known SaaS provider, forwarding path, mailing list or unknown origin.
A consistent source with predictable volume and the same alignment failure usually indicates a configuration issue. A new source sending sporadic volume with both mechanisms failing deserves faster investigation because it combines unknown provenance with no authenticated path.
Use this decision tree:
- Is the source an approved business system?
- If yes, compare the visible From domain with the Return-Path and DKIM signing domain. If SPF or DKIM passes but alignment fails, correct the vendor's custom sending-domain configuration.
- If no, continue to the delivery-path check.
- Does the source show signs of forwarding or list redistribution?
- If SPF fails while DKIM passes, inspect whether the original signature survived and whether ARC records identify a trusted intermediary.
- If both fail, determine whether the intermediary rewrites content, replaces the envelope sender or strips authentication headers.
- Is the sender a recognized third-party SaaS provider?
- If yes, request its documented SPF, DKIM and custom-domain requirements. Do not authorize an unfamiliar IP range solely because its volume is high.
- If no, compare the source with known infrastructure, user reports and sending patterns before allowing it.
- Does the message imitate an internal domain without an approved source?
- If both SPF and DKIM fail, treat it as a likely spoofing attempt and investigate headers, URLs and recipient targeting.
- If both pass but neither aligns, determine whether the sender is an unauthorized service or a compromised account using a legitimate platform.
Prioritize errors by business impact. A high-volume legitimate sender with predictable SPF alignment failures can disrupt invoices, password resets and customer notices, so fix it before a low-volume unknown source.
A low-volume source impersonating finance or an executive still requires immediate review because volume is a poor measure of fraud risk.
Keep reporting errors separate from authentication errors. A parser failure, malformed XML file, missing aggregate report or inaccessible reporting mailbox affects visibility, and it can leave email authentication untouched.
DNS lookup failures, SPF recursion or length limits, expired DKIM keys, invalid signatures and domain mismatches affect authentication or alignment. Correcting a reporting error restores evidence, while correcting an authentication error changes how receivers evaluate the mail.
For ongoing review, connect verified sources to DMARC reporting and security reporting workflows so administrators can track approved senders, recurring alignment failures and policy changes over time.
That record turns isolated authentication results into a defensible map of legitimate delivery paths, intermediary behavior and unauthorized activity.
How Do Organizations Enable DMARC Reporting With rua and ruf?
DMARC reporting starts with visibility and postpones enforcement until the evidence supports it. Inventory every legitimate sender, create a controlled destination for reports, publish rua, evaluate whether ruf is appropriate, authorize external recipients and validate that reports arrive.
Forensic reporting is a data-governance decision because messages can contain sensitive business or personal information.

1. Prepare the Reporting Destinations
List every service that sends mail for each organizational domain. Include Google Workspace, Microsoft 365, marketing platforms, payroll systems, ticketing tools, customer relationship management platforms, government portals, transactional mail services and third-party vendors.
Compare that inventory with SPF and DKIM records so reports reveal unknown senders instead of creating confusion about known ones.
Use a dedicated mailbox only in low-volume environments where someone can consistently review XML files. Larger organizations should choose a DMARC reporting service that parses aggregate reports, normalizes authentication results and shows coverage by domain, source, SPF alignment and DKIM alignment.
A mailbox that receives reports without analysis does not reduce risk.
Use rua as the initial reporting channel. Aggregate reports typically provide daily, domain-level telemetry without exposing the full contents of individual messages. For organizations using Google Workspace, Google Workspace DMARC setup guidance explains the administrative sequence for authenticating senders and publishing the policy record.
Decide separately whether to publish ruf. Forensic, or failure, reports can include message IDs, headers, subject lines, URLs and, depending on the receiving system, portions of message content.
Healthcare, finance, government and education organizations should involve privacy, legal and compliance teams before enabling forensic reporting.
2. Publish and Authorize the Record
Add a TXT record at _dmarc.example.com. A controlled starting example is:
`text
_dmarc.example.com TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com"
`
This record requests aggregate reports while leaving the delivery policy in monitoring mode. Replace example.com and every other placeholder with domains the organization controls.
Do not copy the syntax into production unchanged, and do not publish a ruf address until its mailbox, retention rules and access controls are approved.
Multiple rua addresses are useful when a security team needs one destination and an independent reporting service needs another, or when separate internal teams monitor different domains.
Additional destinations also support resilience, although each recipient increases administrative and privacy review requirements. Keep the list intentional rather than adding addresses without a defined owner.
If a reporting address belongs to another domain, the receiving domain must explicitly authorize the sending domain. For example, if reports.securityvendor.example receives reports for example.com, the recipient typically publishes an authorization TXT record beneath the reporting domain:
`text
example.com._report._dmarc.reports.securityvendor.example TXT "v=DMARC1"
`
Use the reporting provider's exact authorization format because the hostname and record syntax must match its implementation. Without external authorization, many receivers will not send reports to a third-party destination.
3. Validate Ingestion and Monitor Coverage
Validate the DNS record from more than one resolver. Confirm that it contains one v=DMARC1 tag, a valid rua mailbox and no accidental line breaks or unsupported characters.
Check that the authoritative nameservers return the new TXT record, and send legitimate test messages through each known sending service.
Confirm ingestion at the destination rather than stopping at DNS validation. Look for reports from major receiving networks, verify that the parser identifies SPF and DKIM results correctly, and check timestamps, sending sources and policy alignment.
A reporting service should show whether each domain receives data consistently, which is a stronger test than confirming that the record exists.
Track reporting coverage across every active domain and subdomain. A domain with no reports can indicate low mail volume, receiver limitations, a malformed record or an undiscovered sending path.
Review new sources before changing p=none to a stricter policy, and preserve an exception process for vendors that cannot yet authenticate correctly.
Organizations managing several domains should centralize reporting and integrations so security teams can compare authentication coverage, identify unauthorized senders and document remediation over time.
Limit access to aggregate data, define retention periods and record who can view reports. DMARC reporting works when it becomes an operating process rather than a TXT record that is published once and forgotten.
Why Do DMARC Reports Fail to Arrive? DMARC Reporting Explained
DMARC reporting explained at the troubleshooting layer starts with the destination. Reports stop arriving when the published reporting address is malformed, unauthorized, unreachable or unsupported by the receiving provider.
Each mailbox provider decides whether, when and how to send reports, while the published DNS record determines where those reports go. A valid record does not guarantee that every receiver will send aggregate or forensic feedback.
Are the DNS and Authorization Settings Correct?
Query the authoritative DNS response for _dmarc.example.com rather than relying on the cached result shown by a web-based checker. Confirm that the record is a single TXT record beginning with v=DMARC1, that rua and ruf use valid mailto: URIs, and that there are no quotation marks, commas, unsupported characters or accidental line breaks.
A safe pattern is rua=mailto:dmarc@example.com, and omitting the mailto: prefix invalidates the destination.
Check DNS propagation after every change. Recursive resolvers can continue serving the previous record until its TTL expires, so one receiver can report p=none while another reports p=quarantine.
A mismatch in the policy_published fields, including p, sp, pct, adkim or aspf, often indicates stale DNS, multiple _dmarc records or inconsistent propagation rather than inconsistent sender behavior.
External destinations require a second authorization step. If example.com sends reports to reports.vendor.com, the receiving domain must publish a record at example.com._report._dmarc.vendor.com authorizing that destination.
Without this record, a receiver can correctly suppress delivery even when the rua syntax is perfect. The external-reporting rules in the DMARC specification define this cross-domain check.
Are the Receiver and Mailbox Accepting Reports?
A valid destination still fails if the mailbox does not exist, rejects large compressed attachments, exceeds storage limits or routes automated messages to quarantine.
Send a controlled test message to the mailbox, confirm that its MX records accept mail and check SMTP logs. Verify that the mailbox or ingestion endpoint permits XML and GZIP attachments. For a reporting service, validate that the account is active and that the domain is provisioned.
Expect aggregate reports on a provider-defined schedule, typically as a summary covering the previous reporting period rather than as an immediate response to a test message.
Domains with little or no outbound message volume can produce no report, and some receivers send reports only after observing traffic from the domain. Filtering, privacy controls and provider-specific policies also affect delivery.
Two reporting services can show different results because they receive reports from different mailbox providers, apply different deduplication and normalization rules, or process reports on different schedules.
Compare each service's raw input before treating a dashboard discrepancy as a DNS problem. Centralized DMARC reporting and dashboards can make those differences easier to trace.
Could the Parser or Report Data Be Wrong?
Parser failures often look like missing reports. Receivers commonly attach XML files with GZIP compression, unusual filenames or schema variations.
Confirm that the ingestion system can decompress attachments, parse namespaces and handle oversized records without silently discarding messages. Preserve every raw XML file and original email before retrying a parser update, because the raw file is the only reliable record of what the receiver sent.
Incomplete data can also be legitimate. Aggregate reports group results by source, date and authentication outcome, so they never provide a complete message-by-message ledger.
A low-volume domain, a provider that does not report or a receiver that filters reports can leave gaps. Treat rua as visibility into participating receivers, and treat ruf as an optional signal that many providers withhold.
What Should Teams Do When Legitimate Email Fails DMARC Authentication?
When legitimate email fails DMARC authentication, identify the sending service, verify its ownership, and determine whether SPF, DKIM or domain alignment caused the failure.
Correct authorization or signing, test the change with a controlled message, and monitor new DMARC reports before increasing enforcement. Treat forwarding and mailing-list traffic separately because indirect flows can break authentication without indicating abuse.
1. Classify the Sending Source Before Changing DNS
Start with high-impact failures, including high-volume sources, executive or critical transactional mail, and sources that appeared recently. For each report, record the source IP, envelope sender domain, visible From domain, DKIM selector, authentication results, receiving organization and message volume.
This separates a known payroll provider sending 100,000 messages from an unfamiliar host sending 40 messages that imitate an executive.
Use the source IP and envelope sender to identify the service, then compare that finding with the header From domain and DKIM d= value. A legitimate provider can pass SPF for its own return-path domain while failing alignment because the visible From address uses the organization's domain.
A DKIM signature can also pass cryptographically while failing DMARC if its signing domain does not align with the visible From domain.
Verify the provider through the contract, procurement records, DNS configuration and mail-flow owner before authorizing it. Ask the application, marketing, finance or customer-support team whether the service still sends mail, which domains it uses, and whether a migration or configuration change created the new source.
Document every delegated sender, approved envelope domain, DKIM selector and business owner.
Do not treat every failure as a configuration error. Forwarding services and mailing lists can alter the SMTP path, break SPF, modify headers or invalidate DKIM.
ARC, or Authenticated Received Chain, gives receivers a signal about authentication results recorded by an intermediary, and it never substitutes for aligned SPF or DKIM on the protected domain. The DMARC specification identifies indirect mail flows as a known limitation.
2. Correct Authentication and Alignment Safely
Fix the narrowest control that resolves the failure. If the provider is authorized but its sending IP fails SPF, update the domain's SPF authorization using the provider's documented mechanism or an approved IP range.
Avoid placing every vendor in one record. SPF limits processing to 10 DNS-query-causing mechanisms, so RFC 7208 requires careful record design rather than unlimited includes.
If DKIM is absent, invalid or signed with the provider's unrelated domain, enable DKIM signing and publish the provider's public key at the required selector. Prefer a signing domain under the organizational domain so the d= value aligns with the visible From domain.
Rotate selectors deliberately, publish the new key before switching traffic, and retain the old key until messages signed with it are no longer in transit.
If SPF and DKIM both pass but DMARC still fails, correct alignment. Configure the provider to use the organization's visible From domain, an aligned subdomain or a custom return-path domain.
Check whether the published policy requires relaxed or strict alignment, and apply the same decision consistently across delegated subdomains.
3. Validate the Fix Before Enforcement
Send controlled test messages through the exact production workflow, including automated receipts, password resets, invoices and executive communications. Test from the provider's normal infrastructure and inspect the complete headers at multiple recipient systems.
Confirm SPF pass, DKIM pass, DMARC pass, the expected envelope sender, the visible From domain and an aligned SPF or DKIM identifier.
Continue monitoring reports after the change because message volume often varies by campaign, billing cycle or application event. Retest after DKIM selector rotation, vendor changes, forwarding changes and mailing-list updates.
Keep p=none or another monitoring posture until reports show that authorized sources consistently pass and unresolved failures are either remediated or documented as accepted exceptions.
How Can DMARC Reports Guide the Move From p=none to p=quarantine or p=reject?
DMARC reports guide a controlled move from observation to enforcement. Collect aggregate reports under p=none, identify every legitimate sender, correct SPF or DKIM alignment, and increase enforcement in measured stages.
A passing DMARC result confirms alignment. It carries no assurance that a message is safe, wanted or authorized by the business.
1. Establish a Baseline With p=none
Publish a DMARC record with p=none and valid aggregate-reporting addresses. This policy tells receiving servers to deliver messages normally while reporting whether mail that claims to come from the domain passes or fails DMARC.
It provides visibility without asking receivers to quarantine or reject traffic, making it the right starting point when the organization does not yet understand its full sending inventory.
Review reports by source IP, envelope sender, DKIM signing domain, SPF domain, authentication result, volume, and alignment. Separate known platforms, subsidiaries, transactional systems, and third-party senders from unauthorized infrastructure.
Correct the underlying configuration by authorizing legitimate services in SPF or configuring DKIM with a domain aligned to the visible From address.
A sender that passes DMARC is not automatically safe or wanted. DMARC evaluates domain alignment and authentication, while malicious or unwanted mail can still originate from an authorized provider, a compromised account, or a service the organization no longer uses.
Keep abuse complaints, threat detections, user reports, and vendor ownership checks in the review process so the baseline reflects real risk.
The DMARC specification defines policy discovery, alignment, and reporting behavior. Reports do not guarantee that every sender will appear immediately because some receivers do not send reports, providers aggregate data differently, and low-volume sources can take time to surface.
2. Stage Enforcement With pct and Measured Policy Changes
Move from observation to enforcement only after report trends show that legitimate mail is consistently aligned. Change the domain policy to p=quarantine when the organization is ready to ask receiving servers to treat failing messages as suspicious. Receivers commonly act on that request by placing the messages in spam or another quarantine area.
Use pct to apply the policy to a percentage of applicable failing mail, then increase the percentage as evidence accumulates.
An organization can begin with p=quarantine; pct=25, review reports and delivery complaints, and increase the percentage to 50, 75, and 100. Set intervals according to mail volume, the business calendar, and the security team's ability to investigate failures.
Avoid major changes immediately before payroll, financial close, customer notifications, or a high-volume marketing campaign.
After quarantine operates without unacceptable disruption, change to p=reject. This asks receiving servers to refuse unauthenticated messages rather than accept them into the recipient's mailbox.
Receiving servers control the final outcome and can apply local rules, so p=reject states a policy request that receivers implement at their discretion. A receiver can accept, quarantine, or reject messages according to its own processing rules.
Define rollback criteria before increasing pct. Pause or reduce enforcement when a known legitimate sender begins failing, customer-facing delivery drops, executive or finance workflows break, or reports show a sudden unexplained increase in unauthenticated volume.
Roll back to the last stable percentage or return temporarily to p=none while correcting the sender. A rollback is a control decision that protects business continuity while remediation continues.
3. Maintain the Policy Across Domains and Subdomains
Enforcement is complete only when the policy reaches its intended scope and remains effective. The p tag governs the organizational domain, while sp sets a separate policy for subdomains.
Use sp when subdomains have different sending owners or risk profiles, and publish explicit DMARC records on critical subdomains when their requirements differ from the parent domain. A parent policy alone can leave gaps that unauthorized senders exploit.
Continue monitoring aggregate reports after reaching p=reject. Enforcement does not create a permanent sender inventory.
New SaaS tools, acquisitions, forgotten applications, marketing platforms, and compromised credentials can introduce new sources after deployment. Review changes through procurement, identity, and DNS processes, and require new senders to document SPF, DKIM, and DMARC alignment before launch.
In practice, enforcement can take weeks or longer because discovery, vendor remediation, DNS changes, report delays, and business testing move at different speeds.
Use DMARC reporting and security dashboards to tie each policy decision to observed sender and risk trends, keeping authentication controls effective as the organization's sending environment changes.
When Should Organizations Use or Disable DMARC Forensic Reporting?
DMARC forensic reporting through the ruf tag gives security teams message-level evidence for investigating authentication failures, and it also creates a repository of potentially sensitive email data.
DMARC reporting at this level stays enabled only while an investigation needs it, because receiver support varies and privacy exposure can continue after an incident ends. Treat RUF as a controlled investigative capability.
When Does RUF Provide Investigative Value?
RUF is most useful when the investigation is specific and time-bound. A forensic report can include authentication results, source IP address, From address, Return-Path, message ID, headers and, when the receiver provides them, the subject line and URLs.
These fields can expose a phishing URL sent under the protected domain, show why a legitimate forwarding path failed alignment or identify a compromised sending platform.
Use RUF during a suspected domain-spoofing campaign, a migration between mail platforms or an investigation into missing messages from a trusted sender.
Analysts can compare the Return-Path with the DKIM signing domain, inspect received headers, extract suspicious URLs for threat-intelligence review and match the message ID against mail-flow logs. A forwarded message that fails SPF while retaining a valid DKIM signature becomes easier to explain with that evidence.
RUF does not provide a complete view of sender reputation, cross-provider trends or guaranteed coverage. It does not show how every mailbox provider evaluated a sender, and an absent report does not prove that no failed message existed.
Receiver policies, privacy decisions, message volume and reporting support determine what reaches the reporting address. Pair RUF with aggregate RUA data so message-level detail sits inside a domain-wide picture.
What Are the PII and Retention Risks of RUF?
RUF creates a privacy tradeoff because message-level fields can identify people, reveal business relationships or expose the details of a security incident.
Subject lines, recipient addresses, message IDs, URLs, forwarding headers and Return-Path details can disclose customer names, employee activity, health information, financial context or confidential project references even when the receiver redacts the body. GDPR's data minimization and storage limitation principles apply directly to that data.
Route RUF to a dedicated, access-controlled system instead of a shared inbox. Encrypt reports in transit and at rest, isolate the reporting dataset from general mail, log administrator access and redact unnecessary addresses, subjects and URL parameters before wider distribution.
Set a short, investigation-specific retention period, document legal holds when required and assess whether the collection needs a privacy impact review.
How Should Teams Decommission RUF After an Investigation?
Controlled decommissioning prevents a temporary evidence source from becoming a permanent PII store. Define the investigation question, enable RUF only for the relevant domain or period, preserve the minimum evidence needed for incident response and record which receivers supplied reports.
After analysts resolve the spoofing, forwarding or SaaS-sender issue, remove the ruf= destination from the DMARC record and confirm that reports stop arriving.
Retain sanitized indicators such as malicious domains, source IPs, authentication results and case references when they support future detection. Delete raw reports, attachments and unnecessary message-level fields according to the approved retention schedule.
Keep RUA active for ongoing domain-level monitoring, and use phishing response and email investigation workflows to connect authentication evidence with employee reports and incident handling.
How Should Organizations Operationalize DMARC Reporting Data?
Operationalizing DMARC reporting data means turning authentication telemetry into assigned work instead of treating XML reports as a passive compliance record.
DMARC reports help domain owners identify legitimate senders and unauthorized use. An authentication failure remains a signal for investigation rather than evidence that a message is malicious.
Who Owns DMARC Data and Workflow?
DMARC works best when ownership follows the path from infrastructure change to security decision. Email administration should own DNS records, SPF and DKIM configuration, approved sending services, alignment failures, and policy changes.
Security operations should interpret unusual sources, correlate them with threat intelligence, and determine whether activity reflects abuse, misconfiguration, or a cyberattack in progress.
GRC should maintain the domain inventory, document policy progression and exceptions, and connect reporting to control reviews. Incident response should receive escalations involving suspected domain abuse, lookalike infrastructure, compromised third-party senders, or unexplained changes in message volume.
Business application teams must validate systems that send on the organization's behalf.
Create one workflow with explicit handoffs:
- Ingest: Collect aggregate reports and, where appropriate, forensic reports in a controlled repository.
- Normalize: Map domains, sending IPs, DKIM selectors, SPF authorization, policy disposition, and reporting sources to an asset inventory.
- Validate: Ask the responsible application owner whether each source is approved and whether its authentication configuration is current.
- Investigate: Correlate unexplained sources with DNS changes, threat-intelligence records, identity events, mail logs, and recent vendor deployments.
- Remediate: Correct SPF, DKIM, alignment, subdomain, forwarding, or vendor configuration issues, then record the change in the ticketing system.
- Review: Check whether the next reporting cycle confirms improvement and close the loop.
A DMARC dashboard should feed the same operating rhythm as other security telemetry. A SIEM can receive normalized events for correlation, while threat-intelligence tooling can enrich unfamiliar IP addresses and domains.
Ticketing should assign owners and deadlines for recurring failures, and incident-response playbooks should use DMARC as an early signal alongside message headers, user reports, and mail-flow logs.
Do not convert every fail result into a malicious verdict. Forwarding, mailing lists, vendor misconfiguration, and incomplete alignment can all produce failures without indicating a cyberattack.
Organizations building a broader phishing response and reporting workflow should keep these layers connected and distinct. DMARC reduces unauthorized use of the organization's domains, while email security controls and employee reporting address the messages that still arrive.
Which DMARC Events Require Alerts and Escalation?
Alerting should focus on change, concentration, and business impact rather than every isolated failure. Establish a baseline for each organizational domain, including normal sending services, approximate volume, authentication pass rates, subdomain behavior, and known forwarding patterns.
Alert when activity departs from that baseline.
High-value alerts include sudden spikes in DMARC failures, a new sending IP with meaningful volume, an unauthorized domain or subdomain, an unexpected policy change, a new DKIM selector, and a sustained decline in compliant volume.
A sharp increase in messages marked as rejected or quarantined deserves review because it can indicate either a broken legitimate sender or an attempted impersonation campaign.
Route alerts according to consequence. Email administrators should handle known configuration defects, and security operations should investigate unfamiliar infrastructure or suspicious timing.
Incident response should take ownership when DMARC anomalies align with credential theft, mailbox compromise, spoofing reports, or fraudulent requests. GRC should record material policy exceptions and unresolved ownership gaps.
Every alert should retain the source domain, sending IP, authentication results, disposition, affected volume, first-seen time, owner, and resolution. Those fields give analysts enough context to distinguish a vendor deployment from a coordinated impersonation attempt and create an auditable record of the decision.
Which DMARC Metrics Should Leadership See?
Leadership needs trend data that connects email authentication to exposure and operating discipline. A dashboard should show compliant volume, failed volume, disposition, top sending sources, forwarding behavior, subdomain coverage, and reporting coverage across the organization's domain inventory.
Display both percentages and message counts because a small failure rate can still represent a large number of affected messages.
Use trend lines rather than isolated snapshots. Show whether compliant volume is rising, whether failed volume is concentrated in a known vendor, whether enforcement policies cover priority domains, and whether reporting coverage is declining.
Separate organizational domains from third-party domains, and distinguish approved senders from unknown sources. This separation prevents a single aggregate percentage from hiding a specific risk.
Board and executive reporting should answer four questions:
- Are priority domains protected by an enforced policy?
- Which approved senders remain misconfigured?
- Which unauthorized sources appeared or increased?
- How quickly did owners resolve the issue?
Pair those measures with business context, such as customer communications or payment workflows, so leadership can prioritize remediation by consequence rather than technical volume alone.
A high-volume authentication failure affecting routine newsletters is operationally different from a smaller anomaly targeting a finance domain.
DMARC does not replace human-layer defense. It limits domain impersonation at the authentication layer. Security awareness training teaches employees to question urgent requests, verify payment changes, report suspicious messages, and recognize cyberattacks sent from legitimate or compromised accounts.
Operating both disciplines together gives security leaders a clearer view of where domain protection ends and human judgment begins.
How Should Organizations Manage DMARC Reporting Across Domains, Subdomains, and Delegated Senders?
DMARC reporting across a complex organization begins with a complete inventory of domains, subdomains, brands, acquisitions, and third-party senders. Build one authoritative catalog, assign every sender to a business owner, and review reporting coverage separately from policy enforcement.
Missing reports, uneven report volume, and undocumented exceptions are governance signals that require investigation before anyone concludes that a domain is protected.
1. Build a Complete Domain Inventory
List every organizational domain and subdomain that can appear in a visible From address. Include regional domains, legacy acquisition domains, campaign domains, support domains, and parked domains.
Record the owning business unit, registration status, mail purpose, DNS administrator, approved sending platforms, and whether the domain sends mail, receives mail, or exists only for brand protection.
Map each domain to its DMARC record and reporting destination. The catalog should show whether aggregate reporting is enabled, which policy applies, when the record was last reviewed, and whether the domain inherits policy from its organizational domain.
The Internet Engineering Task Force's DMARC specification defines how organizational domains, subdomains, reporting addresses, and policy discovery interact.
Keep the inventory in a controlled system rather than a spreadsheet maintained by one administrator. Durable ownership must survive staff changes, acquisitions, DNS provider migrations, and reorganizations.
Include domains that do not send mail. A non-sending domain still needs an intentional posture because cyberattackers can spoof it, while an abandoned acquisition domain can remain attractive for impersonation.
Mark each inactive domain as protected, delegated for future use, or scheduled for retirement, and document the evidence supporting that status.
2. Separate Subdomain and Delegation Controls
Subdomains require an explicit policy decision because a marketing, regional, or transactional subdomain can carry different operational risk from its parent domain. Decide whether each subdomain inherits the organizational-domain policy or receives its own DMARC record.
A finance-related invoicing subdomain might require stricter change control than a low-volume event subdomain, although both belong in the catalog.
Delegated senders create the largest ownership gap. Email service providers, customer relationship management systems, ticketing platforms, payroll systems, and regional agencies can send on behalf of a brand without belonging to the security team.
Track each sender by business owner, contract, purpose, authentication method, aligned domain, return-path behavior, and offboarding date.
Do not approve a vendor because its name appears in an old procurement record. Require the business owner to confirm that the sender remains necessary and that its SPF, DKIM, and DMARC alignment are documented.
Document exceptions at the domain-and-sender level. Each exception should state who approved it, why alignment is unavailable, which messages it covers, the compensating control, and the review date.
Temporary exceptions need an expiration date. Permanent exceptions need executive or risk-owner acceptance because they represent a known gap in the organization's sending authority.
3. Audit Reporting Coverage Continuously
Compare the source catalog with actual DMARC aggregate reports. For every sending domain, confirm that expected reports arrive from participating recipient domains, identify the reporting organizations, and reconcile observed source IPs with approved senders.
A report count is a poor proxy for coverage because mailbox providers vary in reporting frequency and visibility.
Separate report volume from enforcement results. A high-volume domain will produce more reports than a regional domain with occasional mail, so raw counts cannot be compared directly.
Measure coverage against expected message volume, known recipient mix, and business activity.
Investigate sudden reporting changes after a campaign launch, DNS change, vendor migration, or acquisition integration. A new source can indicate an undocumented sender, while a missing source can indicate a broken configuration or a change in recipient reporting behavior.
Run a quarterly coverage audit and an event-driven audit after every domain acquisition, sender onboarding, or infrastructure change. Reconcile the catalog, DNS records, vendor register, and received reports, then assign unresolved sources to business owners.
Publish exceptions and stale ownership records to the risk register. DMARC reporting becomes useful governance when every unexplained sender has an owner and a deadline.
How Does DMARC Reporting Fit Into a Broader Human-Layer Security Program?
DMARC reporting explained in practical terms starts with a boundary. DMARC verifies whether email claiming to come from a protected domain passes alignment checks, gives receiving systems policy instructions, and provides senders with authentication visibility.
That reduces domain spoofing. It does not authenticate a phone call, SMS, deepfake video or malicious message sent from a legitimate account.
DMARC reporting and cybersecurity awareness training must operate as complementary controls that cover different ground. CISA's 2025 Cybersecurity Performance Goals address email protections and user-focused practices separately because each control protects a different part of the attack path.

What Does DMARC Reporting Cover?
DMARC reporting covers the email domain and authentication layer. Aggregate reports show which sending systems claim to use the protected domain and whether messages pass or fail SPF and DKIM alignment.
Forensic reports, where enabled and legally appropriate, provide more detail about individual failures.
Security teams can use those signals to identify unauthorized senders, misconfigured vendors, spoofing attempts and domains that need stronger policy enforcement. That visibility improves domain protection, although a message that fails DMARC is not automatically harmless, and a message that passes DMARC is not automatically trustworthy.
A cyberattacker using a compromised employee account, an approved third-party mail service or a lookalike domain can still deliver a convincing request. CISA's 2025 guidance distinguishes email protections from broader user-focused practices, reinforcing the operational boundary between authenticating a sender and assessing whether a request is safe.
DMARC also protects an organization's domain reputation and helps receiving mail systems decide what to do with unauthenticated messages.
It does not inspect a voice call from an apparent executive, validate a payment instruction sent through SMS or determine whether a legitimate mailbox has been compromised. Those decisions require identity verification procedures and trained judgment.
What Does Employee Training Cover?
Security awareness training covers the human decision layer that DMARC cannot reach. Employees learn to slow down when a request combines urgency, authority and financial consequence, and to verify unusual instructions through a separate trusted channel.
They also learn to identify spear phishing and business email compromise (BEC), then report suspicious messages instead of silently deleting them.
A modern program also addresses vishing, smishing, QR-code phishing and AI-generated impersonation. Cyberattackers can shift from email to voice, text or video when one channel becomes harder to exploit, so employees need practice across the channels they use at work.
A finance employee who receives an authenticated email from a real vendor still needs to question a sudden bank-account change. An executive assistant who receives a convincing vishing call still needs to follow a callback procedure.
A team member who joins a deepfake video meeting still needs permission to pause a transfer until independent verification succeeds.
Training should treat these events as practice opportunities that build recall, and a failed simulation identifies a behavior to rehearse rather than a careless employee.
Useful rehearsals include checking the reply-to address, refusing an unplanned payment request or reporting a suspected account takeover. Role-specific phishing simulations connect those rehearsals to the channels and decisions employees actually face.
How Can Teams Use Both Signal Sets Together?
DMARC reports and human-risk signals become more valuable when security teams analyze them as related but distinct evidence. A sustained increase in failed DMARC reports from a supplier's domain should trigger vendor-verification guidance for procurement and finance teams.
Repeated reports of lookalike executive messages should prompt a focused refresher on BEC and out-of-band verification.
A rise in employees reporting suspicious messages, combined with fewer unsafe clicks or payment exceptions, indicates stronger behavior rather than poor employee performance. Use these signals to target education without naming or shaming individuals.
DMARC reporting can identify attack themes and sending infrastructure appearing around the organization. Simulations, employee reports and incident reviews can show which roles need more practice.
Security leaders can assign focused microlearning, update verification procedures and measure whether reporting speed and safe decisions improve over time.
The layers divide cleanly. DMARC reduces fraudulent use of organizational domains, email security controls and incident response contain messages that still arrive, and employees recognize manipulation across email, phone, SMS and video.
Together, these layers close more of the human attack path than any single authentication policy, while the detail in aggregate and forensic reports keeps the domain layer measurable.
What Are the Best Practices for DMARC Reporting?
DMARC reporting works when teams treat reports as an operating signal that someone reviews and acts on. The core practices are to inventory legitimate senders, centralize aggregate XML data, investigate authentication failures, and move toward enforcement only after authorized mail passes reliably.
The New Zealand Digital Government 2025 Secure Government Email Deployment Guide recommends staged deployment supported by continuous report analysis.
How Do Teams Improve DMARC Report Data Quality?
Data quality determines whether DMARC reporting produces decisions or noise. Catalog every approved sender, including marketing platforms, payroll systems, customer support tools, cloud applications, regional services, and third-party vendors.
Record the domain or subdomain in the visible From address, sending infrastructure, SPF authorization, DKIM alignment, business owner, and expected volume.
Send aggregate reports to a dedicated reporting destination rather than an employee's normal inbox. A specialized mailbox or reporting platform separates XML files from operational email and combines reports from Gmail, Microsoft 365, and other receiving providers for consistent analysis.
The New Zealand Digital Government guide recommends automated collection and parsing because manual review does not scale beyond a small number of domains.
Analyze patterns over time instead of isolated failures. A single failed message can result from forwarding, a new vendor, or a temporary configuration change.
A sudden spike from one source, a newly observed sending IP, or repeated SPF and DKIM failures across multiple receivers requires investigation. Use DMARC reporting and authentication visibility to track pass rates, unauthorized sources, and remediation progress.
How Should Organizations Protect DMARC Reporting Data?
DMARC reports reveal mail infrastructure, sending providers, recipient domains, message counts, and authentication results, so access controls are essential. Restrict the reporting mailbox and analysis platform through least-privilege roles, strong authentication, retention rules, and audit logging.
Treat report files as security telemetry that deserves the same handling as other sensitive operational records.
RUF, or failure reports, require stricter handling than aggregate reports. They can contain message headers or other information connected to individual emails, so enable forensic reporting only when its investigation value justifies the additional exposure.
Define who can access RUF data, how long it is retained, whether sensitive fields are redacted, and how incidents involving personal information are handled.
Document exceptions instead of allowing them to become permanent blind spots. A vendor that cannot support aligned DKIM, a legacy application that sends through a fixed IP, or a subdomain with a separate business owner should have a named owner, business reason, compensating control, and review date.
This record prevents teams from weakening policy indefinitely to accommodate undocumented senders.
How Do Organizations Continuously Improve DMARC Compliance?
Continuous improvement turns DMARC reporting into a measurable control. Establish a baseline for authenticated legitimate mail, review weekly during rollout, and move to monthly reviews after the environment stabilizes.
Measure the percentage of aligned messages, the number of unauthorized sources, the volume of quarantine or reject outcomes, and the time required to resolve newly discovered failures.
Test one change at a time. Update SPF, DKIM, or vendor authorization, send representative messages, confirm the results in aggregate reports, and monitor at least one reporting cycle before making another policy change.
Monitor subdomains separately because a secure parent-domain policy does not prove that every subdomain has the same sender inventory or alignment behavior.
Use this implementation checklist:
- Inventory every legitimate sender and assign an owner.
- Use a dedicated rua destination and validate external authorization.
- Aggregate XML reports before analysis.
- Prioritize high-volume and newly observed failures.
- Protect RUF data with restricted access and defined retention.
- Document exceptions, testing results, and review dates.
- Track compliance trends across domains and subdomains.
- Progress deliberately from monitoring to quarantine, then enforcement.
Collect, normalize, inventory, investigate, test, measure, and tighten policy gradually. That discipline turns raw XML into a policy decision, and the decision depends on understanding what each DMARC report type reveals.
DMARC Reporting FAQs
How Long Does It Take to Start Receiving DMARC Reports After Publishing a rua Record?
Aggregate reports typically begin arriving within 24 to 48 hours after a valid rua record is published, although some receivers deliver on their own schedules.
Google describes aggregate reports as periodic feedback sent to the address in the DMARC record, while RFC 7489 defines the reporting mechanism and delivery expectations. Delays can result from DNS propagation, malformed syntax, missing external authorization or low outbound volume.
The first report is an initial signal, and several reporting cycles are needed before the sender inventory is complete.
How Many DMARC Reports Can a Domain Receive Each Day?
A domain can receive anywhere from zero to hundreds or more DMARC reports per day, because report volume depends on recipient organizations, message volume, source diversity, and each receiver's reporting behavior.
A DMARC report does not correspond to a single message. It usually summarizes authentication results for a reporting interval and recipient organization, so a single report can represent thousands of messages.
High-volume senders should route reports to a parsing service rather than a human-monitored mailbox.
Does Gmail Send DMARC Forensic Reports?
No. Gmail does not support the DMARC ruf tag used to request forensic, or failure, reports, according to Google Workspace administrator guidance.
Gmail can send aggregate reports when a domain publishes a valid rua destination, and it provides no message-level forensic feedback through ruf. A missing Gmail forensic report therefore does not prove that no authentication failures occurred.
Can DMARC Reports Be Sent to a Domain the Organization Does Not Own?
Yes. DMARC reports can be sent to an external domain, although the receiving domain must explicitly authorize that destination through the external-reporting verification process.
The DMARC specification requires a DNS authorization record at the reporting domain before a receiver sends reports across organizational boundaries. For example, a domain that publishes rua=mailto:dmarc@reports.example.net gains reports only after reports.example.net publishes the matching authorization record.
What Retention Period Is Appropriate for DMARC Reports and Forensic Data?
A practical retention baseline is 12 months for aggregate DMARC reports and 30 to 90 days for forensic data, adjusted for investigation needs, privacy obligations, and internal policy.
Aggregate reports support year-over-year comparisons, sender-inventory reviews, and enforcement decisions. Forensic reports deserve shorter retention because message-level content can expose headers, subjects and recipient details.
Organizations in regulated sectors should confirm the schedule with privacy and legal teams before storing forensic data.
Strengthen Human-Layer Protection Beyond Email Authentication
DMARC reporting reveals unauthorized sending and authentication failures, and it does not address every social-engineering message or impersonation attempt that reaches employees.
Adaptive Security's Security Awareness Training gives teams targeted practice recognizing phishing, BEC, vishing, smishing, and deepfake-enabled attacks. Take the self-guided Security Awareness Training tour to see how the platform builds those behaviors.
As experts in cybersecurity insights and AI threat analysis, the Adaptive Security Team is sharing its expertise with organizations.


