DKIM body hash failure after a gateway or list rewrite

A practical guide to dkim body hash failed: evidence, safe checks, edge cases, and a controlled next step.

RT
RepMail Team

Product & Engineering · September 25, 2026 · 2 min read

Dkim body hash failed is best handled as a bounded evidence problem, not a guess based on one dashboard label. Message-path mutation is the useful starting point: collect the exact identity, record, header, or SMTP exchange involved, then compare it with what the receiver actually evaluated.

The short answer

Compare headers before/after an intermediary and explain canonicalization at a high level; do not assert which gateway behavior is always responsible. The safe workflow is to inventory the current state, test the real sending path, make one reversible change, and verify the result with fresh evidence. This page focuses on that task rather than repeating a general SPF, DKIM, or DMARC introduction.

Decision table

Question Evidence to collect Decision boundary
Identity message-path mutation Use the exact domain, selector, host, or header field
Validation compare the body before and after each intermediary Record source, resolver/receiver, timestamp, and result
Edge case the right owner depends on which hop changed the signed representation Do not infer a broader outcome than the evidence supports
Recovery Saved prior state and named owner Change or roll back deliberately

Practical workflow

  1. Define the question in terms of message-path mutation. Write down the sending stream, domain or selector, provider, owner, and time window. If the question came from a dashboard, keep the raw message, DNS answer, SMTP reply, or report that supports it.
  2. Collect evidence before editing configuration: compare the body before and after each intermediary. Compare authoritative and recursive DNS where relevant, and compare a real received message with the configured values. A single local lookup or vendor status page is not a complete test.
  3. Make the smallest controlled change that addresses the observed failure. Preserve the prior value, approval, exact diff, and rollback owner. Keep SPF, DKIM, DMARC, DNS, transport, and placement observations in separate fields so one pass does not mask another failure.
  4. Re-test the same path and at least one representative edge case. Interpret the result conservatively: the right owner depends on which hop changed the signed representation. Record what remains unknown, who owns the next check, and when the configuration should be reviewed again.

Edge cases and limits

The most important boundary is this: The right owner depends on which hop changed the signed representation. Resolver caches, forwarding, multiple sending streams, provider-specific processing, and delayed messages can make two apparently similar tests disagree. Label an outcome as observed, inferred, or unknown. Do not turn an unmeasured demand signal or one successful test into a guarantee about delivery, placement, or receiver behavior.

RepMail relevance

For a RepMail sending stream, use the same evidence discipline before changing domain authentication: preserve the raw header or DNS answer, identify the stream owner, and keep a rollback record. The email authentication hub provides the broader map; the links below are the closest task-specific references.

Further reading

What Is Dkim · Read Authentication Results

References

  1. RFC 6376 — DKIM Signatures
  2. Microsoft Learn — email authentication guidance

Resources in this guide

Evidence and decision table
Reference
QuestionEvidence to collectDecision boundary
Identitymessage-path mutationUse the exact domain, selector, host, or header field
Validationcompare the body before and after each intermediaryRecord source, resolver/receiver, timestamp, and result
Edge casethe right owner depends on which hop changed the signed representationDo not infer a broader outcome than the evidence supports
RecoverySaved prior state and named ownerChange or roll back deliberately

Common mistakes to avoid

  • Treating one dashboard label or local lookup as proof of end-to-end authentication.
  • Changing several DNS or sender settings at once, which removes the comparison point.
  • Assuming a pass for one identity proves alignment or placement for every identity.
email-authentication
dkim

Frequently asked questions

What should I check first for dkim body hash failed?

Start with the exact identity and raw evidence: message-path mutation. Capture the source, timestamp, resolver or receiver, and current configuration before making a change.

Can one successful test prove the issue is fixed?

No. A test is time- and path-specific evidence. Repeat the relevant DNS, message, SMTP, or report check for each active stream and record its provider context.

What should I preserve before changing authentication settings?

Save the current DNS answer or message evidence, the owner and timestamp, the proposed diff, and the rollback decision. This makes before-and-after comparison possible when caches or delayed mail obscure the result.

Continue learning

Review the email authentication hub

Use the hub to choose the next protocol or diagnostic guide.

More on this topic