Microsoft 365 / Outlook
Microsoft 365 550 5.0.350 — "Remote server returned an error"
550 5.0.350
5.0.350 is a generic error code. Microsoft describes it as a catch-all for a wide range of nonspecific errors returned by the recipient's email organization, so the code alone doesn't say what went wrong. The useful information is the text that comes with it. Microsoft documents two specific versions: "x-dg-ref header is too long", which is caused by messages sent in Rich Text format, and "Requested action not taken: policy violation detected (AS345)", which is caused by nested attachments. For anything else, the remote server's own reply inside the NDR is the real error to fix.
How to fix it
- 1
Find the remote server's own message
Open the NDR's diagnostic details or paste the bounce into the bounce analyzer. Look for the line the receiving server actually returned, often its own SMTP code and text such as a 550 5.7.x policy rejection or a 552 size limit. That inner reply is what you troubleshoot; 5.0.350 only tells you it came from the recipient's side.
- 2
"x-dg-ref header is too long": stop sending in Rich Text
Rich Text messages from Outlook carry Exchange-specific formatting (TNEF, the winmail.dat format) that some receiving systems refuse. Switch the message format to HTML in Outlook (File → Options → Mail → Compose messages in HTML), or have the admin set the remote domain so Rich Text is never sent outside the organization.
- 3
"policy violation detected (AS345)": remove the nested attachment
This version relates to nested attachments, for example an email message attached to another email, carrying its own attachments. Forward the original message instead, or send the files themselves as normal attachments or links.
- 4
If the inner error is about authentication or reputation
When the wrapped reply mentions SPF, DKIM, DMARC or a blocklist, the problem is on your sending side after all. Run the email health check on your domain, and the blacklist checker on your sending IP, before resending.
Meaning current as of 2026-10-24, cross-checked against the provider's own documentation. Providers do occasionally redefine codes — if this doesn't match what you're seeing, the source link is the authoritative reference.