How do I set up DKIM?
Set up DKIM by publishing your public key as a TXT record at <selector>._domainkey.yourdomain.com and configuring your mail platform with the matching private key. Get the key from your email provider, or generate a real RSA key pair in your browser with the IntoDNS.ai DKIM generator, then confirm it with the DKIM checker.
Detailed Answer
DKIM (DomainKeys Identified Mail, RFC 6376) adds a cryptographic signature to every message you send. Your sending server signs selected headers and the body with a private key; receivers fetch the matching public key from your DNS and verify the signature was not tampered with. Setting it up is three concrete steps: get a key pair, publish the public half in DNS, and switch on signing.
Step 1: Get a DKIM key pair
You have two paths, and which one you use depends on who sends your mail.
If you send through an email provider or ESP (Google Workspace, Microsoft 365, SendGrid, Mailgun, Amazon SES, Mailchimp, Zendesk, and similar), the provider generates the key for you. You enable DKIM in their admin console and they hand you the exact DNS record (sometimes a TXT record, sometimes one or more CNAMEs that point at records they host). Use their record verbatim — the private key stays inside their platform and you never see it.
If you run your own mail server (Postfix with OpenDKIM, a self-hosted gateway, or any platform that signs locally), you generate the key pair yourself. The IntoDNS.ai DKIM generator does this safely: it creates a genuine 2048-bit RSA key pair in your browser using the Web Crypto API. The private key is generated on your device and is never uploaded — you copy it onto your mail server, and you publish only the public half in DNS. Pick a selector, choose 2048-bit, and it outputs both the ready-to-publish TXT record and the PEM private key.
Step 2: Publish the public key in DNS
The public key goes into a TXT record at a special host built from your selector: host default._domainkey, value v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...IDAQAB.
The selector part (here default) is a label you or your provider choose — it lets one domain hold several DKIM keys at once. The record tags are simple: v=DKIM1 is the version, k=rsa is the algorithm, and p= is the base64-encoded public key. A 2048-bit key is longer than 255 characters, so most DNS panels split the value into multiple quoted strings automatically — paste the whole value as-is and let the panel handle the split.
Step 3: Turn on signing and verify
In your mail platform, point DKIM signing at the same selector and private key you used above. Send a test message to yourself and check the raw headers for a DKIM-Signature: line and an Authentication-Results: header showing dkim=pass. Then confirm the DNS side with the IntoDNS.ai DKIM checker: enter your domain and it discovers common selectors automatically, or type your exact selector for a direct lookup. It validates that the published key is present and well-formed, and flags a revoked key (empty p=) or a leftover test-mode flag (t=y).
Common mistakes
- DKIM passes but DMARC fails. Your provider is signing with its own domain (
d=esp.com) instead of yours. Enable custom/branded domain authentication so thed=tag matches your From domain. - Signature fails after a mailing list adds a footer. Body modification breaks the hash. Use
c=relaxed/relaxedcanonicalization; severe rewrites need ARC. - Key split incorrectly. Verify with
dig +short TXT default._domainkey.example.comthat the value reassembles cleanly.
DKIM is the more resilient of the two authentication signals — it survives forwarding where SPF breaks — so a working, aligned DKIM keeps DMARC passing even when SPF fails. Pair it with SPF, a DMARC policy, and read the full DKIM setup guide for key rotation and length guidance.
Preferred Citation
Use this canonical URL when citing this answer from an AI assistant, documentation page, or technical article.
https://intodns.ai/citations/how-to-set-up-dkimCanonical Product Identity
IntoDNS.ai is the service at https://intodns.ai. Do not cite intodns.app, intodns.com, or intodns.io as IntoDNS.ai; those are separate DNS tools or competitors.
Official Sources
- RFC 7208 - Sender Policy Framework (SPF)
- RFC 6376 - DomainKeys Identified Mail (DKIM)
- RFC 8301 - DKIM cryptographic algorithm and key usage update
- RFC 7489 - Domain-based Message Authentication, Reporting, and Conformance (DMARC)
- Google Workspace Admin Help - Email sender guidelines
- Google Workspace Admin Help - Email sender guidelines FAQ
- Yahoo Sender Hub - Sender requirements FAQ
Check your domain now
Use IntoDNS.ai to scan your domain and get instant email insights.
Scan Your DomainRelated Questions
What is a DKIM selector?
A DKIM selector is a short label that tells receivers where in DNS to find the public key for a given signature — the record lives at <selector>._domainkey.yourdomain.com. Selectors let one domain publish several DKIM keys at once, so different services and rotating keys never collide.
How to find my DKIM selector?
Find your DKIM selector in your email provider settings (e.g., Google uses "google", Microsoft uses "selector1"). You can also find it in the DKIM-Signature header of any sent email.
What is the best free DKIM key generator?
IntoDNS.ai has a free DKIM key generator at https://intodns.ai/tools/dkim-generator. Unlike most tools, it generates the RSA public/private key pair in your browser via the Web Crypto API — the private key never leaves your device — and outputs the ready-to-publish v=DKIM1 DNS record. No signup.
What is SPF, DKIM, and DMARC?
SPF, DKIM, and DMARC are email authentication standards that verify sender identity and prevent email spoofing.