DMARC for marketing platforms
Klaviyo branded sending domains use NS records (dynamic routing) or CNAME records (static routing) on a sending subdomain, plus a TXT verification record at your root.
No SPF value to copy for this platformThe article lists no SPF include. Do not invent one; check your reports for SPF results on the sending subdomain.
km1._domainkey.example.com CNAME km1._domainkey.<n>.klaviyodns.com
km2._domainkey.example.com CNAME km2._domainkey.<n>.klaviyodns.comThat is the static routing shape, and the actual values for your account differ. A second domain of the same type uses the next pair, such as km3/km4.
send.example.com CNAME <n>.klaviyodns.comsend.example.com NS ns1.klaviyo.com, ns2.klaviyo.com, ns3.klaviyo.com, ns4.klaviyo.comexample.com TXT klaviyo-site-verification=<public API key>Values in angle brackets are specific to your account. Copy the real ones from Klaviyo rather than from this page.
v=DMARC1; p=none; rua=mailto:<your-business-id>@mail.yourdmarc.online, or build it with the DMARC generator. Delivery does not change at this stage.p=quarantine when your legitimate mail passes, and watch the reports for anything you missed.p=reject with sp=reject. Read the enforcement guide for what tends to break, and keep monitoring afterwards.Taken from Klaviyo's own documentation, checked on 1 November 2026. Providers change these, so their setup screen wins over this page.
Check a real message against the Gmail, Yahoo and Outlook.com sender rules, or test whether a stranger can send mail as your domain. Both are free.
Not a record you publish in Klaviyo's setup article. The article lists no SPF include. Do not invent one; check your reports for SPF results on the sending subdomain.
km1/km2 marketing, kt1/kt2 transactional, ks1/ks2 service (legacy static domains: kl1/kl2). That is the static routing shape, and the actual values for your account differ. A second domain of the same type uses the next pair, such as km3/km4.
Only once a passing SPF or DKIM result is on your From domain or its organizational domain. Add the records at your root domain's DNS provider. You do not create the subdomain first.
Start at p=none with a rua address, finish the Klaviyo setup, then read your reports. Confirm flows and campaigns align from the branded domain, and move to enforcement on your own root policy. Klaviyo's generated record stays at p=none. Move to p=quarantine, then p=reject, once your legitimate mail passes.
Download to read the eBook