If ARC still feels fuzzy, that is completely normal.
Most admins first meet ARC while debugging a very practical problem: "this message is legitimate, but DMARC failed after forwarding." ARC exists for exactly that kind of path.
ARC stands for Authenticated Received Chain. It is defined in RFC 8617 and is best thought of as a signed "chain of custody" for authentication results as a message passes through intermediaries.
That wording sounds formal, but the practical version is simple:
So ARC does not replace SPF, DKIM, or DMARC. ARC preserves context when forwarding or list processing makes direct checks harder to interpret.
Forwarding and mailing lists routinely break assumptions used by SPF and DKIM:
When both happen, DMARC can fail even for legitimate traffic.
Google documents this directly in its forwarding guidance and sender requirements. That is why forwarders are encouraged to add ARC headers:
Yahoo similarly calls out ARC for forwarders in sender recommendations:
An ARC "set" has three headers with the same instance number (i=):
ARC-Authentication-Results (AAR)ARC-Message-Signature (AMS)ARC-Seal (AS)You can read them as:
The chain status is carried in cv= and is commonly none, pass, or fail.
Google has a concise ARC overview for admins here:
Think about a message from alerts@example.com that gets forwarded by forwarder.example.net:
i=1) with its observed results and seal.If another intermediary adds ARC later, that becomes i=2, and so on.
Tiny header sketch:
ARC-Authentication-Results: i=1; ... spf=pass ... dkim=pass ...
ARC-Message-Signature: i=1; d=forwarder.example.net; s=arc1; ...
ARC-Seal: i=1; cv=none; d=forwarder.example.net; s=arc1; ...
ARC-Authentication-Results: i=2; ...
ARC-Message-Signature: i=2; d=next-hop.example.org; s=arc2; ...
ARC-Seal: i=2; cv=pass; d=next-hop.example.org; s=arc2; ...ARC can:
ARC cannot:
Google explicitly notes that ARC does not automatically authenticate a message on its own. Receivers still run their own checks.
The important operational point: ARC is most useful when the receiver has a trust model for sealers.
Microsoft 365 makes this very concrete with trusted ARC sealers. Admins can configure domains they trust so preserved results can be used during evaluation in indirect flows:
That does not mean "trust everything with ARC." It means "trust specific sealers that are legitimate for your environment."
If mail forwarding/list traffic matters in your environment, this is the workable checklist:
Authentication-Results, ARC-*, DKIM-Signature, Return-Path).If this is the first ARC deep-dive, pair it with:
Once this model clicks, ARC stops feeling like a mysterious "extra header" and starts behaving like what it is: signed transit context that makes forwarded mail easier to evaluate safely.