CRBRASIL
Analytics

Consentimento de cookies em ferramentas de analytics e CRO: como conectar o banner a cada API

Por CRO Brasil ·

Consentimento de cookies em ferramentas de analytics e CRO: como conectar o banner a cada API

O banner diz “recusar”, mas a gravação de sessão continua rodando. Veja como cada ferramenta recebe o sinal de consentimento e como validar que a escolha do usuário é respeitada.

Índice do artigo

O problema: banner de um lado, ferramentas do outro

A maioria dos sites já tem um banner de cookies. O que falta é a ligação entre o banner e as ferramentas. Cada uma tem seu próprio mecanismo: algumas começam a gravar cookies no instante em que carregam, outras têm modo sem consentimento, outras dependem de uma flag no snippet. Se ninguém conecta essas pontas, o banner vira decoração.

Em uma frase: consentimento só existe de verdade quando a escolha do banner chega, como sinal técnico, em cada ferramenta que coleta dados.

O desenho que funciona: um sinal, vários destinos

  1. O banner ou CMP registra a escolha do usuário por categoria (analytics, publicidade, funcionalidade).
  2. A escolha é publicada na camada de dados (ex.: um evento consent_update com o estado de cada categoria).
  3. O Google Tag Manager lê esse estado e:
  • só carrega as tags de ferramentas quando a categoria correspondente foi aceita, ou
  • carrega a ferramenta em modo restrito e envia o sinal de consentimento pela API dela.
  1. Na revogação, o mesmo fluxo envia o sinal de negação.

Assim a regra fica versionada, auditável e igual para todas as ferramentas.

Como cada ferramenta recebe o consentimento

Microsoft Clarity

  • Desative a gravação de cookies por padrão em Settings > Setup.
  • Envie a escolha com window.clarity(‘consentv2’, { ad_Storage, analytics_Storage }), cada um granted ou denied. O consentv2 é o método recomendado.
  • Sem consentimento, o Clarity opera sem cookies, com um ID por pageview.
  • Há integração nativa com CMPs (como CookieYes) que passa o sinal automaticamente.
  • Nos SDKs mobile (Flutter, por exemplo), há um método consent para ads e analytics.

Fullstory

  • Elementos configurados nas regras de privacidade para “capturar com consentimento” só são gravados depois de FS(‘setIdentity’, { consent: true }).
  • consent: false interrompe a captura desses elementos.

CleverTap

  • No snippet, clevertap.privacy.push({ optOut: true }) quando o usuário recusa o compartilhamento de dados.
  • clevertap.privacy.push({ useIP: true }) só quando o usuário aceita o uso do IP.

Hotjar

  • A Identify API vem desativada por padrão e exige aceitar o acordo de processamento de dados para ser ligada.
  • Controle o carregamento do script pelo GTM de acordo com a categoria aceita.

Demais ferramentas (UXCam, VWO, ABsmartly, Croct, Dynamic Yield, Emarsys)

  • Carregue o SDK ou script condicionado à categoria correspondente, ou use os mecanismos de privacidade e mascaramento de cada uma, conforme a documentação oficial.

Revogação: quando o usuário muda de ideia

Consentimento não é evento único. O usuário pode aceitar hoje e recusar amanhã. A implementação precisa:

  • reenviar o sinal de negação às ferramentas que aceitam atualização (Clarity reconhece quando o usuário recusa depois de aceitar e para de gravar cookies);
  • parar de carregar as tags das ferramentas que não têm API de consentimento;
  • manter o registro da mudança no CMP.

A documentação do Clarity é explícita: é responsabilidade do dono do site informar a ferramenta sobre qualquer mudança no consentimento.

Como validar o consentimento

  1. Limpe cookies e abra o site em janela anônima. Antes de interagir com o banner, nenhum cookie de analytics deve aparecer em Application > Cookies no DevTools.
  2. Recuse tudo e navegue. Confira que as ferramentas não gravaram cookies nem enviaram requisições de coleta completa.
  3. Aceite e navegue. Os cookies devem aparecer e as sessões devem ser registradas.
  4. Use os recursos de diagnóstico de cada ferramenta. No Clarity, a chamada clarity(‘metadata’, …) no console retorna o objeto consentStatus, que deve refletir a escolha feita.
  5. Revogue e repita. Os cookies devem parar de ser atualizados.

Documente o teste com prints e repita a cada mudança no banner ou no contêiner.

O que é decisão do jurídico e o que é da implementação

  • Jurídico/DPO: base legal para cada ferramenta, categorias do banner, textos, período de retenção, quais elementos exigem consentimento para gravação.
  • Implementação: garantir que o sinal chegue certo, que nada colete antes da hora e que a revogação funcione.

Este artigo trata da segunda parte. A primeira depende do contexto de cada empresa.

Os erros que mais aparecem

  1. Ferramenta carregada fora do GTM, ignorando o consentimento.
  2. Clarity com cookies ligados por padrão e banner no site.
  3. Revogação que não é repassada às ferramentas.
  4. optOut da CleverTap fixo no código.
  5. Nenhum teste documentado do fluxo de consentimento.

Perguntas frequentes

Ferramentas de gravação de sessão precisam de consentimento?

A necessidade e a base legal são definidas pelo jurídico. Tecnicamente, as principais ferramentas oferecem mecanismos para respeitar a escolha do usuário.

Como conectar o banner de cookies ao Clarity?

Desative os cookies por padrão e envie a escolha com clarity(‘consentv2’, …), ou use uma CMP com integração nativa.

O que acontece no Clarity sem consentimento?

Ele opera sem cookies, gerando um ID por pageview e sem conectar a jornada entre páginas.

Como o Fullstory lida com consentimento?

Elementos marcados para captura com consentimento só são gravados após FS(‘setIdentity’, { consent: true }).

Como bloquear a CleverTap quando o usuário recusa?

Com clevertap.privacy.push({ optOut: true }).

Como testar se o consentimento está funcionando?

Em janela anônima, recuse e aceite no banner e confira cookies e requisições no DevTools, além dos diagnósticos de cada ferramenta.