List-Unsubscribe
The header that puts an unsubscribe control in the mail client itself, and why it lowers complaints
List-Unsubscribe is a header on a message that tells the mail client how to unsubscribe the reader. Gmail, Apple Mail and Outlook all read it and render their own unsubscribe control at the top of the message, next to the sender's name.
Two forms exist, and modern practice is to send both:
- A URL, which the client can call directly. The
List-Unsubscribe-Postheader signals that a one-click POST is supported, so the reader is never taken to a landing page. - A mailto: address, for clients that prefer it.
Why you want it
It is the cheapest complaint reduction available. When the easiest visible control is "unsubscribe", people use it. When the easiest visible control is "report spam", people use that instead — and a complaint costs your sender reputation enormously more than an unsubscribe does.
Bulk senders to the major providers are also now required to support one-click unsubscribe, so this is table stakes rather than an optimisation.
The rule that goes with it
An unsubscribe must be honoured promptly and without conditions. No login, no confirmation step, no survey. That is both the law in most places and the behaviour that keeps people from reaching for the spam button next time.
In Sendly
Marketing sends carry both headers. The URL in them is a signed, single-recipient link rather than a guessable contact id, which RFC 8058 requires for a good reason: the header is fetched unattended by scanners and previewers that will POST whatever they find, so a guessable one unsubscribes strangers.
A one-click unsubscribe is applied when the request arrives, not queued behind a page or a confirmation. It stops marketing to that contact and switches off every topic they were subscribed to, so a later topic subscription cannot quietly resurrect the mail they just refused.
Two things it deliberately does not do. It does not stop transactional mail, because a password reset is not something a marketing preference cancels. And it does not add the address to your suppression list — that is a separate, project-wide block that you control and that applies to every send, transactional included.