DKIM vs DMARC: Understanding the Difference

Compare DKIM and DMARC email authentication protocols. Learn how DKIM signs messages while DMARC enforces policy, and why you need both for complete email security.

Last updated: 2026-02-06

DKIM and DMARC are both email authentication protocols, but they serve fundamentally different roles. DKIM is a signing mechanism that proves a message is genuine. DMARC is a policy layer that tells receivers what to do when authentication fails. Understanding the difference is essential for setting up email security correctly.

Short answer: DKIM verifies that an email was sent by your domain and wasn't modified. DMARC uses DKIM (and SPF) results to enforce a policy and send you reports. You need both.

Quick Comparison

AspectDKIMDMARC
PurposeSigns emails with a cryptographic signatureEnforces policy based on authentication results
What it checksMessage integrity and sender domainSPF/DKIM results plus domain alignment
Can work aloneYes — provides value independentlyNo — requires SPF and/or DKIM
DNS record typeTXT at selector._domainkeyTXT at _dmarc.domain
Provides reportingNoYes — aggregate and forensic reports
Policy enforcementNo — just pass or failYes — none, quarantine, or reject
Survives forwardingUsually yesDepends on DKIM/SPF alignment

How DKIM Works

DKIM (DomainKeys Identified Mail) adds a digital signature to every outgoing email. The sending server signs specific headers and the message body using a private key. The receiving server verifies the signature using the public key published in DNS.

DKIM DNS record example:

selector._domainkey.example.com  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."

DKIM-Signature header example:

DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=selector;
  h=from:to:subject:date; bh=...; b=...

When a receiving server processes an email with a DKIM signature:

  1. It extracts the d= (domain) and s= (selector) from the signature
  2. It looks up the public key at selector._domainkey.domain.com
  3. It verifies the cryptographic signature against the message
  4. If valid, DKIM passes. If the message was modified, DKIM fails.

DKIM tells you: "This message really came from this domain, and it hasn't been tampered with."

How DMARC Works

DMARC (Domain-based Message Authentication, Reporting & Conformance) is a policy layer built on top of DKIM and SPF. It doesn't authenticate email directly. Instead, it checks the results of SPF and DKIM, verifies alignment, and applies a policy.

DMARC DNS record example:

_dmarc.example.com  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.com"

When a receiving server processes an email with DMARC:

  1. It checks if SPF passes and the envelope domain aligns with the From header
  2. It checks if DKIM passes and the d= domain aligns with the From header
  3. If at least one passes with alignment, DMARC passes
  4. If both fail alignment, DMARC applies the domain's policy (none, quarantine, or reject)
  5. It sends aggregate reports back to the domain owner

DMARC tells you: "Here's what to do when authentication fails, and here's a report on what's happening."

Set up DKIM for your domain

Generate DKIM key pairs to get the signing layer in place before deploying DMARC.

Generate DKIM Keys

The Key Difference: Signing vs Policy

Think of it this way:

  • DKIM is the lock on the envelope. It proves the message is authentic and hasn't been opened or changed.
  • DMARC is the policy that tells the mailroom what to do with envelopes that have broken locks (or no locks at all).

DKIM operates at the message level. It signs individual emails. DMARC operates at the domain level. It sets rules for how all email from your domain should be treated.

DKIM Can Exist Without DMARC

You can deploy DKIM without DMARC. Many organizations do this as a first step. When DKIM is configured but DMARC is not:

  • Emails are signed and receivers can verify them
  • Receiving servers may give DKIM-signed emails a slight deliverability boost
  • There is no policy telling receivers what to do when DKIM fails
  • You get no reports on authentication failures

This is useful but incomplete. Without DMARC, a receiver that encounters a failed DKIM check has no instructions from you about how to handle it.

DMARC Cannot Exist Without DKIM or SPF

DMARC depends on at least one of SPF or DKIM to function. Without either:

  • DMARC has no authentication results to evaluate
  • Every email would fail DMARC
  • Your policy would reject or quarantine all your own email

In practice, you should have both SPF and DKIM in place before deploying DMARC. This gives DMARC two signals to work with, providing resilience when one fails.

Never deploy a DMARC policy of p=quarantine or p=reject without first confirming that your legitimate email passes SPF and/or DKIM with proper alignment. Start with p=none to monitor.

Alignment: Where DMARC Adds Value

DKIM by itself has a gap: the d= domain in the signature doesn't have to match the From header domain. An attacker could sign email with their own DKIM key while spoofing your From address.

DMARC closes this gap with alignment. For DMARC to pass via DKIM:

  • The DKIM signature must be valid (pass)
  • The d= domain in the DKIM signature must match (or be a subdomain of) the From header domain

This alignment check is what makes DMARC effective against spoofing that DKIM alone cannot prevent.

Reporting: DMARC's Unique Feature

DMARC provides something neither DKIM nor SPF offers: reporting.

Report TypeWhat It Contains
Aggregate (rua)Daily summaries of authentication results from receivers
Forensic (ruf)Individual failure reports with message details

These reports tell you:

  • Which IPs are sending email using your domain
  • Whether those emails pass or fail SPF and DKIM
  • How many emails are being rejected by your policy
  • Whether legitimate services are misconfigured

Without DMARC, you're flying blind. You have no visibility into how your domain is being used (or abused) across the internet.

Implementation Order

1

Set up SPF

Create an SPF record listing your authorized sending servers. This is the quickest authentication method to deploy.

2

Set up DKIM

Generate DKIM keys and configure your mail server or email service to sign outgoing messages. Publish the public key in DNS.

3

Deploy DMARC in monitoring mode

Add a DMARC record with p=none. This collects reports without affecting delivery, letting you identify issues.

4

Review reports and fix issues

Analyze DMARC aggregate reports. Fix any legitimate services that fail alignment. This may take weeks.

5

Enforce DMARC policy

Once all legitimate email passes authentication, move to p=quarantine, then p=reject.

Side-by-Side: What Each Protects Against

ThreatDKIMDMARC
Message modification in transitDetects it (signature fails)Enforces policy on failure
Direct domain spoofingPartial (no alignment check)Full protection with alignment
Unauthorized sending serversNoRelies on SPF for this
Display name spoofingNoNo
Look-alike domainsNoNo
Lack of visibilityNo reportingAggregate and forensic reports

Common Misconceptions

"DKIM and DMARC do the same thing" No. DKIM signs messages. DMARC enforces policy on authentication results. They complement each other but serve different functions.

"I only need DMARC" No. DMARC is useless without SPF and/or DKIM. It's a policy layer that depends on authentication mechanisms to evaluate.

"DKIM is enough for email security" Partially. DKIM proves message integrity, but without DMARC you have no policy enforcement, no alignment requirement, and no reporting.

"DMARC replaces DKIM" No. DMARC builds on DKIM. It doesn't replace it. DMARC needs DKIM results to make decisions about email handling.

Why You Need Both

The complete picture

DKIM provides the cryptographic proof. DMARC provides the policy and visibility. Together they give you authentication, enforcement, and reporting — the three pillars of email domain security.

  • DKIM alone: Emails are signed, but no enforcement and no reports
  • DMARC alone: Cannot function without SPF or DKIM
  • DKIM + SPF + DMARC: Full authentication with enforcement and visibility

The strongest email authentication posture uses all three: SPF validates the sending server, DKIM validates the message, and DMARC ties them together with alignment checks, policy enforcement, and reporting.


Start with DKIM, then build up to DMARC. DKIM Creator helps you get the signing layer right.

Generate DKIM keys for your domain

Create the cryptographic foundation for your email authentication. Free, secure, and instant.

Generate DKIM Keys