How to Fix Gmail's 550 5.7.26 DMARC Bounce on Cold-Email Subdomains
Gmail bounces cold email from sending subdomains with 550 5.7.26 when SPF or DKIM authenticates but does not align with the From header. Here is the DNS fix.
If your cold-email subdomain started getting hard-bounced by Gmail in the last year with a 550 5.7.26 error, you are not looking at a content problem or a reputation problem. You are looking at an alignment problem, and it is fixable in DNS. The full bounce reads: 550 5.7.26 Unauthenticated email from [your domain] is not accepted due to domain's DMARC policy, and it means exactly one thing - the domain in your visible From header did not line up with a domain that passed SPF or DKIM. This is a different failure from the one Outlook throws (550 5.7.15), and it has its own fix.
The trigger is Google's bulk-sender rule, and as of 2026 it is fully enforced. As of February 1, 2024, senders pushing more than 5,000 messages a day to Gmail have to authenticate with SPF, DKIM, and DMARC - and crucially, they have to align, not merely authenticate. Cold-email operators hit this constantly because they spin up sending subdomains (like mail.outbound-acme.com) and set SPF and DKIM on the subdomain, then forget that the From header still has to match. The verbatim requirement from Google is unambiguous, so it is worth reading once in their own words rather than a vendor's paraphrase.
For direct email, the domain in the sender's From: header must be aligned with either the SPF domain or the DKIM domain. This is required to pass DMARC alignment. [...] Your DMARC enforcement policy can be set to none.
That last line is the part most people miss. You do not need a strict reject policy to clear 5.7.26 - you need alignment. A DMARC record with p=none still requires SPF or DKIM to align with the From domain before Gmail will accept the message at scale. This is the same enforcement wave behind Gmail and Yahoo's permanent rejection of non-DMARC bulk mail, applied at the granular level of one misconfigured subdomain.
How to confirm 5.7.26 is an alignment failure, not an authentication failure
Before you touch DNS, read your own headers. Send one test message from the broken subdomain to a personal Gmail account, open it, and use "Show original." Gmail prints three lines you care about: SPF, DKIM, and DMARC, each with a PASS or FAIL and the domain it checked against. The trap is that SPF and DKIM can both say PASS while DMARC still says FAIL - because PASS only means the signature verified, not that it verified for the From domain.
Look at the domain next to each PASS. If your From header is jane@outbound-acme.com but the DKIM PASS is signed by mail.sendprovider.net, that is the misalignment. The signature is valid; it just belongs to the wrong domain. (I have seen operators stare at two green PASS lines for an hour before realizing DMARC is failing on the mismatch underneath.) The fix is to make at least one of those PASS domains share an organizational domain with your From header.

How to align SPF or DKIM with the From-header domain
You only need one of the two to align - Gmail's rule is satisfied if either SPF aligns or DKIM aligns. DKIM alignment is the more durable choice because it survives forwarding, so fix that first. Sign your mail with a key published under your own sending domain, not your ESP's shared domain. In practice this means adding a CNAME (or TXT) record at a selector like s1._domainkey.outbound-acme.com that points to your provider's DKIM key, so the d= tag in the signature reads outbound-acme.com instead of the provider's domain.
For SPF, the alignment check compares the From domain against the domain in the Return-Path (the envelope sender), not the From header you see. If your provider sets a Return-Path on its own bounce domain, SPF will authenticate but not align. The fix is a custom Return-Path / custom MAIL FROM on your subdomain - most sending platforms expose this as "custom return path" or "custom bounce domain," and it is a CNAME you publish under outbound-acme.com. One more landmine: SPF breaks with a permerror if your record triggers more than 10 DNS lookups, which happens fast when you stack three ESP include statements. Flatten or consolidate so you stay under the limit, or SPF fails outright and you are leaning entirely on DKIM.
How to set DMARC alignment mode and the subdomain policy correctly
Alignment has two modes, relaxed and strict, controlled by the aspf and adkim tags in your DMARC record. Relaxed (the default) lets a subdomain align with its organizational domain - so mail from mail.outbound-acme.com aligns with a From header on outbound-acme.com. Strict demands an exact match. Google's own guidance is blunt about which to pick.
Relaxed alignment typically provides sufficient spoofing protection. Strict alignment can result in messages from associated subdomains to be rejected or sent to spam.
If you set strict alignment by copying someone's hardened DMARC record off a forum, you can manufacture your own 5.7.26 bounce on a subdomain that would have passed under relaxed. Leave it relaxed unless you have a specific reason not to. The second subdomain trap is the sp tag - the subdomain policy. Google's docs are explicit that subdomains inherit the parent domain's DMARC policy when no sp tag is set. So if your root acme.com publishes p=reject and your cold-email subdomain has no aligned authentication yet, the subdomain inherits reject and every message hard-bounces. Either publish a record on the subdomain itself or set sp deliberately on the parent.

How to verify the fix before you resume sending
Do not declare victory off one passing test. After you publish the DNS changes, wait for TTL to expire, then send a fresh test and re-check "Show original" - you want DMARC: PASS with the aligned domain named, not just SPF and DKIM green. Then turn on DMARC aggregate reporting with a rua address so Google mails you daily XML reports showing what fraction of your real traffic is aligning. This is the same hygiene that keeps you under Gmail's 0.3% spam-complaint ceiling - authentication and complaint rate are the two gates, and 5.7.26 is just the loud one. Ramp volume back gradually; a subdomain that was bouncing 100% has no recent positive sending history, and dumping 5,000 messages on it the day alignment passes invites a fresh reputation problem.
This sits one layer below list quality, which is why we think about it at Leadex even though we do not send your mail. Leadex researches and enriches the accounts and contacts that feed your sequences - the discovery-to-enrichment seam - but a perfectly researched list still dies at the SMTP layer if the sending subdomain throws 5.7.26. Get the alignment right first, then the work of building a clean, well-targeted list actually reaches an inbox. The two problems are independent, and you have to solve both.
The deeper point is that 5.7.26 is a feature, not an outage. Gmail is telling you precisely which check failed and on which domain, which is more than most bounce codes do. If you treat it as a DNS task - one DKIM CNAME, one custom Return-Path, one sane DMARC record with relaxed alignment - it is an afternoon of work, and it is the same foundation under any durable cold-email sending infrastructure. The operators who keep getting bounced are the ones still treating it as a reputation mystery.
FAQ
Why does Gmail bounce my cold email with 550 5.7.26 even though SPF and DKIM both pass?
Because passing is not the same as aligning. SPF or DKIM can verify against your ESP's domain while your From header uses a different domain. DMARC fails on that mismatch. Make the From-header domain share an organizational domain with either the SPF (Return-Path) domain or the DKIM d= domain.
Do I need to set DMARC to p=reject to fix 5.7.26?
No. Google states the DMARC enforcement policy can be set to none. The 5.7.26 error is about alignment, not enforcement strength. A record with p=none clears the bounce as long as SPF or DKIM aligns with your From domain.
Why does my cold-email subdomain bounce when my root domain sends fine?
Subdomains inherit the parent domain's DMARC policy when no sp tag is set. If your root publishes p=reject and the subdomain has no aligned authentication, the subdomain inherits reject and every message hard-bounces until you align it.
Should I use strict or relaxed DMARC alignment for a sending subdomain?
Relaxed. Google says relaxed alignment typically provides sufficient spoofing protection, while strict can cause messages from associated subdomains to be rejected or sent to spam. Strict alignment is a common self-inflicted cause of 5.7.26 on subdomains.
How long after fixing DNS will the 5.7.26 bounces stop?
Once the corrected SPF, DKIM, or DMARC records propagate past their TTL, the next aligned message passes immediately. Confirm with a test message and "Show original" showing DMARC: PASS before ramping volume back up gradually.