A 550 5.7.1 from Gmail means Google refused your message, and the sentence after the code says why. Google uses the same code for mail it took for spam, for a sending domain or IP with a very low reputation, for a recipient's own policy, and for a few setup mistakes, so the fix depends on that sentence. The decoder above opens on Gmail's readings, reputation first, and matches the one in your bounce.
How to read a Gmail 550 5.7.1 bounce
Gmail's reply runs over several lines, and every line but the last starts with "550-5.7.1". The hyphen is not part of the code: the SMTP standard's rule for multiline replies puts it there. So 550-5.7.1 and 550 5.7.1 are the same bounce.
Two words in the reply are worth finding. "gsmtp" marks it as Google's reply. "gcdp" means the refusal comes from a rule the recipient's Google Workspace admin wrote.
Who fixes it
Likely unsolicited mail, or a very low domain or IP reputation. You do. Send less, only to people who expect your mail, and check SPF, DKIM, and DMARC.
A rate limit. You do. Spread the same mail over more hours or days.
A policy that prohibits the email, or gcdp. The recipient's admin does. Reach the person another way and ask them to allow your address.
Headers, IPv6 rules, or relay credentials. Whoever runs your mail server. On a hosted mailbox such as Google Workspace, start at the top of this list.
A policy block ends at one recipient. A reputation block follows you to the next Gmail address, so stop the sending that earned it before you change anything else. Google's email sender guidelines say the same: send only to people who want your mail, and check your reputation in Postmaster Tools.
What to do next
Work in this order: volume, then the list, then authentication. In Oneprofile, each connected mailbox has its own daily send limit, and a sequence never sends past it.
Any bounce that starts with 5 stops email to that address, even when the address is fine. Once the cause is fixed, the clean-up is the same as after a 550 5.7.509 DMARC reject.
