SMTPRunbook 0/4 done
550 5.7.1

SMTP Error 550 5.7.1: Unauthenticated email rejected

Error✕ Not retryable · fix the payloadNetwork
TL;DR · 10-second read

The receiving server rejected the message because it failed SPF/DKIM alignment and the From domain's DMARC policy is p=reject. Sign with DKIM for the From domain and include your sender in SPF.

Identify: does your log match?

What you see · exact log / response
550-5.7.1 Unauthenticated email from example.com is not accepted due to
550-5.7.1 domain's DMARC policy. Please contact the administrator of
550-5.7.1 example.com domain if this was a legitimate mail. To learn about
550-5.7.1 the DMARC initiative, go to
550 5.7.1  https://support.google.com/mail/?p=DmarcRejection d9443c01a7336-20e2b4c1a2fsi1234567b3.512 - gsmtp
  1. High

    Sending service missing from SPF

    Mail goes out through a provider (SES, SendGrid, Resend) whose IPs are not in the domain's SPF record, so SPF fails.

  2. High

    DKIM signs with a different domain

    The provider signs with its own domain (d=amazonses.com), which does not align with the From domain, so DMARC fails even if DKIM passes.

  3. Low

    Forwarding breaks SPF

    A forwarder relays the message from its own IP; without ARC or aligned DKIM the final hop fails DMARC.

Fix

Check and fix SPF, DKIM and DMARC DNS records

✕ Broken · CLI
example.com.  TXT  "v=spf1 mx -all"
_dmarc.example.com.  TXT  "v=DMARC1; p=reject"
✓ Fixed · CLI
dig +short TXT example.com
dig +short TXT resend._domainkey.example.com
dig +short TXT _dmarc.example.com

# records to publish
example.com.         TXT  "v=spf1 mx include:amazonses.com -all"
_dmarc.example.com.  TXT  "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"

SPF must include every sending service. Start DMARC at quarantine with rua reports, confirm alignment, then move to reject.

Verify: reproduce it on purpose

Reproduce locally · swaks
$ swaks --to you@gmail.com --from test@yourdomain.com --server gmail-smtp-in.l.google.com --port 25

Run it against a dev environment to trigger 550 5.7.1 on purpose and test your error handler.

Prevent

  • Use a custom MAIL FROM / return-path subdomain at your ESP.
  • Monitor DMARC aggregate (rua) reports weekly.
  • Send marketing and transactional mail from separate subdomains.

FAQ

Why does Gmail now return 5.7.26 instead of 5.7.1?

Gmail moved most authentication failures to 5.7.26 in 2024. Older logs and other providers still use 5.7.1 for the same DMARC rejection.

Does 550 5.7.1 always mean DMARC?

No. Microsoft returns 550 5.7.1 for "Unable to relay" and blocklisted senders too. Read the text after the code.

How do I test SPF/DKIM/DMARC alignment?

Send to a Gmail address, open "Show original" and check that SPF, DKIM and DMARC all say PASS with your domain.

Related errors

Last verified 2026-10-19 · Source: RFC 5321 reply codes + RFC 3463 enhanced status codes (IANA registry) · Official docs ↗ · ~9,900 searches/mo