Usuários do Gmail começaram a ver algo novo em 2014: um link de cancelar inscrição bem ao lado do nome do remetente, antes mesmo de abrir o email. Nada de vasculhar rodapés, nem texto cinza minúsculo, nem processos em várias etapas. Um clique e pronto.
Essa funcionalidade é viabilizada pelo cabeçalho List-Unsubscribe — um padrão técnico que se tornou essencial para a entregabilidade de emails. O Gmail agora o exige para remetentes em massa. Outros provedores o usam para melhorar a experiência do usuário. Se você envia emails de marketing ou em massa, entender e implementar esse cabeçalho não é mais opcional.
O que o cabeçalho faz
O cabeçalho List-Unsubscribe fornece aos clientes de email uma forma legível por máquina de cancelar a inscrição de destinatários da sua lista.
Quando presente nos cabeçalhos do seu email, os clientes de email podem exibir uma opção de cancelamento em sua interface — geralmente perto do nome do remetente ou em um menu. Os usuários podem cancelar a inscrição sem abrir o email, sem encontrar o seu link de descadastro, nem visitar o seu site.
O cabeçalho pode especificar dois métodos para cancelar a inscrição: um endereço mailto (enviar um email para cancelar) ou uma URL HTTPS (visitar uma página para cancelar). A melhor prática é incluir ambos, dando opções aos clientes de email.
Isso não substitui o link de cancelamento de inscrição no corpo do seu email — você ainda precisa dele para conformidade com CAN-SPAM e outras regulamentações. O cabeçalho é um mecanismo adicional que torna o cancelamento mais fácil e visível.
Por que isso importa para a entregabilidade
O cabeçalho List-Unsubscribe se tornou um fator de entregabilidade, não apenas um extra conveniente.
O Gmail o exige para remetentes em massa. A partir de fevereiro de 2024, quem envia mais de 5.000 mensagens por dia para endereços do Gmail deve incluir cabeçalhos List-Unsubscribe com suporte a cancelamento em um clique. A não conformidade pode resultar em problemas de entrega.
Cancelar inscrição facilmente reduz reclamações de spam. Quando é difícil cancelar, usuários frustrados apertam o botão de spam. Reclamações de spam prejudicam sua reputação de remetente muito mais do que cancelamentos. O cabeçalho canaliza as saídas por um caminho menos danoso.
Clientes de email favorecem remetentes que o implementam. Embora nem sempre explícito, provedores como o Gmail consideram o comportamento do remetente em seus filtros. Tornar o cancelamento fácil sinaliza que você é um remetente legítimo que respeita os destinatários.
Melhora a experiência do usuário, o que indiretamente ajuda a entregabilidade. Destinatários satisfeitos engajam mais e reclamam menos. Qualquer coisa que melhore a experiência deles com seu email beneficia o seu programa.
Sintaxe do cabeçalho
O List-Unsubscribe segue um formato específico.
Um cabeçalho básico apenas com um endereço mailto é assim: List-Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
Um cabeçalho apenas com uma URL HTTPS é assim: List-Unsubscribe: <https://example.com/unsubscribe?id=abc123>
A melhor prática é incluir ambos: List-Unsubscribe: <mailto:[email protected]>, <https://example.com/unsubscribe?id=abc123>
Os colchetes angulares são obrigatórios. Múltiplos métodos são separados por vírgulas. O mailto pode incluir parâmetros de subject e body para ajudar a identificar a solicitação de cancelamento.
A URL deve ser única por destinatário para você saber quem está cancelando. Inclua um token ou identificador que mapeie para o assinante específico.
List-Unsubscribe-Post para um clique
O cabeçalho List-Unsubscribe-Post habilita o cancelamento em um clique de verdade, o que o Gmail agora exige para remetentes em massa.
Sem esse cabeçalho, ao clicar em cancelar no Gmail, a URL é aberta no navegador, exigindo que o usuário confirme em uma página. Com o List-Unsubscribe-Post, o Gmail envia uma solicitação HTTP POST diretamente para a sua URL, concluindo o cancelamento sem qualquer interação além do clique inicial.
O cabeçalho é simples: List-Unsubscribe-Post: List-Unsubscribe=One-Click
Quando ambos os cabeçalhos estão presentes, clientes de email que suportam um clique farão POST para a sua URL com o corpo "List-Unsubscribe=One-Click". Seu servidor deve processar isso e cancelar a inscrição do usuário imediatamente.
Esse é o padrão exigido pelo Gmail. Se você envia email em massa para usuários do Gmail, precisa dos cabeçalhos List-Unsubscribe (com uma URL HTTPS) e List-Unsubscribe-Post.
Detalhes de implementação
Implementar o List-Unsubscribe exige tanto configuração de cabeçalhos quanto tratamento no backend.
Gere URLs únicas por destinatário. Cada email deve ter uma URL de cancelamento que identifique o assinante específico. Pode ser um token assinado, um ID de banco de dados ou outro identificador que permita processar corretamente o cancelamento.
Trate solicitações POST para um clique. Seu endpoint de cancelamento precisa aceitar solicitações POST com o corpo de um clique e processá-las sem exigir qualquer interação do usuário. Retorne um status 200 em caso de sucesso.
Trate solicitações GET como fallback. Alguns clientes de email abrirão a URL no navegador em vez de fazer POST. Seu endpoint deve tratar GET também, seja processando o cancelamento diretamente ou exibindo uma página de confirmação.
Processe cancelamentos via mailto. Se você incluir um endereço mailto, é preciso monitorar essa caixa de entrada e processar emails de cancelamento. Isso pode ser automatizado, mas requer infraestrutura.
A maioria dos provedores de serviços de email lida com isso automaticamente. Se você usa SendGrid, Mailgun, Postmark ou serviços similares, eles adicionam os cabeçalhos apropriados e tratam o backend. Consulte a documentação do seu provedor.
Erros comuns de implementação
Vários erros causam problemas com o List-Unsubscribe.
Faltar o cabeçalho Post significa não ter suporte a um clique. O Gmail mostrará uma opção de cancelamento, mas ela abre uma página da web em vez de cancelar imediatamente. Para remetentes em massa, isso não atende aos requisitos do Gmail.
URLs quebradas causam falhas no cancelamento. Se sua URL de cancelamento retorna erros, expira por timeout ou não cancela de fato o usuário, você piorou a experiência, não melhorou. Teste seus endpoints.
URLs não únicas não conseguem identificar quem cancelar. Se todo email tem a mesma URL de cancelamento sem identificador do destinatário, você não consegue processar a solicitação. Cada URL deve mapear para um assinante específico.
Exigir autenticação vai contra o objetivo. Se sua URL de cancelamento requer login, os usuários não conseguem cancelar facilmente. A URL deve funcionar sem qualquer autenticação.
Processamento lento frustra usuários e clientes de email. O cancelamento em um clique deve ser instantâneo. Se seu endpoint demora segundos para responder, clientes de email podem expirar por timeout ou usuários podem achar que não funcionou.
Testando sua implementação
Verifique se sua implementação de List-Unsubscribe funciona corretamente.
Cheque os cabeçalhos nos emails enviados. Envie um email de teste e veja os cabeçalhos brutos. Verifique se List-Unsubscribe e List-Unsubscribe-Post estão presentes com a sintaxe correta.
Teste a URL diretamente. Visite sua URL de cancelamento no navegador. Funciona? Cancela mesmo o destinatário de teste?
Teste o endpoint de POST. Use curl ou ferramenta similar para fazer POST na sua URL de cancelamento com o corpo de um clique. Verifique se retorna 200 e processa o cancelamento.
Teste no Gmail. Envie para um endereço Gmail e procure a opção de cancelamento perto do nome do remetente. Clique e verifique se o cancelamento é processado corretamente.
Monitore erros. Em produção, monitore seu endpoint de cancelamento em busca de erros. Cancelamentos falhos são ruins para usuários e potencialmente para sua reputação de remetente.
Quando incluir o cabeçalho
O cabeçalho é apropriado para a maioria dos emails em massa e de marketing, mas não para todos os tipos.
Inclua em newsletters, emails de marketing, conteúdo promocional e qualquer comunicação recorrente em massa. São os emails em que o cancelamento fácil mais importa.
Considere incluir em emails de notificação que os usuários possam querer parar de receber. Mesmo que sejam tecnicamente transacionais, se os usuários possivelmente querem optar por não receber, facilite.
Não inclua em emails realmente transacionais como redefinições de senha, confirmações de pedido ou alertas de segurança. Esses não são baseados em assinatura, e uma opção de cancelamento não faz sentido.
Não inclua em emails pessoais um a um. O cabeçalho é para envio em massa/automatizado, não para correspondência individual.
Frequently asked questions
O List-Unsubscribe é obrigatório por lei?
Não diretamente, mas a CAN-SPAM e leis semelhantes exigem um mecanismo de cancelamento de inscrição. O cabeçalho complementa (não substitui) o link obrigatório no corpo do seu email. A exigência do Gmail para remetentes em massa o torna, na prática, obrigatório para esse público.
O cabeçalho substitui o link de cancelar inscrição no meu email?
Não. Você ainda precisa de um link de cancelamento de inscrição no corpo do email para conformidade legal e para clientes de email que não suportam o cabeçalho. O cabeçalho é um mecanismo adicional, não uma substituição.
E se alguém cancelar a inscrição pelo cabeçalho e eu não processar?
Você estará violando a solicitação de cancelamento de inscrição, o que é um problema legal e de reputação. Se a pessoa tentar cancelar a inscrição e continuar recebendo emails, ela vai marcar você como spam.
Todos os clientes de email suportam o List-Unsubscribe?
A maioria dos principais clientes oferece algum nível de suporte. Gmail, Apple Mail, Outlook.com e Yahoo reconhecem o cabeçalho. O suporte a um clique (List-Unsubscribe-Post) é mais limitado, mas está crescendo.