---
title: "Bounces, complaints & suppression"
description: "How bad addresses are handled and where to review them."
url: https://www.unitpost.com/docs/deliverability
section: Docs
updated: 2026-07-23
---
# Bounces, complaints & suppression

## Bounces, complaints & suppression

> How bad addresses are handled and where to review them.

When an address hard bounces or complains, we add it to your suppression list (/dashboard/contacts?tab=suppressions). It's enforced on every send (single, batch, and campaign), including CC and BCC recipients.

- Hard bounce — the address is invalid or rejected permanently; it's suppressed (reason: bounced).
- Complaint — the recipient marked the mail as spam; it's suppressed (reason: complained).
- Soft bounce — a temporary failure (full mailbox, greylisting); no suppression, and delivery is retried.

Suppressed recipients are excluded, not failed — surfaced as a "Recipients excluded" event on the timeline. Review the list on the Suppressions (/dashboard/contacts?tab=suppressions) tab. You can remove an address there to make it mailable again — but re-sending to bad addresses hurts deliverability.

> **Suppression is separate from marketing unsubscribe:** The suppression list is distinct from a contact's marketing preference. An address can be unsubscribed from marketing but mailable for transactional sends, or suppressed outright. Manage blocks on the Suppressions page; manage preferences on the contact.

> **Get these as webhooks:** Every lifecycle event is available in-app today, and you can also have us POST them to your own endpoint in real time. See the Webhooks guide to register an endpoint and verify the signed payloads.

## Related

- [Webhooks](https://www.unitpost.com/docs/webhooks): Receive signed event notifications at your own endpoint.
- [Inbound routing](https://www.unitpost.com/docs/inbound): Receive emails at your domain and get clean JSON POSTed to your webhook.
- [Install the SDK](https://www.unitpost.com/docs/install): Add the official Node, Python, or Ruby SDK — or call the API directly.
