DKIM: no key for signature Email / SMTP Origin: Network Last updated 4 Nov 2026

DKIM: dkim=permerror (no key for signature) / key not found in DNS selector._domainkey

The message is signed with a selector, but the receiver found no DKIM public key in DNS at that selector, so verification cannot proceed.

Exact message you may see dkim=permerror (no key for signature)no key for signatureDKIM key not found in DNSdkim=neutral (no key)DKIM-Signature selector _domainkey not found
Seen on: SMTP Linux

Meaning

DKIM keys live in TXT records at <selector>._domainkey.<domain>. If the record is missing, wrong selector, not yet propagated, split badly (long 2048-bit keys need correct quoting) or at the wrong domain, signature checking fails. Compare s= and d= in the DKIM-Signature header with your DNS.

Common causes

  • Selector in DKIM-Signature differs from the published record
  • Record not yet propagated
  • Public key truncated or split incorrectly
  • Published under the wrong domain/subdomain
  • Provider rotated keys and old records were deleted

⚡ Quick fix

  1. Read s= and d= from the signature, query selector._domainkey.domain
  2. Re-publish the exact key from your provider
  3. Wait for TTL and recheck

Detailed fix by platform

Linux

  1. dig +short TXT selector1._domainkey.example.com should return v=DKIM1; k=rsa; p=...

How to diagnose

  1. Selector — s= value in header?
  2. DNS — Record exists at that name?
  3. Key — Complete public key?

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: Network. Errors that are often confused with or caused by this one (click to open):

550 5.7.25 PTR record required — SMTP: 550-5.7.25 The IP address sending this message does not have a PTR record setup, or the corresponding forward DNS entry does not point to the sending IP (Email / SMTP)550 5.7.25 PTR record…550 5.7.26 — 550 5.7.26 This mail has been blocked because the sender is unauthenticated (SPF/DKIM/DMARC) (Email / SMTP)550 5.7.26cURL error 6 — cURL error 6: Could not resolve host: api.example.com (PHP)cURL error 6DKIM: body hash did not verify — DKIM: dkim=fail (body hash did not verify) / signature verification failed (Email / SMTP)DKIM: body hash did n…DMARC: no record found — DMARC: dmarc=none (no DMARC record found for example.com) — bulk sender requirements not met (Email / SMTP)DMARC: no record foundNo MX record / Domain not found — SMTP: 550 5.1.2 Domain not found / 554 5.4.4 Unable to resolve MX / Host or domain name not found (Email / SMTP)No MX record / Domain…Postfix: Host or domain name not found — Postfix: status=deferred (Host or domain name not found. Name service error for name=example.com type=A: Host not found, try again) (Email / SMTP)Postfix: Host or doma…SPF fail / softfail: sender IP not authorized — SPF: Received-SPF: softfail (google.com: domain of transitioning bounce@example.com does not designate 203.0.113.5 as permitted sender) (Email / SMTP)SPF fail / softfail: …DKIM: no …

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.