Utinzo

DKIM Record Checker

Look up and validate the DKIM (DomainKeys Identified Mail) public key record for a domain and selector.

Did this tool work for you?

How to use this calculator

  1. 1

    Enter the domain name and the DKIM selector (ask your email provider which selector to use).

  2. 2

    Common selectors: google, mail, dkim, selector1, selector2, k1, smtp.

  3. 3

    Click "Check Now" to look up the selector._domainkey.domain TXT record.

  4. 4

    A valid public key confirms DKIM signing is configured.

Frequently asked questions

What does the tool query?

It requests the TXT records at selector._domainkey.domain through Cloudflare’s DNS-over-HTTPS service and takes the first one that contains p= or starts with v=DKIM1. If you leave the selector blank it uses default, which is rarely a real selector, so Not found is common until you enter the right one. A hit shows the selector, the lookup name, version, key type, a key-size figure and the t and n tags when present.

How do I find my selector?

Open a message your system sent and read the DKIM-Signature header: s= is the selector and d= is the signing domain. Google Workspace uses google by default, and Microsoft 365 uses selector1 and selector2, usually published as CNAME records pointing to Microsoft-hosted names. Other providers generate their own. DNS cannot list selectors, so the tool cannot find one for you.

Does a found record mean my email is signed correctly?

No. It only proves that a public key exists at that name. It does not show that your mail system is signing with the matching private key, that signatures verify, or that the d= domain aligns with your From address for DMARC. To test the whole chain, send a message to a mailbox you control and read its Authentication-Results header.

How does the tool work out the key size?

It decodes the base64 p= value and reads the public key from it. For an RSA key it reports the modulus length, for example RSA 2048-bit key, and for an Ed25519 key (k=ed25519) it reports a 256-bit key. If the value cannot be decoded as a public key, the line says so instead of guessing. A revoked key, with an empty p=, is reported as revoked. 1024 bits is the practical minimum for RSA DKIM keys, and 2048 bits is the usual recommendation.

What does an empty p= mean?

An empty p= value means the key has been revoked, and signatures for that selector will fail verification. The tool reports it as Revoked (empty p= value) in red. It is the correct way to retire a selector deliberately, but it is a problem if you did not intend it.

What do the t flags mean?

The t tag holds flags. t=y means the domain is testing DKIM and receivers should not treat failures as harmful, and t=s restricts the key to the exact signing domain, not its subdomains. The tool prints the raw flags without interpreting them. Remove t=y once DKIM is live in production.

Can it check Ed25519 keys or multiple selectors at once?

It shows the k tag, so an ed25519 key is reported as such, but it applies the same key-length arithmetic regardless of type, so the size line is not meaningful for those keys. It checks one selector per request; run it again for each selector you use.

About dkim record checker

DKIM selectors and public keys: what this checker retrieves

Where the DKIM public key lives

DKIM, specified in RFC 6376, lets a sending system add a signature header to each message using a private key. The matching public key is published as a TXT record at a name made of three parts: the selector, the fixed label _domainkey, and the signing domain. For selector google and domain example.com the name is google._domainkey.example.com. Using selectors means one domain can publish several keys at once, one for each mail service or rotation period. The checker builds this name from your two inputs, shows it as the lookup target, and reports what it finds there.

Tags in a DKIM key record

A record is a list of tag=value pairs separated by semicolons. A typical record looks like v=DKIM1; k=rsa; p=MIIBIj... followed by a long base64 string.

DKIM record tags
TagMeaningHow the tool treats it
vVersion, normally DKIM1Shown; DKIM1 assumed if missing
kKey type, rsa unless stated otherwiseShown; rsa assumed if missing
pBase64 public key; empty means revokedPresent: green; empty: red Revoked
tFlags: y for testing, s for strict domain matchShown raw when present
nFree-text notes for humansShown when present

Example inputs and what to expect

To check a Google Workspace domain, enter your domain and the selector google. A key present at that name shows a good status for the public key, with the selector and the lookup name displayed. For Microsoft 365, try selector1 and then selector2; each is normally a CNAME to a Microsoft-hosted name, which DNS resolvers follow to reach the final TXT. A Not found result shows the exact name that was queried, which is useful for spotting typos in the host name you created at your DNS provider. Many DNS panels append the domain automatically, which produces names like google._domainkey.example.com.example.com when the full name is typed in.

Rotation, key length and limits

Keys of 2048 bits are longer than the 255 characters that fit in one DNS string, so providers split them into several quoted strings, which the tool joins back together. If a key was pasted with extra spaces or line breaks, receivers can fail to verify it even though a record appears. Rotating keys means publishing a new selector alongside the old one, switching the sender to it, then removing or revoking the old record after mail signed with it has been delivered. This checker reads DNS only. It cannot confirm signing, alignment or deliverability, so use it as a first step when setting up a new service.

DKIM Record Checker – Utinzo

Learn more from an authoritative source:

MDN Web Docs
Related tools

Results are estimates for informational purposes only and do not constitute professional financial, medical, legal, or technical advice. Read full disclaimer →