Reading Email Headers to Diagnose Deliverability and Spam/Junk Issues Print

  • email headers, Email, spam, Junk Folder
  • 346

Email headers reveal the path, authentication, and filtering decisions applied to a message. Reading them correctly helps you pinpoint why emails land in junk, get delayed, or fail authentication. This guide explains where to find headers, how to interpret key fields, and a practical troubleshooting workflow.

What an email header contains

  • Routing: A chain of Received: lines showing each server hop with timestamps.
  • Authentication: Authentication-Results: for SPF, DKIM, DMARC (and often ARC-* for forwarding).
  • Identity: From:, Return-Path:, Reply-To:, Message-ID:, Sender:.
  • Filtering: Provider-specific spam verdicts (e.g., X-Spam-Status:, ARC-Seal:, X-MS-Exchange-*, Received-SPF:).
  • List/meta: List-Unsubscribe:, MIME details, Content-Type:, and user agent.
Goal: Confirm whether authentication aligned, identify which server flagged spam, and correlate timing or content changes with deliverability outcomes.

How to view full headers in common email clients

Gmail (web)

  • Open the message. Click the three dots (More) near the top right.
  • Choose “Show original”. A new tab opens with full headers and Gmail’s SPF/DKIM/DMARC summary.
  • Copy headers. Click “Copy to clipboard” for raw headers.
Gmail - Show original location in message options Gmail: Use “Show original” to access full headers and authentication summary.

Outlook (desktop)

  • Open the message. Go to FileProperties.
  • Find Internet headers. Copy the contents of the “Internet headers” box.
Outlook - Properties dialog showing Internet headers Outlook: Internet headers are in File → Properties. Outlook - showing Internet headers Outlook: Internet headers are in File → Headers.

Apple Mail (macOS)

  • Open the message. Choose ViewMessageAll Headers or ViewMessageRaw Source.
  • Copy raw source. Raw source includes full headers and MIME body.
Apple Mail - View All Headers option Apple Mail: View all headers or raw source for complete details. Apple Mail - View All Headers option Apple Mail: View all headers or raw source for complete details.

Thunderbird

  • Open the message. Press Ctrl+U (Windows/Linux) or Cmd+U (macOS).
  • Select the message and go to View > Message Source.
  • Alternatively, highlight the email in your inbox, then go to Menu > View > Message Source.
  • To view an email’s headers, select it and go to Menu > View > Headers > All.
  • Headers appear. A new window shows full raw headers and body.
Thunderbird - View source window with headers Thunderbird: View source shows raw headers quickly.

Key header fields and how to interpret them

Authentication-Results

  • SPF: Looks at the connecting IP’s authorization for the envelope domain. Common results: pass, fail, softfail, neutral.
  • DKIM: Verifies the digital signature; results include pass, fail, none, and alignment status.
  • DMARC: Requires alignment with SPF or DKIM; results include pass or fail, often with policy=none|quarantine|reject.

ARC (Authenticated Received Chain)

  • ARC-Seal / ARC-Message-Signature: Preserve authentication across forwarders; useful when DMARC fails post-forward.
  • If forwarding: ARC can explain why a previously authenticated message is still accepted.

Received

  • Hop chain: Each Received: line shows a server hop and timestamp; read bottom-up (first hop) to top (final hop).
  • Latency: Large gaps indicate delays; mismatched timezones or clocks can complicate analysis.
  • IP and HELO: Confirms the sending IP and hostname; mismatches may reduce trust.

Return-Path and From

  • Return-Path (envelope-from): Used for SPF; may differ from From:.
  • Alignment: DMARC expects organizational-domain alignment between identity and authentication.
  • Reply-To: Should be a monitored mailbox; “no-reply” may harm engagement.

Provider spam verdicts

  • Gmail: Authentication-Results with spf=, dkim=, dmarc=; sometimes X- headers.
  • Microsoft: Authentication-Results, Received-SPF, various X-MS-Exchange-*, SpamDiagnosticOutput.
  • Gateways: X-Spam-Status, X-Spam-Flag, X-Spam-Score from SpamAssassin-like systems.

Message-ID and List-Unsubscribe

  • Message-ID: Unique identifier; malformed or missing can look suspicious.
  • List-Unsubscribe: Improves trust; may enable one-click unsubscribe parsing by inboxes.

Sample header and interpretation

Delivered-To: user@example.com
Return-Path: <bounces@mailer.yourdomain.com>
Received: from mailer.yourdomain.com (mailer.yourdomain.com. [203.0.113.25])
        by mx.google.com with ESMTPS id abc123
        for <user@example.com>
        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384) Sat, 10 Dec 2025 10:15:32 -0800 (PST)
Received-SPF: pass (google.com: domain of bounces@mailer.yourdomain.com designates 203.0.113.25 as permitted sender) client-ip=203.0.113.25;
Authentication-Results: mx.google.com;
        spf=pass (google.com: domain of bounces@mailer.yourdomain.com designates 203.0.113.25 as permitted sender) smtp.mailfrom=bounces@mailer.yourdomain.com;
        dkim=pass header.d=yourdomain.com header.s=mail header.b=ABC123;
        dmarc=pass (p=quarantine dis=none) header.from=yourdomain.com
ARC-Seal: i=1; a=rsa-sha256; d=forwarder.example; s=arc; t=1733831732; cv=pass;
From: Systron <news@yourdomain.com>
Reply-To: support@yourdomain.com
Subject: December product update
Message-ID: <20251210-mailer-xyz@yourdomain.com>
List-Unsubscribe: <mailto:unsubscribe@yourdomain.com>, <https://yourdomain.com/u/12345>
  • SPF pass: The sending IP is authorized for the envelope domain.
  • DKIM pass: Signature from yourdomain.com validated.
  • DMARC pass: From domain aligns with either SPF or DKIM (here, DKIM aligns).
  • ARC present: Indicates forwarding preserved authentication.
  • Verdict: Healthy authentication; if still junked, investigate content, reputation, or engagement factors.

Common failure patterns and fixes

SPF softfail or too many lookups

  • Header clue: spf=softfail or Received-SPF: softfail; “exceeds DNS lookups.”
  • Fix: Consolidate includes; keep under 10 lookups; move to -all after validation; ensure the sending IP is covered.

DKIM none or fail

  • Header clue: dkim=none (no signature) or dkim=fail (bad key or altered content).
  • Fix: Enable signing, correct selector, rotate and publish keys, ensure your MTA/ESP applies DKIM to all messages.

DMARC fail (unaligned domains)

  • Header clue: dmarc=fail, policy=quarantine|reject, header.from domain doesn’t align with SPF/DKIM identity.
  • Fix: Send from your organizational domain, align SPF (envelope-from) or DKIM (d= domain) with From: domain; adjust p= after validation.

Forwarding breaks DMARC

  • Header clue: spf=fail after forwarding; ARC present with cv=pass.
  • Fix: Rely on DKIM alignment (less affected by forwarding); ARC can help receivers trust forwarded mail.

Gateway spam flags

  • Header clue: X-Spam-Status: Yes, high score; Microsoft SpamDiagnosticOutput indicates policy hit.
  • Fix: Reduce spam triggers (links, wording, images), ensure HTML and text parts are clean, check attachments and reputation.

Decision tree: diagnose with headers

  1. Start: Open full headers; capture Authentication-Results, Received, and spam verdicts.
  2. Authentication: If SPF/DKIM/DMARC all pass and align, proceed to content/reputation. If any fail, fix those first.
  3. Routing: Check Received chain for delays or unexpected hops; confirm HELO and PTR match your domain.
  4. Identity: Ensure From, Return-Path, and DKIM d= use your organizational domain.
  5. Spam verdicts: Note which system flagged the message; adjust content and sending patterns accordingly.
  6. Re-test: Send to engaged recipients; confirm improved placement; scale gradually.

Screenshot walkthrough: reading headers step by step

1. Gmail “Show original” summary

Gmail Show original - Authentication results for SPF, DKIM, DMARC Gmail provides a quick summary of SPF/DKIM/DMARC in “Show original”. Look for “PASS” or “FAIL”.

2. Outlook Internet headers

Outlook Internet headers with Received and Authentication-Results lines Outlook’s Internet headers pane shows Received chain, Authentication-Results, and provider-specific flags.

3. Apple Mail raw source

Apple Mail raw source showing full header metadata Apple Mail raw source reveals all headers, including ARC and List-Unsubscribe where present.
Tip: Save the header as a text file and annotate key lines (SPF/DKIM/DMARC, Received hops). It speeds up collaboration with IT or your ESP.

Header red flags and quick remediations

  • SPF softfail/neutral: Add/verify sending IPs or includes; keep lookup count < 10.
  • DKIM missing: Enable DKIM, correct selector, rotate keys, ensure all streams sign.
  • DMARC unaligned: Bring From:, SPF envelope, and DKIM signing domain under the same organizational domain.
  • Broken HELO/PTR: Align HELO with FQDN, ensure reverse DNS (PTR) resolves to your sending hostname.
  • Gateway spam score high: Remove risky attachments, tidy HTML, reduce image-to-text ratio, and simplify links.

Checklist: what to capture from headers for a deliverability ticket

  • Full raw headers: Unmodified, pasted in a code block or text file.
  • Provider summary: SPF/DKIM/DMARC verdicts and policy details.
  • Received chain: Hops with timestamps; note latency gaps.
  • Identity alignment: From, Return-Path, DKIM d=, Message-ID domain.
  • Spam flags: Any X-Spam-*, Received-SPF, Microsoft SpamDiagnosticOutput, ARC results.

Next steps after fixing header-level issues

  • Content cleanup: Minimize spammy language and excessive formatting; include a plain-text part.
  • Reputation: Check blocklists, warm new IPs, and stabilize cadence.
  • Compliance: Visible one-click unsubscribe, physical address, accurate sender identity.
  • Engagement: Target engaged segments first; trim inactive recipients to bolster positive signals.

Was this answer helpful?

« Back