Skip to main content

Resources

SPF, DKIM, and DMARC explained

Authentication does not guarantee inbox placement, but missing or misconfigured records cause filtering, bounces, and spoofing vulnerabilities that bulk campaigns amplify. This guide explains SPF, DKIM, and DMARC in plain language, how they work together, common failure patterns, and how MailFleet operators validate DNS before permission-based sends on Windows, macOS, or Linux.

Why email authentication matters for bulk senders

Mailbox providers receive billions of messages daily. They cannot manually review each one. Authentication signals help automated systems decide whether a message likely came from an authorized sender for the domain in the From address, whether content was altered in transit, and what policy the domain owner wants enforced when checks fail.

Bulk email magnifies small authentication gaps. A single misaligned SPF record might affect dozens of personal notes; it affects thousands of campaign recipients simultaneously. Operators using MailFleet desktop software send through their own SMTP or API providers — authentication must match those sending paths.

Authentication is necessary but not sufficient. List permission, complaint rates, content quality, and engagement still influence filtering. Start with DNS correctness, then layer content checks like SpamAssassin before scaling volume.

SPF: who may send for your domain

Sender Policy Framework (SPF) publishes a DNS TXT record listing which IP addresses and hostnames may send mail claiming your domain in the envelope sender (Return-Path). Receiving servers compare the connecting host against that list during SMTP conversation.

SPF records use mechanisms like ip4, include, a, mx, and all. The include mechanism delegates to another domain SPF — common when using SendGrid, Amazon SES, or Mailgun. Each DNS lookup counts toward the ten-lookup limit; chained includes break SPF silently when exceeded.

SPF validates the bounce domain, not always the visible From header. Alignment with DMARC requires the organizational domain to match according to relaxed or strict rules. MailFleet free SPF checker at mailfleet.app/tools/spf-checker parses records and flags lookup issues before campaigns.

  • Published as TXT at your domain or subdomain
  • Lists authorized sending hosts and includes
  • Ten-DNS-lookup limit — deep include chains fail
  • Does not sign message body content
  • Must align with From domain for strict DMARC

DKIM: cryptographic message integrity

DomainKeys Identified Mail (DKIM) adds a digital signature in message headers. The sending infrastructure signs selected headers and body with a private key. Receivers fetch the public key from a DNS TXT record at selector._domainkey.yourdomain.com and verify the signature.

Selectors allow key rotation — publish selector2 while retiring selector1 without downtime. API providers display which selector and domain to sign. Mispublished public keys or body canonicalization mismatches cause DKIM failures even when mail delivers.

DKIM proves a signer had access to the domain DNS and that signed parts were not tampered with en route. It does not prove permission to mail a recipient. Pair DKIM with list hygiene and clear unsubscribe paths for marketing mail.

DMARC: policy and reporting layer

Domain-based Message Authentication, Reporting and Conformance (DMARC) publishes policy in a DNS TXT record at _dmarc.yourdomain.com. It tells receivers what to do when SPF and/or DKIM fail alignment checks: none (monitor), quarantine (spam folder), or reject (block).

DMARC aggregate reports (RUA) summarize authentication results from participating providers. Forensic reports (RUF) exist but many senders disable them for privacy. Reports help you discover unauthorized sending and gradual misconfigurations after DNS changes.

Start with p=none while monitoring reports, then tighten to quarantine and eventually reject when SPF and DKIM pass consistently. Jumping straight to reject without validation causes legitimate mail loss — especially after migrating providers or adding MailFleet sending paths.

How SPF, DKIM, and DMARC work together

SPF authorizes sending hosts. DKIM signs messages. DMARC defines alignment rules between those results and the From domain, plus policy on failures. A message can pass SPF but fail DMARC if alignment breaks — common when marketing From is yourdomain.com but Return-Path is pm-bounces.vendor.com without proper alignment setup.

Receivers increasingly expect at least one aligned pass for bulk mail. Major providers display authentication results in headers you can inspect with header analyzer tools. MailFleet links to mailfleet.app/tools/email-header-analyzer for received message debugging.

Treat authentication as a system: DNS publishes intent, providers sign and send, MailFleet campaigns use configured profiles that must match published records.

Alignment: the detail that breaks campaigns

DMARC alignment compares organizational domains. Relaxed alignment allows subdomain matches; strict requires exact domain match between From header and SPF/DKIM identifiers. Marketing teams often choose friendly From addresses without updating SPF includes for new relay hosts.

API providers frequently recommend branded subdomains — mail.yourdomain.com — for bulk sending. Publish SPF and DKIM on that subdomain and align DMARC policy accordingly. Sending bulk from root domain while only authenticating a subdomain causes confusing failures.

After changing providers, re-run SPF, DKIM, and DMARC checkers. TTL delays mean stale caches at receivers for hours. Pilot batches through MailFleet before full-list sends after DNS edits.

Common SPF misconfigurations

Duplicate SPF TXT records invalidate SPF entirely — only one record per domain. Multiple includes without understanding lookup count exhaust the ten-lookup cap. Using +all or neutral ?all when you meant -all weakens protection.

Forgetting to include a new dedicated IP after migration causes sudden SPF fails. Marketing launches a MailFleet campaign through SES while SPF still lists only the old ESP include.

Use MailFleet SPF checker to enumerate mechanisms, count lookups, and spot syntax errors. Fix DNS at your registrar or DNS host, wait for propagation, then verify from multiple resolver perspectives if issues persist.

Common DKIM misconfigurations

Wrong selector in DNS — signing with s1 but publishing s2 keys — fails verification. Copy-paste errors in TXT records split across strings incorrectly break key material. Some DNS panels truncate long DKIM keys.

Body hash failures occur when mailing lists or gateways modify content after signing. Minimal HTML changes in MailFleet templates after a provider signs upstream can break DKIM if signing happens before your edits — know where signing occurs in your stack.

MailFleet DKIM checker at mailfleet.app/tools/dkim-checker validates published keys for a selector. Provider dashboards usually show the exact selector and DNS row to publish.

Common DMARC misconfigurations

Missing RUA address means you fly blind — no aggregate visibility. Typoed report email addresses fill with bounces. p=reject without testing blocks legitimate mail during provider transitions.

Subdomain policies (sp=) overlooked when bulk sends from mail.example.com but DMARC only on example.com. pct less than 100 during rollout is valid — partial enforcement tests impact before full policy.

DMARC checker at mailfleet.app/tools/dmarc-checker reads published policy and suggests next steps. Combine with domain health check for MX and reverse DNS context.

Authentication with SMTP and API providers

SMTP relays and HTTP APIs sign differently but publish the same DNS concepts. Amazon SES, SendGrid, Mailgun, Postmark, and self-hosted Postfix each document SPF includes and DKIM selectors. MailFleet provider profiles must use hosts and signing settings those records authorize.

Shared IPs on budget tiers mean your reputation neighbors matter, but authentication still identifies your domain. Dedicated IPs shift reputation isolation but require their own warm-up and PTR considerations — see reverse DNS checker tools.

When agencies manage multiple clients, separate domains, selectors, and DMARC policies per brand. Cross-wiring client A keys on client B DNS is a frequent agency mistake with painful deliverability consequences.

Validating authentication before MailFleet campaigns

Build a pre-send checklist: SPF passes lookup limits, DKIM selector live, DMARC at least monitoring with RUA, MX records correct, and From domain matches provider signing domain. MailFleet integrates SpamAssassin for content but DNS validation uses linked free tools and docs.

Inside MailFleet desktop on Windows, macOS, or Linux, connect provider profiles, send test messages to seed accounts, and inspect Authentication-Results headers. Complement with web checkers for third-party DNS perspective.

Document DNS state in runbooks so future operators know which selector is production. Version-control TXT records when possible — Git for DNS is increasingly normal on teams using infrastructure-as-code DNS providers.

Authentication vs deliverability outcomes

Passing SPF, DKIM, and DMARC does not promise inbox placement. Gmail, Microsoft, Yahoo, and others weigh engagement, complaints, and content signals. Authentication prevents easy spoofing and removes one class of filters — it is table stakes for bulk mail.

Failing authentication often lands mail in spam or rejects outright at strict receivers. Fixing auth is cheaper than rewriting entire funnels after reputation damage.

Pair authentication work with SpamAssassin pre-send review and permission-based list practices documented in MailFleet responsible sending guide.

Monitoring and ongoing maintenance

Subscribe to DMARC aggregate reports — parse them monthly minimum. Spikes in fail counts correlate with DNS edits, new MailFleet profiles, or unauthorized third-party sending.

Rotate DKIM keys on provider schedules. Update SPF when adding IPs or changing ESP. Re-verify after corporate acquisitions merge domains.

MailFleet campaign logs surface SMTP auth-related bounces — correlate with DNS changes. Webhooks can alert ops when failure rates exceed thresholds after infrastructure work.

Putting it together for permission-based bulk email

MailFleet is desktop campaign software for permission-based lists — authentication protects your brand while sending through your providers. License at pay.mailfleet.app/buy/1year ($49) or lifetime ($79); Linux users install DEB or RPM on x86_64 or ARM64.

Workflow: publish SPF and DKIM, enable DMARC monitoring, validate with free tools, configure MailFleet provider, pilot send, read logs, tighten DMARC policy when stable.

Authentication supports trust; consent and content support reputation. Both belong in professional bulk email operations.

BIMI and brand indicators — optional next step

Brand Indicators for Message Identification (BIMI) displays verified logos in some clients when DMARC enforcement reaches quarantine or reject and a valid VMC certificate is published. BIMI is optional and not required for bulk sending, but enterprise marketing teams sometimes pursue it after authentication maturity.

Attempting BIMI before SPF, DKIM, and DMARC fundamentals work is premature. Fix alignment and monitor aggregate reports first. MailFleet free tools focus on core authentication — not BIMI certificate procurement.

If brand teams ask about logo placement in inbox, explain that authentication correctness is the prerequisite. No desktop campaign software bypasses that DNS work.

Authentication during provider migrations

Switching from one ESP to another is the highest-risk window for authentication failures. Old SPF includes linger while new relays send. DKIM selectors from the previous vendor remain published but unused. DMARC reports show confusing partial passes until DNS is cleaned up.

Run parallel authentication: publish new includes and selectors before cutover, lower TTLs a day ahead, send MailFleet pilot batches through the new profile, and monitor RUA for fail spikes. Keep the old profile disabled in DNS only after reports stabilize.

Document rollback steps. Authentication mistakes during migration cause more emergency tickets than template typos because they affect every recipient simultaneously.

Reverse DNS and sending IP reputation

Authentication TXT records are only part of the story. Dedicated sending IPs should have matching forward and reverse DNS (PTR records) that align with your domain branding. Some filters penalize generic or missing PTR entries especially on new infrastructure.

MailFleet connects through your providers — PTR is configured at the provider or hosting layer, not inside MailFleet itself. Use mailfleet.app/tools/reverse-dns-checker when validating new IPs before high-volume permission-based campaigns.

Shared IP pools on budget provider tiers mean neighbors affect your outcomes. Authentication still identifies your domain, but reputation signals may reflect pool history. Factor IP strategy into platform vs dedicated provider decisions alongside SPF and DKIM work.

Subdomain strategy for bulk and transactional streams

Publishing mail.example.com for marketing while notify.example.com handles transactional mail isolates reputation and simplifies DMARC reporting segmentation. Each subdomain needs its own SPF and DKIM records aligned with the provider that signs that stream.

MailFleet campaigns should use From addresses on the subdomain whose DNS you configured for that provider profile. Mixing marketing content from a subdomain without published authentication guarantees DMARC failures.

Document subdomain ownership in client onboarding packets when agencies manage DNS for multiple brands. Accidental sends from the wrong subdomain are a frequent post-migration surprise visible in aggregate reports weeks later.

Use mailfleet.app/tools/domain-email-health-check for a consolidated pass/fail view before major MailFleet launches when you need one dashboard link for stakeholders who will not read raw TXT records.

  • One SPF/DKIM set per active sending subdomain
  • Align MailFleet From addresses with published DNS
  • Review DMARC reports per subdomain monthly

Tools and documentation for ongoing authentication QA

MailFleet publishes free checkers for SPF, DKIM, DMARC, MX, reverse DNS, and consolidated domain health on mailfleet.app/tools. Bookmark them in runbooks next to provider dashboards and MailFleet campaign logs — the triangle of DNS, provider, and client software.

Document expected authentication results for each MailFleet provider profile: which selector, which envelope domain, which From addresses are valid. New hires should not guess from memory during incident response at 2 a.m.

Re-validate after any registrar migration, DNS vendor change, or acquisition rebranding. Authentication regressions follow corporate events more often than product releases.

Step-by-step workflow

  1. Inventory all systems that send mail for your domain — ESPs, CRM, MailFleet, transactional APIs.
  2. Publish SPF TXT authorizing each sending path; stay within ten lookup limits.
  3. Enable DKIM signing at providers; publish selector public keys in DNS.
  4. Create DMARC record at p=none with valid RUA address for monitoring.
  5. Validate SPF, DKIM, and DMARC using MailFleet free tools at mailfleet.app/tools.
  6. Configure MailFleet provider profile matching authorized hosts and signing domain.
  7. Send test messages; inspect Authentication-Results with header analyzer tool.
  8. Review initial DMARC aggregate reports for unexpected fail sources.
  9. Launch permission-based pilot campaign; monitor SMTP logs for auth-related bounces.
  10. Tighten DMARC toward quarantine or reject when aligned passes are consistent.

Common mistakes and fixes

MistakeFix
Multiple SPF TXT records on one domainMerge into a single SPF record; delete duplicates — only one valid record allowed.
Exceeding ten DNS lookups in SPF include chainsFlatten includes or send from subdomain with dedicated SPF; verify with SPF checker.
Publishing DMARC p=reject before SPF/DKIM align in testsStart p=none, monitor RUA reports, tighten policy after consistent aligned passes.
DKIM selector typo in DNS after provider rotationCopy selector exactly from provider dashboard; validate with DKIM checker tool.
From domain does not match signing domain for bulk campaignsAlign From address with DKIM d= and SPF alignment per provider setup guide.
Ignoring DMARC reports after launching MailFleet campaignsReview RUA monthly; investigate fail spikes before they become reputation crises.
Assuming API providers configure DNS automaticallyYou still publish SPF/DKIM TXT at your DNS host — verify after every onboarding.
Skipping authentication retest after switching SMTP profilesRe-run SPF, DKIM, DMARC tools and pilot send through new MailFleet profile.

Best for

  • Teams fixing authentication before campaigns
  • Deliverability consultants auditing DNS
  • MailFleet operators configuring new provider profiles
  • Agencies onboarding client sending domains

Not best for

  • Senders who only need content checks without DNS access
  • Recipients troubleshooting personal inbox filters without domain control

Key takeaways

  • Published as TXT at your domain or subdomain
  • Lists authorized sending hosts and includes
  • Ten-DNS-lookup limit — deep include chains fail
  • Does not sign message body content
  • Must align with From domain for strict DMARC

Summary

SPF authorizes sending servers, DKIM signs message integrity, and DMARC publishes alignment policy plus reporting. Together they reduce spoofing risk and remove a common class of bulk-mail filtering — but they do not replace permission-based lists, solid content, or engagement. MailFleet operators should validate all three in DNS using free checkers, align provider profiles with published records, pilot campaigns after any change, and read DMARC aggregate reports before tightening enforcement. Authentication is ongoing maintenance, not a one-time checkbox. Pair DNS work with SpamAssassin content review, reverse DNS checks on dedicated IPs, and responsible sending practices for campaigns that scale without surprise rejections.

Summary

SPF, DKIM, and DMARC are DNS-based email authentication standards. Together they help receivers verify who sent a message and how to handle failures.

For regulatory context on commercial email in the United States, see the FTC CAN-SPAM compliance guide.

Delivery note: MailFleet helps users manage campaigns through their own sending providers. Delivery outcomes depend on sender reputation, DNS authentication, content quality, recipient engagement, list quality, provider rules, and mailbox filtering systems.

Frequently asked questions

Publish working SPF and DKIM before tightening DMARC enforcement. SPF authorizes sending hosts; DKIM signs messages; DMARC tells receivers how to handle alignment failures and sends aggregate reports. Starting DMARC at p=none with RUA enabled is fine while fixing SPF includes and DKIM selectors. Move to quarantine or reject only when test campaigns consistently show aligned passes in aggregate reports and seed inboxes. Fixing DMARC policy alone without valid SPF/DKIM does not authenticate mail — it only instructs receivers how to treat failures.

Get started

Take control of your email campaign operations

Download MailFleet for Windows, macOS, or Linux. Connect your providers, run pre-send checks, and manage campaigns with full visibility.

Available on

  • Windows 10+
  • macOS 12+
  • Linux (DEB & RPM)

Same desktop experience across every platform — one workflow for your entire team.