The DNS records
DKIM key (Postmark's example selector)
Type: TXT · Host: 20131031155228pm._domainkey
k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQ…
Your selector carries the date and time your key was created. Copy it from DNS Settings.
Custom Return-Path (for SPF alignment)
Type: CNAME · Host: pm-bounces
pm.mtasv.net
pm-bounces is Postmark's default name; you can choose another, then enter it in the Return-Path section of DNS Settings.
Set it up and turn on signing
- In Postmark, open Sender Signatures and choose DNS Settings (or Add a DKIM DNS record) for your domain.
- Copy the host, which looks like
20131031155228pm._domainkey, and the TXT value. - Create the TXT record at your DNS host and click Verify. Postmark says it verifies within 48 hours.
- Optionally, in the Return-Path section of the same page, add the
pm-bouncesCNAME and verify it.
DMARC alignment
After verification, Postmark signs mail from the domain with DKIM. Without a custom Return-Path, the bounce address is pm_bounces@pm.mtasv.net, and Postmark notes SPF then won't pass for DMARC alignment, so DKIM is the only aligned result until you add the CNAME.
Key length and rotation
Postmark says it uses 1024-bit keys, the minimum RFC 8301 allows. It documents rotation on request rather than on a schedule: the Domains API's rotate call creates a new key and selector, which waits as pending until you publish and verify it, and the API reports when the old record is safe to remove. Because the selector carries a timestamp, the old and new keys never share a name.
Common mistakes
- Shortening the selector. The whole timestamp plus
pmis the selector;pm._domainkeyalone doesn't exist. - Deleting the old record straight after a rotation. Wait until Postmark reports it is safe to remove.
- Stopping at DKIM. Without the Return-Path CNAME, SPF never aligns, so a DKIM failure means a DMARC failure.
Check your Postmark DKIM key
Enter your domain and the selector from your Postmark account. Free, reads public DNS only.
Frequently asked questions
Why does my Postmark DKIM selector look like a date?
Postmark names each key after the moment it was created, for example 20131031155228pm. A rotated key gets a new timestamp, so old and new records can be published side by side without clashing.
Do I need the Postmark Return-Path record if DKIM passes?
Not for DMARC to pass, since an aligned DKIM signature is enough. But without it, SPF can't align, so any DKIM failure becomes a DMARC failure. Adding the pm-bounces CNAME gives you a second aligned check.
What DKIM key length does Postmark use?
1024 bits, according to Postmark's DKIM article. Rotation is on request through its Domains API, which issues a new key under a new timestamped selector and tells you when the old record can go.
Sources
- Postmark Support: How do I set up DKIM for Postmark?
- Postmark Support: How do I add a custom return-path?
- Postmark Developer Docs: Domains API
- RFC 6376: DomainKeys Identified Mail (DKIM) Signatures
- RFC 8301: Cryptographic Algorithm and Key Usage Update to DKIM
Checked against Postmark's documentation on October 9, 2026. Providers change their setup screens; if yours differs, follow the values your admin console shows.
DKIM records for other providers
- Microsoft 365CNAME: selector1, selector2
- Google WorkspaceTXT: google
- Zoho MailTXT: you choose (e.g. zoho)
- GoDaddyCNAME: secureserver1, secureserver2
- FastmailCNAME: fm1, fm2, fm3
- Proton MailCNAME: protonmail, protonmail2, protonmail3
- Amazon SESCNAME or TXT: <token1>, <token2>, <token3> (Easy DKIM), your own (BYODKIM)
- SendGridCNAME or TXT: s1, s2
- MailgunTXT or CNAME: assigned by Mailgun (e.g. pic, krs, smtp), pdk1, pdk2 (Automatic Sender Security)
- MailchimpCNAME: k2 and a second CNAME (Marketing), mte1, mte2 (Transactional)
- BrevoTXT or CNAME: mail (TXT), 2 CNAMEs from your account
- HubSpotCNAME: hs1-<number>, hs2-<number>
- KlaviyoCNAME: km1, km2 (marketing), kt1, kt2 (transactional), ks1, ks2 (service)
- SalesforceCNAME: you choose two (e.g. example-sf-a, example-sf-b)
- ZendeskCNAME: zendesk1, zendesk2
Compare every provider's selectors in one table · SPF record for Postmark
Related guides
How to find a domain's DKIM selector, and check its key
Find a DKIM selector from the s= tag in an email header, see the selectors Microsoft 365, Google Workspace and common senders use, then check the key.
8 min read SPF, DKIM & DMARCHow to rotate DKIM keys without breaking email
How often to rotate DKIM keys, which key length to use, how to name selectors, and how to rotate in Microsoft 365, Google Workspace and on your own server.
9 min read SPF, DKIM & DMARCDKIM "body hash did not verify" and other DKIM failures: causes and fixes
Fix DKIM failures: body hash did not verify, signature did not verify, no key for signature and short keys. Causes from mailing lists to broken TXT records.
9 min readLast updated