Quase todo banner de cookies brasileiro tem o mesmo desenho: um botão amarelo grande escrito "Aceitar todos" e, do lado, um link cinza pequeno escrito "Configurar". Quem clica em configurar cai numa tela com categorias e precisa desmarcar uma a uma.
Esse desenho não é acidente. Ele existe para que aceitar seja fácil e recusar seja cansativo. E é justamente o que descaracteriza o consentimento livre que a LGPD exige.
O que a lei pede
O art. 5º, XII define consentimento como manifestação livre, informada e inequívoca. Os três adjetivos têm consequência prática:
- Livre — recusar não pode custar mais esforço que aceitar, e não pode bloquear o conteúdo.
- Informada — a pessoa precisa saber o que está autorizando, por finalidade.
- Inequívoca — silêncio não é aceite. Continuar navegando não é aceite. Caixa pré-marcada não é aceite.
O guia orientativo da ANPD sobre cookies detalha isso e é a referência que a fiscalização usa. Vale ler a versão vigente antes de desenhar qualquer banner.
Os erros mais comuns
1. Caixa pré-marcada
Abrir o painel com "medição de audiência" já ligada inverte a lógica: transforma consentimento em recusa ativa. Opcional começa desligado, sempre.
2. Cookie criado antes da escolha
Muitos sites disparam o script de análise no carregamento e só depois mostram o banner. Quando a pessoa clica em recusar, o cookie já existe há dez segundos. O teste é simples: abra o site em aba anônima, veja os cookies antes de clicar em qualquer coisa.
3. Botões com pesos diferentes
Padrão escuro
[ ACEITAR TODOS ]
configurar
Consentimento livre
[ Aceitar todos ]
[ Recusar todos ]
escolher finalidades
Mesmo tamanho, mesma tipografia, contraste equivalente. Recusar em um clique, igual a aceitar.
4. Cookie wall
Bloquear o conteúdo até a pessoa aceitar elimina a liberdade da escolha. Se o site não funciona sem consentimento, não há consentimento.
5. Não dá para mudar de ideia
Revogação precisa ser tão simples quanto conceder. Na prática: um link fixo no rodapé de todas as páginas que reabre o painel.
6. Nenhum registro do que foi consentido
O art. 8º, §2º coloca no controlador o ônus de provar que o consentimento foi obtido. Banner sem registro não prova nada. O mínimo é guardar data, versão da política e finalidades autorizadas.
Versionamento: o detalhe que quase ninguém faz
Você acrescenta uma ferramenta nova ao site. As pessoas que já aceitaram continuam com o consentimento antigo — dado para uma lista de cookies que não existe mais.
A solução é numerar a política. O consentimento guarda o número da versão vigente quando foi dado; ao mudar a lista, o número sobe e quem tem versão anterior é perguntado de novo:
{ "v": 2, "ts": 1756400000,
"cat": { "desempenho": true, "marketing": false } }
// no servidor: versao diferente = sem escolha valida
if ($dados['v'] !== CONSENT_VERSAO) return null;
Cuidado com um detalhe: o número da versão existe em dois lugares — no PHP e no JavaScript. Se divergirem, o banner reaparece para sempre ou nunca mais. Vale um teste automatizado comparando os dois.
Cookie não é a única coisa que precisa de aviso
Carregar fonte, script ou mapa de outro domínio entrega o IP do visitante àquele fornecedor no instante em que a página abre — sem cookie nenhum. Isso é tratamento de dado pessoal e precisa estar declarado.
Google Fonts é o caso mais comum, e o mais fácil de resolver: baixar os arquivos e servir do próprio domínio. Melhor que declarar é não precisar declarar.
O teste de dez segundos
- Abra o site em aba anônima.
- Antes de clicar em qualquer coisa, veja os cookies. Tem algum opcional? Já errou.
- Dá para recusar tudo em um clique, com botão do mesmo tamanho do de aceitar?
- O conteúdo aparece com o banner aberto?
- Existe link no rodapé para mudar de ideia?
- A página de cookies lista cada cookie por nome, finalidade e prazo?
Duas respostas ruins e o banner está fazendo o oposto do que deveria: registrando um consentimento que não se sustenta.