Skip to content

DMARC report analyzer

Open a DMARC aggregate report (.xml, .gz or .zip) and see who sends as your domain.

In your browser

What you enter, paste or load stays on this page and is never sent to us.

Open a DMARC aggregate report

The attachment from the rua= address: .xml, .xml.gz or .zip, as receivers send them. You can choose several at once.

or drop it here

Runs in your browser. Nothing you paste leaves this page.

Or paste the XML

The analyzer reads the report with JavaScript, which is off in this browser.

What is a DMARC aggregate report?

A DMARC aggregate report is the XML file a mailbox provider sends to the address in your record's rua= tag, usually once a day. It lists each IP address that sent it mail with your domain in the From field, how many messages, and whether SPF and DKIM passed and aligned. Its format is in RFC 7489 and RFC 9990.

Reading the result

Choose the report file or paste its XML. The analyzer reads .xml as it is, inflates .gz with your browser's own decompression and opens .zip archives itself, then shows the reporter, the dates in UTC, the policy it found published, totals with the share passing DMARC, and every source IP with its count, disposition and results. Nothing is uploaded.

Common problems it finds

  • A source you do not recognise

    An IP sending as you that fails both checks is either a service you forgot (a CRM, a helpdesk, an invoicing tool) or someone spoofing your domain. Find out which before you move to quarantine or reject.

  • SPF passes, and does not align

    The raw result says SPF passed for the service's own domain while policy_evaluated says fail: its bounce domain is not yours. Set up a custom return path, or rely on aligned DKIM.

  • DKIM passes for the platform’s domain

    The raw DKIM result is a pass for d= the platform's domain. Until the platform signs with your domain, that mail fails DMARC.

  • Forwarded mail failing

    Mail forwarded by a list or a mailbox rule often fails SPF, and fails DKIM too if the content was changed. Reporters can mark it with a mailing_list or trusted_forwarder override; RFC 9990 dropped the older forwarded value.

Beat · paid monitoring

A heartbeat for your email.

Beat runs every check on this site on a schedule: 41 checks, 25 blacklists and real inbox placement. The moment something breaks, it tells you what broke, why it matters, and the exact fix.

example.comWatching
  • SPFpass
  • DKIMpass
  • DMARCp=none
  • Blacklists0 of 25

Illustrative. Your domain, every few hours.

Also from us:Pulse: your own sending infrastructureConsulting: $65/hr, no retainer