Siftsmith Run on Apify
← All email error fixes

Fix Yahoo 554 5.7.9: message not accepted for policy reasons

Yahoo refused your message permanently. Yahoo’s own help says this bounce “may be due to” DMARC. The usual case: the message didn’t pass SPF or DKIM for a domain aligned with its From: address, and that domain publishes p=reject. Check whether a sending service (a newsletter tool, CRM, help desk or web server) isn’t set up for your domain, or whether the mail was forwarded, and check your records below.

Last verified 8 October 2026.

What Yahoo says about 554 5.7.9

Yahoo Help quotes the error as:

554 5.7.9 Message not accepted for policy reasons

and explains it in these words:

If you receive a "554 5.7.9 Message not accepted for policy reasons" delivery error, it may be due to an issue with the sender not using DMARC.
When an email is automatically forwarded from one provider to another, it may appear to come from an unauthorized server if the provider isn't using DMARC.

To check, Yahoo says to open the raw message and look for two things: X-Yahoo-Forwarded, which “means it was forwarded and the line should include the address to which it was forwarded”, and p=reject, which “means the original domain is using DMARC and per their instructions, the email is being rejected.”

What the two checks point to: the From: domain asks receivers to reject mail that fails DMARC (RFC 7489 §6.3: “reject: The Domain Owner wishes for Mail Receivers to reject email that fails the DMARC mechanism check.”), and this message failed. Yahoo’s FAQ says the same of its own filtering: “If a domain is protected by DMARC with ‘p=reject’, any message without a proper DKIM signature or SPF alignment will be rejected by Yahoo's mail servers.” Failing DMARC doesn’t mean SPF or DKIM failed: they may have passed for the sending service’s domain, which doesn’t count for yours. That is DMARC alignment.

Sources: Yahoo Help, “554 5.7.9 Message not accepted for policy reasons” delivery error; Yahoo Sender Hub, FAQs; RFC 7489 §6.3 (checked 8 October 2026). Yahoo’s Sender Hub doesn’t list the full text of each code, and a real bounce can carry more after the text above.

Yahoo’s other errors, and how they differ

Yahoo’s SMTP error codes page groups its errors by cause rather than listing every code. For the 5xx (553 and 554) permanent errors it gives these reasons, among others:

On authentication it says: “All senders need to authenticate their emails with either SPF or DKIM. Bulk senders must authenticate with SPF and DKIM, and have a DMARC policy in place”. Yahoo treats 5xx errors as permanent and says not to retry them; a 4xx (421 or 451) is temporary, and Yahoo says you may retry later.

Authentication failure (553/554)DMARC or DKIM failed against the sending domain’s policy: this page.
“Content based blocks (e.g: PH* Errors)”Something in the content: Yahoo lists viruses, phishing, ransomware, other malicious software and links to them. Not a DNS problem.
“Message temporarily deferred (eg: TS* Errors)”Temporary: complaints, spam-like content, a poor IP reputation or unusual traffic. Your server usually retries.
“Unresolvable RFC.5321 or RFC.5322 from domain”The Return-Path or From: domain doesn’t appear to be valid. Yahoo: “These errors can be returned as either a timeout/servfail (451) or a permfail (554)”.
4xx authentication“Authentication results for your domain could not be determined due to a temporary error.” Retry; if it keeps happening, check that your DNS answers reliably (see SPF TempError).

Source: Yahoo Sender Hub, SMTP Error Codes (checked 8 October 2026). Quoted headings in the left column are Yahoo’s.

Check your domain’s SPF and DMARC

Enter your From: domain. The check runs in your browser against public DNS: it reads the SPF record, how it ends (-all or ~all), follows its includes to count DNS lookups and find a PermError, and reads the DMARC policy that applies.

What this can and can’t tell you: it reads DNS right now through Cloudflare’s public resolver (Google’s when Cloudflare’s fails). A lookup that fails is reported as unknown, never as a missing record. DKIM isn’t checked, because a DKIM key is published at a selector named only in the message’s DKIM-Signature header; check one with the DKIM key check. For the full A–F grade with DKIM selectors, MTA-STS and more, use the DMARC checker.

What Yahoo requires

Yahoo’s Sender Requirements & Recommendations, enforced from February 2024 (one-click unsubscribe from June 2024):

Yahoo doesn’t set a number for “bulk”: its FAQ says “A ‘bulk’ sender is classified as an email sender sending a significant volume of mail. We will not specify a volume threshold.” On what happens otherwise: “If you do not meet the requirements, your mail may be sent to the spam folder or rejected.” The requirements “apply for all domains and consumer email brands hosted by Yahoo Mail”, which is how the FAQ answers whether they apply to AOL. The full list, with Gmail’s and Microsoft’s, is in bulk sender requirements.

Sources: Yahoo Sender Hub, Sender Requirements & Recommendations and FAQs (checked 8 October 2026).

Causes, in the order to check them

1. DMARC fails at your From: domain, and it publishes p=reject

This is the case Yahoo’s help describes. Run the check above: if the DMARC policy row shows p=reject (or p=quarantine), any mail From: your domain that doesn’t pass DMARC can be refused or sent to spam. To pass, RFC 7489 §4.2: “A message satisfies the DMARC checks if at least one of the supported authentication mechanisms: 1. produces a “pass” result, and 2. produces that result based on an identifier that is in alignment”. Causes 2 to 4 are the usual reasons it didn’t.

If the bounced mail wasn’t From: your domain (you’re a forwarder or a list), the policy that applies is the original sender’s: see cause 4.

2. SPF or DKIM is missing, or passes only for the service’s domain

Many services sign every message with their own domain (d=service.example) and use their own Return-Path until you add your domain in their settings. Their SPF and DKIM pass, but not for a domain aligned with your From:, so DMARC fails. RFC 7489 §3.1.1: “merely bearing a valid signature is not enough to infer authenticity of the Author Domain.” Yahoo’s requirements make the alignment explicit: the From: domain must be “aligned with either the SPF domain or the DKIM domain”.

Fix: in the service’s domain or sender authentication settings, add your domain and publish the DKIM records it gives you (usually CNAMEs or a TXT record at <selector>._domainkey.yourdomain.com), and a custom Return-Path on your domain if it offers one. Yahoo requires a DKIM key of 1024 bits or more and recommends 2048. See DMARC alignment failed for the alignment rules.

3. The sending service isn’t in your SPF record

You added a newsletter tool, CRM, help desk, invoicing app or a web server’s contact form, and it sends as your domain from its own servers. Yahoo sees an IP your record doesn’t list, and its FAQ says SPF records “allow Yahoo to reject messages which originate from IPs not listed in the domain's SPF record.” Without an aligned DKIM pass, the message then fails DMARC too.

Fix: add the service’s include: (from its setup guide) to your one SPF record, for example v=spf1 include:_spf.example.net include:sendservice.example ~all. Never publish a second SPF record: two records are a PermError (merge them). Stay at 10 DNS lookups or fewer (SPF too many DNS lookups), or SPF returns a PermError and passes nothing.

4. Forwarding or a mailing list

A forwarder delivers from its own IP, which isn’t in the original sender’s SPF record, and a list that edits the subject or adds a footer breaks DKIM. RFC 7489 §10.5: “Transiting a Mediator often causes either the authentication to fail or Identifier Alignment to be lost.” If the original From: domain publishes p=reject, Yahoo then refuses the forwarded copy; Yahoo’s help says X-Yahoo-Forwarded in the raw message means it was forwarded.

Fix: sign all your mail with DKIM on your own domain, so it still passes after a forward that doesn’t change it. If you run the forwarder, Yahoo says: “If you forward emails, implement ARC (Authenticated Received Chain).” If you run a list, Yahoo’s advice is:

For mailing lists, also known as “listservs,” you should change your sending behavior by adding the mailing lists' address to the “From:” line, rather than the sender's address. Also, enter the actual user/sender address into the “Reply-To:” line.

5. Bulk mail that misses Yahoo’s other requirements

If SPF, DKIM and DMARC all pass and aligned, check the rest of the list above: a working one-click List-Unsubscribe header (RFC 8058, with List-Unsubscribe-Post: List-Unsubscribe=One-Click) on marketing mail, a spam rate below 0.3%, and valid forward and reverse DNS for your sending IPs. None of these is visible from your domain’s DNS.

6. Content, or another policy reason

554 is also used when the message itself is the problem: Yahoo’s error page lists “The message contains characteristics that Yahoo won't accept for policy reasons”, and under “Other policy errors (e.g. 550, 554)” gives examples such as “A null MX record”, “Header too big (e.g. From, Subject, To)” and “Date outside of range”. If authentication passes in the raw message, look at the content and headers of the mail that bounced.

Sources: Yahoo Sender Hub, Sender Requirements & Recommendations, FAQs and SMTP Error Codes; Yahoo Help, 554 5.7.9 delivery error; RFC 7489 §3.1.1, §4.2, §10.5; RFC 8058 (checked 8 October 2026).

Fix it, step by step

  1. Read the bounce. Note the From: domain and, if it shows them, the IP and the sending server.
  2. Find the service that sent it. The IP’s owner (a reverse lookup or whois on the IP) usually tells you: your mail provider, a marketing tool, your web host, or a forwarder.
  3. Check your records with the checker above: one SPF record, no PermError, and the DMARC policy that applies.
  4. Turn on DKIM with your domain in the service’s settings and publish the records it gives you. This is what fixes DMARC alignment, and it keeps mail passing through a forward that doesn’t change it.
  5. Authorize the service in SPF: add its include: to your one SPF record and stay at 10 lookups or fewer.
  6. Send a test to a Yahoo address and confirm it in the raw message (below). Then resend the bounced mail.

Gmail refuses the same failures with a different code; see Gmail 550 5.7.26. Outlook.com uses 550 5.7.509 for a DMARC reject.

Confirm it in the raw message

Send a message the same way the bounced one went (same service, same From: address) to a Yahoo Mail address you can open. Yahoo’s help article on full headers (written for the older desktop version of Yahoo Mail) says: “Click on an email to open it.” then click the More icon and “select View Raw Message.” Yahoo notes that article is for the older version, so the label may differ in yours.

In the raw message, find the Authentication-Results header, the standard place (RFC 8601) where a receiving server records its SPF, DKIM and DMARC results. A passing message has entries like these:

Authentication-Results: receiver.example;
       dkim=pass header.i=@example.com header.s=s1;
       spf=pass smtp.mailfrom=bounces@example.com;
       dmarc=pass(p=REJECT) header.from=example.com

Sources: Yahoo Help, Find delivery delays and identify sender in Yahoo Mail; RFC 8601 (checked 8 October 2026). The header above is an illustration with documentation names; each receiver formats it a little differently.

FAQ

Should I retry mail that bounced with 554 5.7.9?

Not until you’ve fixed the cause. Yahoo treats 553 and 554 errors as permanent and says not to retry a message that comes back with a 5xx error. Find which check failed, fix the sending service or your records, send a test, then resend.

Does Yahoo require SPF and DKIM, or just one?

Every sender needs SPF or DKIM at a minimum. Bulk senders need both SPF and DKIM, a DMARC record of at least p=none that passes, and a From: domain aligned with the SPF or the DKIM domain. Yahoo doesn’t publish a volume threshold for bulk senders.

Why do only forwarded messages bounce with 554 5.7.9?

A forwarding server delivers from its own IP, which isn’t in the original sender’s SPF record, so SPF fails. If the forward also lost a passing aligned DKIM signature and the original From: domain publishes p=reject, the message fails DMARC and Yahoo refuses it. Yahoo’s help says to look for X-Yahoo-Forwarded and p=reject in the raw message, and Yahoo recommends ARC to anyone who forwards mail.

Does this apply to AOL addresses too?

The sender requirements do: Yahoo says they apply to all domains and consumer email brands hosted by Yahoo Mail, in answer to a question about AOL. Yahoo says Yahoo Japan is a separate company and it can’t speak for its plans.

Should I remove my DMARC record to stop the bounces?

No. Yahoo requires a DMARC record from bulk senders, and removing it drops the policy that tells receivers to reject mail forging your domain. If valid mail fails DMARC at p=reject, you can lower the policy to p=none while you fix the sending service, then raise it again once that service passes with an aligned SPF or DKIM domain.

Checking many domains?

If you manage domains for clients or brands, Email Security Signals checks a whole list and returns one row per domain with SPF (lookup count included), DMARC, DKIM across 57 common selectors plus any you add, and an A–F grade. $0.02 per graded domain ($20 per 1,000); invalid inputs, domains that don’t exist, DNS lookup failures and duplicates are free.

Check a list on the Apify Store →

Related: Gmail 550 5.7.26, Outlook 550 5.7.509, DMARC alignment failed, moving DMARC from none to reject, bulk sender requirements and the free DMARC, SPF and DKIM checker.