DKIM (DomainKeys Identified Mail) adds a digital signature to your emails, allowing receiving servers to verify that the message hasn't been tampered with and truly came from your domain.
Unlike SPF which checks the sending server, DKIM signs the email content itself. Here's how it works:
Using a private key, the server creates a unique hash of the email headers and body.
A DKIM-Signature header is added containing the signature and selector name.
Using the selector in the signature, it queries selector._domainkey.yourdomain.com.
The public key decrypts the signature to verify the email hasn't been modified.
If we couldn't find any DKIM records, your emails aren't being signed. This doesn't prevent delivery, but it weakens your email authentication and can hurt deliverability, especially when combined with DMARC.
DKIM setup is a two-step process:
The exact steps depend on your email provider. See the provider-specific guides below.
A DKIM record is published at:
selector._domainkey.yourdomain.comAnd looks like:
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC...v=DKIM1 — Version (required)k=rsa — Key type (usually RSA)p=... — The public key (base64 encoded)t=s — (Optional) Strict mode, domain must match exactlyA revoked DKIM key has an empty public key (p=). This tells receiving servers that the key is no longer valid, causing DKIM verification to fail for any email signed with that selector.
Each email provider has their own DKIM setup process. Here are guides for the most common providers:
google._domainkeyabc123) instead of common ones. If SES shows DKIM as "verified" in your console, your emails are being signed correctly. You can also verify by sending a test email and checking the headers for dkim=pass.After making changes, use our checker to confirm everything is configured correctly.