Suped

How to handle DMARC failures when email is forwarded by recipients?

Michael Ko profile picture
Michael Ko
Co-founder & CEO, Suped
Published 4 May 2025
Updated 25 May 2026
11 min read
Summarize with
DMARC forwarding failures shown as email moving through a forwarding path.
The practical answer is this: you cannot fully fix recipient-side forwarding from your own DNS. You can reduce the damage by making DKIM as resilient as possible, separating high-forwarding mail onto its own subdomain, keeping that subdomain at p=quarantine or a carefully staged p=none until the risk is measured, using DMARC reports to identify the receiving domains involved, and giving affected customers a short technical note they can hand to their mail admins. If the messages are operational alerts, I would also add a non-email alert endpoint so a customer's broken forwarding path does not become your incident delivery path.
Forwarding breaks DMARC because SPF is tied to the sending IP seen by the final receiver, and DKIM breaks when a forwarder, security gateway, mailing rule, or ticketing system modifies signed headers or body content. DMARC only needs one domain-matched pass, SPF or DKIM, but forwarded mail often loses SPF by design and then loses DKIM because the message changed in transit. That is why a message can be clean when it leaves your platform and still appear as a DMARC failure in aggregate reports.
The goal is not to chase a perfect pass rate where you do not control the last hop. The goal is to protect the domain, preserve important recipient workflows, and prove which failures are expected forwarding versus real unauthorized sending. Good DMARC monitoring matters here because raw aggregate reports are too hard to read manually when the failure pattern is intermittent.

Why forwarded email fails DMARC

DMARC passes when SPF or DKIM passes with the visible From domain. Forwarding changes the route. The final mailbox provider sees the forwarder's IP, not the original sending IP, so SPF fails unless the forwarder rewrites the envelope sender in a compatible way. DKIM should survive forwarding, but only if the signed parts of the message remain unchanged.
  1. SPF path: SPF checks whether the final connecting IP is allowed by the envelope domain, so ordinary forwarding breaks it.
  2. DKIM path: DKIM survives if the signed headers and body remain intact, but footers, URL rewriting, security banners, and MIME changes can break it.
  3. DMARC domain match: DMARC still fails if SPF and DKIM pass for domains that do not match the visible From domain.
  4. Receiver policy: Some receivers override the published DMARC policy when they trust the forwarder or have local allow rules.
Flowchart showing how forwarding causes SPF failure and depends on DKIM survival.
Flowchart showing how forwarding causes SPF failure and depends on DKIM survival.
A high DMARC failure rate on a forwarding-heavy alert subdomain does not automatically mean your sender setup is broken. It means you need to separate expected forwarded failures from unauthorized sources before moving that subdomain to p=reject.
The pattern I trust most is a sharp increase in failures from a small set of receiver or security gateway networks while the original sources still authenticate cleanly. If the same customer domain accounts for the spike every time, the issue is usually a forwarding rule, a mail flow connector, a security gateway, or an internal system that receives and re-sends alerts.

What to do first

Start by proving whether the failures are forwarded mail, then decide whether the policy should absorb those failures or whether customer outreach is justified. I do not raise enforcement on a subdomain used for critical alerts until I can explain the top failing sources and the receiver disposition.
Sender controls
  1. Sign with DKIM: Use DKIM matched to the From domain on every alert message and avoid signing only with a third-party domain.
  2. Limit mutations: Keep alert templates plain and avoid downstream systems that rewrite body content before sending.
  3. Segment subdomains: Use a dedicated alert subdomain so forwarding risk does not block enforcement on the primary domain.
Recipient controls
  1. Fix forwarding: Recipients can use forwarding methods that preserve authentication or add trusted internal allow rules.
  2. Preserve DKIM: Security gateways should avoid adding banners or changing MIME structure on signed alert mail.
  3. Use ARC: ARC helps when the forwarder and final receiver both support and trust the chain.
A simple diagnostic order works well. First, validate your own DNS and signing. Then group DMARC failures by source IP, reporter, header From domain, DKIM domain, SPF domain, and policy disposition. Finally, compare the failure volume against the customer domains receiving the most alert traffic. If one or two customer environments create most of the failures, the next step is targeted outreach. If failures are spread across many forwarded environments, policy segmentation and alternate delivery channels matter more.
DMARC record for a forwarding-heavy alert subdomaintext
v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc@yourdomain.com; fo=1; adkim=s; aspf=s
That example is not a universal record. It shows the idea: keep reports on, stage enforcement with pct, and use strict domain matching only if you know every legitimate source can comply. If the alert subdomain is exclusively for customer-configured alerts and forwarding failures are unavoidable, I would rather hold that subdomain at quarantine than force critical messages into unpredictable rejection paths.

DMARC checker

Look up a domain's DMARC record and catch policy issues.

?/7tests passed

How to read the reports

The biggest mistake is treating a DMARC fail count as a delivery fail count. Aggregate reports show authentication results and the receiver's reported disposition, but not every reporting source provides complete or consistent detail. A message can fail DMARC in a report and still be delivered because the receiver applied a local override, trusted a forwarder, or chose monitoring over enforcement.

Signal

Likely cause

Action

SPF fail, DKIM pass
Normal forwarding
Keep DKIM strong
SPF fail, DKIM fail
Forwarder changed mail
Group by receiver
Pass, no match
Wrong domain
Fix sender
Fail, delivered
Policy override
Monitor trend
Sudden spike
New route
Identify source
Use this table to classify the likely cause before changing policy.
Suped's product is useful in this exact workflow because it turns aggregate XML into source groups, authenticated versus unauthenticated streams, and specific issues with steps to fix. It also helps separate your own configuration problems from recipient-side forwarding failures, which is the difference between a DNS fix and a customer mail-flow conversation.
DMARC records drawer showing filters, record rows, authentication results, and CSV export
DMARC records drawer showing filters, record rows, authentication results, and CSV export
When I inspect these reports, I look for receiver clusters rather than single rows. Microsoft 365, Google Workspace, secure email gateways, cloud security appliances, and ticketing systems can all appear as the visible source after forwarding. If the original mail matched the From domain on the way out, the failure source in the report is often the second hop, not your application.
A useful check is to send a controlled sample through the same alert template to a mailbox you control, then forward it through known routes and inspect the headers. That does not reproduce every customer setup, but it proves whether your DKIM signature survives common forwarding and security scanning. For broader checks, a domain health check helps confirm the base DMARC, SPF, and DKIM setup before blaming forwarding.

Policy choices for critical alerts

For high-value operational alerts, I split policy decisions by domain purpose. The primary corporate domain can often stay at p=reject if it has a near-perfect legitimate pass rate. The alert subdomain needs its own risk model because the recipients control part of the delivery chain.
DMARC policy posture for forwarded alert mail
Use pass rate and business impact together. Do not use authentication percentage alone.
Stable enforcement
98-100% pass
Legitimate failures are rare and known.
Staged enforcement
90-98% pass
Some forwarding failures exist, but the main sources are understood.
Monitor or quarantine
Under 90%
Forwarding failures are common, customer impact is unclear, or disposition data is incomplete.
A strict reject policy on an alert subdomain sounds clean, but it can punish the customer who configured an internal route you cannot see. Quarantine is often the pragmatic middle ground for a subdomain that exists only to send customer-configured alerts. It still signals that unauthenticated mail is suspicious, but it gives receiving systems room to apply local judgment.
If you need simpler policy staging, Suped's Hosted DMARC can manage policy changes without repeated DNS edits. That is helpful when one subdomain needs a slower rollout than the main domain.
The better long-term setup is to keep the alert domain isolated, maintain strong DKIM, publish clear customer-facing mail-flow guidance, and add real-time monitoring for new unknown sources. If a new source starts sending unauthenticated mail under the alert domain, that is different from known forwarded mail and should trigger investigation.

What ARC can and cannot solve

ARC can help forwarded mail survive authentication assessment, but only when the forwarding system seals the original authentication result and the final receiver trusts that seal. If you do not control the recipient's forwarding environment, ARC is not something you can switch on from your own domain and expect the final mailbox to honor.
Where ARC helps
  1. Trusted forwarders: The forwarder records that DMARC passed before it changed the path.
  2. Mailing systems: Intermediaries can preserve authentication context after list or gateway handling.
  3. Receiver discretion: The final receiver can override a DMARC fail when the ARC chain is credible.
Where ARC does not help
  1. No seal: If the forwarder does not add ARC, there is no chain to evaluate.
  2. No trust: If the final receiver does not trust the ARC signer, it still treats DMARC as failed.
  3. Bad original auth: ARC records prior results; it does not make a bad original setup good.
ARC is still worth understanding because it explains why some forwarded messages get delivered even when DMARC fails in the final report. If the customer controls the forwarding platform and asks what to change, point them toward ARC-aware forwarding and DKIM-preserving mail handling. If they do not ask, assume ARC will be inconsistent and design your policy around that reality. The mechanics are covered in more depth in this ARC implementation guide.

Customer outreach that works

When you cannot change the forwarding path, the only reliable external lever is customer education. That does not mean a marketing blast. It means a technical note for customer admins that says exactly what is happening, why their forwarding path breaks authentication, and what they can change without weakening domain security.
Short customer admin notetext
Our alert emails are DKIM signed and DMARC domain-matched when sent. Your mail route appears to forward or reprocess these alerts before final delivery. That can break SPF and DKIM at the final mailbox. Please preserve DKIM signatures, avoid adding banners or modifying MIME content on these alerts, and use forwarding rules that preserve authentication results where available. If your platform supports ARC, enable ARC sealing for forwarded mail. Sending domain: alerts.example.com DKIM domain: alerts.example.com Return-Path domain: bounce.alerts.example.com
If you can identify the affected organizations, use targeted outreach. If you cannot, add a support article and send a technical setup reminder to all customers who use email alerts. Keep it operational: this is about preserving alert delivery, not asking them to trust unauthenticated mail.
A second alert channel is often the cleanest mitigation. Email should still work, but critical firmware, infrastructure, or monitoring alerts should also support webhook, push, incident platform, SMS, or API polling endpoints where the customer's mail forwarding setup is not in the path.
I also like adding account-level visibility: show customers whether recent alerts were accepted by your sending provider, whether bounces occurred, and whether their configured address has a forwarding warning. You cannot see every internal hop, but you can give customers enough evidence to involve the right mail admin.

A practical operating model

For a domain with heavy recipient forwarding, I use an operating model rather than a one-time fix. It has four parts: isolate the traffic, make the original authentication boringly correct, measure the failures, and avoid hard reject until the unresolved failures are acceptable for the business.
  1. Create a subdomain: Send customer-configured alerts from a dedicated domain such as alerts.example.com.
  2. Authenticate every source: Match SPF where possible and make DKIM domain matching mandatory for every alert stream.
  3. Monitor disposition: Track none, quarantine, reject, and override patterns instead of looking only at pass rate.
  4. Classify failures: Separate expected forwarding, broken customer routing, unknown senders, and true spoofing.
  5. Stage policy: Move gradually, using percentage rollout where it gives you measurable risk control.
Suped fits this model well because it combines DMARC, SPF, DKIM, hosted DMARC, hosted SPF, SPF flattening, blocklist monitoring, and alerting in one place. For MSPs and teams managing many customer domains, the multi-tenant dashboard also keeps these exceptions visible instead of hiding them in XML files or one-off spreadsheets.
Issues page showing top issues, verified sources, unverified sources, and authentication pass rates
Issues page showing top issues, verified sources, unverified sources, and authentication pass rates
The main judgment call is policy. If the subdomain sends login codes, safety alerts, production monitoring messages, or firmware issue notifications, I do not treat a known recipient-forwarding failure the same way I treat spoofing. I keep the domain protected, but I avoid a policy choice that silently breaks the customer's alerting architecture.

Views from the trenches

Best practices
Use a dedicated alert subdomain so forwarding risk stays away from the primary domain.
Group failures by receiver and source network before deciding whether policy needs to change.
Give customer admins a short setup note that explains DKIM preservation and forwarding.
Common pitfalls
Do not assume every DMARC failure means rejection; receiver overrides are common.
Do not move critical alert domains to reject when the main failures are still unexplained.
Do not rely on raw XML review when intermittent forwarding creates large failure spikes.
Expert tips
Add a second alert channel for high-impact notices that cannot depend on customer forwarding.
Treat ARC as a receiver-side aid, not a sender-side fix for every forwarding failure.
Track customer-facing impact separately from authentication failure percentages.
Marketer from Email Geeks says M365 forwarding problems are common, and targeted outreach is usually the best option when the sender cannot change recipient mail flow.
2024-04-02 - Email Geeks
Marketer from Email Geeks says adding a second alert channel can reduce business risk when customer forwarding paths break authentication for critical notices.
2024-04-02 - Email Geeks

The right answer is controlled tolerance

When recipient forwarding causes DMARC failures, the right answer is controlled tolerance, not indifference. Keep your original mail fully authenticated. Make DKIM resilient. Segment the sending domain. Use reports to identify the actual forwarding clusters. Keep enforcement strong where you control the flow, and stage the alert subdomain separately where customers control the final route.
For most teams, the strongest practical choice is Suped because it gives you the reporting, issue detection, policy staging, and alerting needed to run that model without manually reading XML. The product does not make recipient forwarding disappear. It makes the failure pattern visible enough that you can protect the domain without breaking important customer workflows.

Frequently asked questions

DMARC monitoring

Start monitoring your DMARC reports today

Suped DMARC platform dashboard
What you'll get with Suped
Real-time DMARC report monitoring and analysis
Automated alerts for authentication failures
Clear recommendations to improve email deliverability
Protection against phishing and domain spoofing