How to fix 550 5.7.509 access denied by DMARC

Paste a 550 5.7.509 bounce from Microsoft 365 to see why your From domain failed DMARC and which record or service to fix.

Try:

Runs in your browser. Nothing is sent or stored.

550 5.7.509: DMARC failed and the policy is rejectThe domain in the From address did not pass DMARC, and its DMARC policy says reject.Microsoft 365 ยท Hard bounce ยท No automatic retry
  • The fixRead the reasons in the NDR, then add, correct or align the records. If a DMARC report service reads your reports, ask it. The NDR includes the failed message's headers.
    Why

    A missing or wrong DMARC, SPF or DKIM record, SPF or DKIM that do not align with the From domain, no DKIM signature, or forwarding that broke SPF or DKIM.

    Source: learn.microsoft.com (opens in a new tab). Checked Nov 9, 2026.

Browse all 213 codes

1 of 213 codes

  • 550 5.7.509DMARC failed and the policy is rejectMicrosoft 365
    What it means
    The domain in the From address did not pass DMARC, and its DMARC policy says reject.
    Why it happens
    A missing or wrong DMARC, SPF or DKIM record, SPF or DKIM that do not align with the From domain, no DKIM signature, or forwarding that broke SPF or DKIM.
    The fix
    Read the reasons in the NDR, then add, correct or align the records. If a DMARC report service reads your reports, ask it. The NDR includes the failed message's headers.
    Bounce
    Hard bounce. No automatic retry

    Source: learn.microsoft.com (opens in a new tab). Checked Nov 9, 2026.

Photo of Utku Zihnioglu

By

ยท CEO & co-founder

Updated Nov 11, 2026

Shorter page: the tool first, the answer in a few lines.

550 5.7.509 means Microsoft 365 or Outlook.com refused your message because the domain in its From address failed DMARC, and that domain's policy is reject. Fix it by making SPF or DKIM pass for your own From domain in the service that sent the message. The address you wrote to is fine.

How to read the result

Microsoft's wording, from its list of Exchange Online bounce codes, is "sending domain [your domain] does not pass DMARC verification and has a DMARC policy of reject". The domain in brackets is your From domain. It is not the tool you sent through, which often passes every check for its own domain while yours fails.

To see which check failed, send a test from the same service to a mailbox you can read and open the full headers. The Authentication-Results line lists spf, dkim, and dmarc, each with the domain it checked.

What the headers tell you

The DMARC standard, RFC 9989, counts a pass only for a domain aligned with your From domain.

  • spf=fail and dkim=none for your domain. The service is not set up for your domain. Add it to your SPF record and turn on DKIM signing for your domain there.

  • spf=pass and dkim=pass, but for the service's domain. Neither aligns. Set up DKIM with your own domain in the service.

  • spf=permerror. Your SPF record is broken, often from too many includes. Merge or remove includes until it is valid.

  • Everything passes on your test. The bounced message came from another service that sends as your domain, or from someone spoofing it. If you never sent it, the reject worked.

What to do next

Test again from every service that sends as your domain. DNS changes take time to reach every receiver, so a bounce soon after an edit proves little.

Oneprofile treats any bounce that starts with 5 as a hard bounce, so good addresses that bounced with 5.7.509 land on your do-not-contact list. Once your domain passes, remove them from that list in Settings to email them again.

550 5.7.509: common questions

Is 550 5.7.509 a hard bounce?

Yes. It is a permanent refusal, so the receiving server does not try again, and resending gets the same answer until SPF or DKIM passes and aligns with your From domain. The recipient's address is not the problem.

Why does only one Microsoft recipient bounce with 5.7.509?

Usually a forward. That address passes your mail on to another mailbox, the forwarding server is not in your SPF record, and any change to the message breaks DKIM. Signing DKIM with your own domain is the part you control; the forwarder can add ARC.

Should I set my DMARC policy to none to stop 550 5.7.509?

No. It stops the bounces and the protection with them: receivers then deliver mail that fails DMARC, including mail that spoofs your domain. Make the sending service pass and align instead, then keep the reject policy.

About this article

Photo of Utku Zihnioglu

Utku Zihnioglu

CEO & co-founder

Serial entrepreneur who built infrastructure companies handling billions of requests. Now leads engineering at Oneprofile, which finds the people worth talking to, researches each one, and follows up until they reply.

Drafted with AI from our product docs and code. Utku Zihnioglu answers for what it says.

Verify every address before the next send

Oneprofile can verify each address on your list before a sequence sends, and you can start free.

Free plan: 200 credits a month, 3 integrations, no card

Verify every address before the next send

Oneprofile can verify each address on your list before a sequence sends, and you can start free.

Free plan: 200 credits a month, 3 integrations, no card