## TL;DR
A 550 bounce is a hard bounce: the mailbox is gone or never existed. Remove the address after the first 550, because repeated sends to dead addresses tank your sender reputation and push more of your mail to spam. Soft bounces get retries; 550s get removed. That is the whole policy.

## The query

```text
sendgrid 550 bounce: the email address does not exist
```

## Use this when

- SendGrid reports a 550 bounce on a send
- An address hard-bounces on every send
- Support asks whether to keep retrying a bounced address


## Not for

- Soft bounces (mailbox full, temporary failure)
- Spam block or denylist issues
- SendGrid API authentication errors


## Steps

### 1. Read the bounce classification

In the SendGrid activity feed or event webhook, check the bounce type: hard vs soft, and the reason string. 'The email address does not exist' with a 550 code is hard. Only hard bounces trigger removal.

Expected output: the event marked as a hard bounce with the 550 reason.

### 2. Remove the address from all lists

Delete or suppress the address across every list and segment, not just the one that bounced. SendGrid's suppression list does this globally if you add the address there. One stale segment re-sending undoes the fix.

Expected output: the address on the suppression list and absent from active segments.

### 3. Automate it with the event webhook

Listen for bounce events, and auto-suppress hard bounces on arrival. This beats a weekly cleanup job because the reputation damage happens in the hours between the bounce and the cleanup.

Expected output: hard bounces suppressed within minutes, automatically.

### 4. Tell the customer what happened

If this is a real customer whose address died, their support ticket needs a plain answer: 'your mail server says that address doesn't exist, so our system stopped sending to it.' Ask for a current address instead of arguing with the bounce.

Expected output: a support macro explaining hard bounces and asking for an updated address.

## Variant phrasings

### sendgrid hard bounce remove address

Steps 2 and 3: suppress now, automate it next.

### 550 5.1.1 recipient address rejected

The same 550 family. Step 1 confirms the classification before you act.

## Why it happens

Mail servers answer 550 for nonexistent mailboxes, and inbox providers track how often you send to them. Keep hitting dead addresses and you look like a spammer buying lists, so providers throttle or junk everything from your domain. The bounce is data; ignoring it is what costs you.

## Edge cases

- Catch-all domains accept everything then bounce later. They look alive until they aren't.
- Role addresses (support@, info@) bounce differently per provider. Treat them gently.
- A 550 during onboarding usually means a typo. Confirm the address with the customer before suppressing.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_K5XZBWKW9_gFOnS7oClyRA
