Back to Help Center
EMAIL AUTHENTICATION August 5, 2026 · 6 min read

How to Check Email Authentication (SPF, DKIM, DMARC)

DomainScan's email authentication report checks your SPF, DKIM, and DMARC records in one pass, identifies misconfigurations, and explains what each finding means for your email deliverability and spoofing protection.

Good email authentication requires all three components — SPF, DKIM, and DMARC — to be correctly configured and aligned. DomainScan checks all of them in one report.

Running the Check

Navigate to /domain/email and enter any domain. The checker:

  1. Fetches the SPF TXT record from DNS
  2. Probes for DKIM records using common selectors
  3. Fetches the DMARC record from _dmarc.domain.com
  4. Evaluates alignment and policy strength
  5. Returns a plain-English summary with specific findings

Reading the SPF Section

Status: Pass

Your SPF record is syntactically valid, doesn’t exceed the 10-lookup limit, and includes at least one IP range or include mechanism.

Status: Warning

Common warnings:

  • ~all qualifier instead of -all — soft-fail allows some spoofing through spam filters
  • Lookup count near the 10-limit — at risk of PermError if sending services add IPs
  • ?all (neutral) — provides no protection at all

Status: Fail

Common failures:

  • No SPF record found
  • SPF record exceeds 10 DNS lookups (PermError)
  • SPF record has a syntax error
  • Multiple SPF TXT records at the same domain (PermError — only one allowed)

How to fix multiple SPF records: merge all mechanisms into a single record:

; Wrong — two separate TXT records:
example.com  TXT  "v=spf1 include:_spf.google.com ~all"
example.com  TXT  "v=spf1 include:sendgrid.net ~all"

; Correct — single merged record:
example.com  TXT  "v=spf1 include:_spf.google.com include:sendgrid.net ~all"

Reading the DKIM Section

DKIM records aren’t automatically discoverable — they live at selector._domainkey.domain.com and you must know the selector. DomainScan probes these common selectors automatically:

  • google (Google Workspace)
  • mail, default, dkim (common defaults)
  • s1, s2, k1 (SendGrid, Mailchimp)
  • selector1, selector2 (Microsoft 365)

Status: Pass

At least one valid DKIM record found with a parseable public key.

Status: Warning

  • Key uses 1024-bit RSA — should upgrade to 2048-bit or Ed25519
  • t=y flag present — DKIM is in test mode, failures aren’t enforced
  • Key looks valid but selector was a common guess — confirm your actual selector

Status: Not Found

No DKIM records found on common selectors. Either:

  • DKIM isn’t set up (most likely)
  • You use a non-standard selector — enter it manually
  • Key was revoked (empty p= field)

Entering a Custom Selector

If your email provider uses a non-standard selector (e.g., smtp2go, em1234, scph1220):

  1. Find your selector in your email provider’s DKIM settings
  2. Enter it in the “Custom selector” field in DomainScan’s email checker
  3. The full record name will be: yourselector._domainkey.yourdomain.com

Reading the DMARC Section

Policy Strength

PolicyProtectionRecommended?
p=rejectFull — spoofed email is rejectedYes — end goal
p=quarantinePartial — spoofed email goes to spamAcceptable step
p=noneNone — monitoring only, no enforcementOnly during setup
MissingNo protectionNo — add immediately

Alignment

DMARC alignment check — requires either:

  • SPF: envelope sender (Return-Path) domain aligns with From: domain
  • DKIM: signing domain (d=) aligns with From: domain

If neither aligns, even a valid SPF and DKIM won’t produce a DMARC pass.

Reporting

If rua= is missing, you receive no aggregate reports — you can’t see who’s sending email using your domain. Always add rua=mailto:dmarc@yourdomain.com or use a third-party DMARC reporting service.

Overall Authentication Score

DomainScan gives an overall score (0-100) based on:

  • SPF present and valid (20 pts)
  • SPF -all qualifier (10 pts)
  • DKIM present and valid (25 pts)
  • DKIM key ≥2048 bits (5 pts)
  • DMARC present (20 pts)
  • DMARC p=reject or p=quarantine (15 pts)
  • DMARC rua= reporting set up (5 pts)

A score below 60 means your domain is vulnerable to spoofing. A score of 90+ means you have solid protection.

Checking Third-Party Sending Domains

If you use marketing or transactional email services, check them too:

  • yourdomain.mailchimpsites.com or your custom sending domain
  • Your transactional subdomain: mail.yourdomain.com, em.yourdomain.com

Each subdomain that sends email needs its own SPF, DKIM, and DMARC configuration.

Common Questions

01

My DKIM check fails but I have DKIM set up in my provider. Why?

DKIM records are published at a selector-specific subdomain: selector._domainkey.yourdomain.com. DomainScan probes common selectors (google, default, mail, s1, s2, k1) automatically. If your selector name is non-standard, enter it manually in the selector field. Also check that your email provider has finished setting up signing — some providers take up to 48 hours to activate DKIM after you publish the key.

02

SPF passes but DMARC still fails. What's wrong?

DMARC requires SPF alignment — the domain in the MAIL FROM/Return-Path must match your From: domain. If you're using a third-party sender (e.g., Mailchimp, SendGrid) that uses their own Return-Path domain, SPF will pass on their domain but won't align with your From: domain. The fix: configure DKIM signing from your domain with that service, which provides DKIM alignment instead.

03

What does 'SPF exceeds 10 DNS lookups' mean?

SPF evaluation is limited to 10 DNS lookups by RFC 7208. Each include:, a:, and mx: mechanism triggers a lookup. If your SPF chain exceeds 10, receivers return a PermError which many treat as a hard failure. Fix by replacing include: mechanisms with explicit ip4:/ip6: ranges (SPF flattening), or by removing services you no longer use.