Generate your SPF, DKIM and DMARC records
Three DNS records decide whether your email is treated as legitimate or as a forgery. Gmail and Yahoo have required them from bulk senders since February 2024. This generates the exact text to paste, entirely in your browser.
Free · No signup · No email required
Everything is generated in your browser. Your domain is never sent anywhere.
Include your regular mail host too. A domain with only its marketing platform in SPF will fail authentication on ordinary staff email.
Correct starting point. Nothing is blocked; you collect reports for a few weeks and find out what is actually sending as your domain before you enforce anything.
Without this, DMARC tells you nothing — and a policy you cannot measure is a policy you cannot safely tighten.
yourdomain.comValuev=spf1 include:spf.blueyemail.com ~allOne SPF record per domain, never two — multiple SPF records are an automatic failure. If a record already exists, merge the includes into it rather than adding another.
bluey._domainkey.yourdomain.comValueYour DKIM value is generated per account — copy it from Settings → Sending domains in Bluey after you add the domain.DKIM keys are unique to your account and cannot be generated here. Gmail and Yahoo have required DKIM from bulk senders since February 2024, so this record is not optional.
_dmarc.yourdomain.comValuev=DMARC1; p=none; adkim=r; aspf=r; pct=100Start at p=none and read the reports for two to four weeks. Move to quarantine once every legitimate sender passes, and to reject only after that has been stable.
What each record actually does
SPF is a public list of the servers allowed to send email using your domain. A receiving server looks it up and checks whether the message came from one of them. It is a single TXT record on your root domain, and there must only ever be one — two SPF records is an automatic failure, which is a surprisingly common way for a domain to break its own authentication.
DKIM attaches a cryptographic signature to every message, which the receiver verifies against a public key published in your DNS. Where SPF proves the message came from an approved server, DKIM proves the content was not altered in transit. DKIM keys are generated per sending account, which is why this tool cannot produce yours — you copy it from your sending platform after adding the domain.
DMARC ties the two together and tells receivers what to do when a check fails: nothing (p=none), send to spam (p=quarantine), or refuse outright (p=reject). It also asks receivers to send you reports about mail claiming to be from your domain — which is the part that makes the whole system usable, because it shows you who is sending as you.
Start at p=none. This is not optional advice.
The most damaging mistake in email authentication is publishing p=reject immediately because it sounds like the secure choice. It is the destination, not the starting point. Most organisations have more things sending as their domain than they realise — the billing system, the helpdesk, a recruiter tool, a form plugin on the marketing site, an agency sending on their behalf. Enforce before you have found them all and that mail is refused outright, silently, with no bounce anyone will think to look for.
The sequence that works: publish p=none with a report address, read the aggregate reports for two to four weeks, fix or authorise every legitimate sender you find, move to p=quarantine, watch for a further few weeks, then move to p=reject. It takes about six weeks of mostly waiting, and it is the difference between protecting your domain and disabling it.
The SPF lookup limit that catches people out
SPF allows a maximum of ten DNS lookups when evaluating a record. Every include: costs at least one, and several major providers chain to further includes internally, so a record with six or seven includes can quietly exceed the limit. When it does, the record returns a permanent error and most receivers treat that as a failure — meaning an elaborate SPF record can authenticate worse than a simple one. If you are close to the limit, remove providers you no longer use before adding new ones.
After the records are published
DNS changes typically propagate within a few hours, though the published TTL can make it longer. Once they are live, send yourself a test message and check the headers for spf=pass and dkim=pass. If you want the full walkthrough with screenshots for the major DNS hosts, the step-by-step setup guide covers it, and the Gmail and Yahoo requirements page covers what else those two now expect from bulk senders.
Questions
Do I really need all three records?
Yes, if you send bulk email. Since February 2024, Gmail and Yahoo have required SPF, DKIM and a DMARC record from anyone sending roughly 5,000 or more messages a day to their users, along with one-click unsubscribe and a complaint rate under 0.3%. Below that threshold the records are technically optional and still strongly advisable — authentication is one of the largest single factors in whether mail reaches the inbox.
Why can't this tool generate my DKIM record?
DKIM uses a public/private key pair, and the private key has to live with whoever sends your mail. Your sending platform generates the pair and gives you the public half to publish. In Bluey it appears under Settings → Sending domains once you add the domain. Any tool that offers to generate a complete DKIM record for an arbitrary provider is not doing what it claims.
What DMARC policy should I start with?
p=none, with a report address. It changes nothing about how your mail is handled and starts the flow of aggregate reports that tell you what is actually sending as your domain. Tighten to quarantine, then reject, once those reports are clean. Starting at reject is how organisations block their own invoices and helpdesk replies without noticing for weeks.
I already have an SPF record. Do I add a second one?
No — never. Two SPF records on the same domain is an automatic permanent error and both are ignored. Merge the new include into the existing record so there is one line containing all your senders, ending in ~all or -all.
What is the difference between ~all and -all?
~all is a soft fail: mail from an unlisted server is accepted but marked suspicious. -all is a hard fail: it should be rejected. Start with ~all while you confirm every legitimate sender is listed, and move to -all once you are certain. With DMARC enforcing on top, ~all is a perfectly reasonable long-term setting.
Is my domain sent to your servers?
No. The whole tool runs in your browser — the records are assembled from what you type and nothing is transmitted. You can confirm this by opening your browser's network tab while you use it.
Keep exploring
The tool is free. So is the trial.
Seven days of full access, no credit card. Import your list, authenticate your domain, and send a real campaign before you decide anything.