InputTestHub

DMARC Record Generator

Builds a DMARC record with policy, reporting addresses and alignment, and warns when reports will silently never arrive.

Developer Nothing uploaded No sign-up Free, unlimited
Developer tool
Optional, rarely sent, and may contain message content.
Fill in the fields and press Generate.
In short A DMARC record is a TXT record published at _dmarc.yourdomain that tells receivers what to do when a message fails both SPF and DKIM alignment, and where to send reports. The minimum useful record is v=DMARC1; p=none; rua=mailto:you@yourdomain.com — p=none blocks nothing and only asks for the daily aggregate reports that show who is sending as you. Move to p=quarantine and then p=reject once those reports are clean. If the rua address is on a different domain, that domain must publish an authorisation record or the reports are silently never sent, which is the commonest reason DMARC appears to do nothing.

How to use the DMARC Record Generator

  1. Enter your domain and an address for the reports.
  2. Leave the policy at none for the first fortnight.
  3. Publish it as TXT at _dmarc.yourdomain.
  4. Read the reports, fix what fails, then tighten the policy.

About the DMARC Record Generator

The DMARC Record Generator builds a DMARC record with policy, reporting addresses and alignment, and warns when reports will silently never arrive. It runs as plain JavaScript inside the page, which means there is no upload step, no queue and no size limit imposed by a server — the only limit is your own device.

What people use it for

  • Publishing DMARC for the first time, safely.
  • Moving from monitoring to enforcement.
  • Setting a stricter policy on subdomains you never send from.

Details

Publish at_dmarc.yourdomain.com, as TXT
Start atp=none — it blocks nothing
DMARC passes ifSPF or DKIM passes and aligns with the From domain
External reportingNeeds an authorisation record on the receiving domain
pctOnly does anything when the policy is quarantine or reject
The pct tag is the safe way to enforce. Publishing p=quarantine; pct=10 applies the policy to a tenth of failing mail, so a mistake affects a tenth of the damage while the reports still show what would have happened. Raise it as confidence grows.

Where this tool stops

Builds the record. Whether your mail passes depends on SPF and DKIM alignment for each sending service, which only the aggregate reports can tell you.

Frequently asked questions

What does DMARC actually check?
Alignment. SPF authenticates the hidden Return-Path and DKIM authenticates a signing domain, and neither has to match the From address a person reads — which is exactly how spoofing worked. DMARC passes only if SPF or DKIM passes <b>and</b> its domain lines up with the visible From. That link is the whole point of it.
Why do I get no DMARC reports?
Nearly always because the rua address is on a different domain from the one publishing the record. To send reports to <code>dmarc@reporting-service.com</code> for <code>example.com</code>, the reporting service must publish <code>example.com._report._dmarc.reporting-service.com</code> with the value <code>v=DMARC1</code>. Without it, conforming receivers send nothing at all and never say why.
Is p=none pointless?
No — it is the only safe way to start. It blocks nothing and turns on the reporting that tells you which of your own services fail authentication. Publishing p=reject without that fortnight of data is how organisations discover their invoicing system was never signed, by way of customers not being paid.
What is the difference between relaxed and strict alignment?
Relaxed lets a subdomain count: mail signed by <code>mail.example.com</code> aligns with a From of <code>example.com</code>. Strict demands an exact match. Relaxed is the default and is right for almost everyone; strict breaks the moment a service signs with its own subdomain.
Is there a limit on how often I can use the DMARC Record Generator?
It is free, with no account, no trial and no daily cap. Every developer tool on inputtesthub.com works the same way: open the page and use it.
Is what I paste into the DMARC Record Generator stored?
No. The DMARC Record Generator runs entirely in your browser using JavaScript. Your input never reaches inputtesthub.com or any third party — open your browser's Network tab while you use it and you will see no request go out.
When would I actually need the DMARC Record Generator?
The most common reasons people reach for it: publishing DMARC for the first time, safely. Moving from monitoring to enforcement. Setting a stricter policy on subdomains you never send from. It is built for exactly those cases rather than being a general-purpose tool with this bolted on.
What are the limits of the DMARC Record Generator?
Builds the record. Whether your mail passes depends on SPF and DKIM alignment for each sending service, which only the aggregate reports can tell you. Knowing where a tool stops being trustworthy matters more than the cases where it works.
What are the reference figures here?
Publish at is <code>_dmarc.yourdomain.com</code>, as TXT. Start at is <code>p=none</code> — it blocks nothing. DMARC passes if is SPF <b>or</b> DKIM passes <b>and</b> aligns with the From domain. These are printed on the page itself, so you do not have to take them on trust.
Can I use the DMARC Record Generator on mobile?
Yes. The page is responsive and the page works in Chrome, Safari, Firefox, Edge and Samsung Internet on both Android and iOS. There is no app to install and nothing to sign into.

Related developer tools

All 92
01

Cron Expression Generator

Builds a cron expression from plain choices — every N minutes, weekdays only, a specific time…

02

ASCII Table

A searchable ASCII and extended ASCII reference with decimal, hex, octal, binary and HTML…

04

MIME Type Lookup

Finds the MIME type for any file extension and the extensions matching any MIME type.

05

Port Number Lookup

Searchable reference of well-known and registered TCP and UDP ports and the services that use…

07

Random JSON Data Generator

Generates realistic mock JSON data — names, emails, addresses, dates, prices — from a schema…

09

HTML Entity Lookup

Searchable table of HTML entities with their named, decimal and hexadecimal forms and a live…

10

Meta Viewport Generator

Builds the correct viewport meta tag for responsive pages and explains what each property does.