A maior parte dos sítios tem um aviso de cookies porque a sua analítica precisa de um. Elimina esse requisito e o aviso pode desaparecer com ele, juntamente com o problema da taxa de consentimento que está por baixo, que é o que te custa de facto.
Este é um resumo de como as regras funcionam na prática; não é aconselhamento jurídico. Se a tua situação é fora do vulgar, consulta alguém qualificado.
A regra é sobre armazenamento, não sobre cookies
O texto pertinente é o artigo 5.º, n.º 3, da Diretiva ePrivacy, que todos os Estados-Membros da UE transpuseram para a sua própria lei: em Portugal, o artigo 5.º da Lei n.º 41/2004, aplicado pela CNPD. Não menciona cookies. Cobre o facto de armazenar informação no equipamento terminal de um utilizador, ou aceder a informação nele armazenada: o seu telemóvel, o seu portátil.
Essa redação é deliberadamente neutra do ponto de vista tecnológico, e resolve uma questão sobre a qual as pessoas continuam a discutir. O localStorage é armazenamento no dispositivo do utilizador. Também o são o sessionStorage, um registo de IndexedDB, uma entrada de cache usada como identificador e uma impressão digital de canvas; esta última porque ler as características de um dispositivo é "aceder a informação nele armazenada".
Trocar o document.cookie pelo localStorage.setItem não muda nada juridicamente. Há imensas ferramentas de analítica "sem cookies" que fazem exatamente isso, e que por isso se apresentam como livres de cookies. O teste é se alguma coisa é escrita no dispositivo do visitante ou lida dele, não como se chama a API.
A exceção, e porque é que a analítica raramente encaixa nela
O artigo 5.º, n.º 3, tem duas exceções. O armazenamento é permitido sem consentimento quando tem como finalidade exclusiva efetuar uma transmissão ou quando é estritamente necessário para um serviço que o utilizador pediu expressamente.
"Estritamente necessário" quer dizer necessário para a coisa que o visitante pediu. Um carrinho de compras encaixa: sem ele o processo de compra que o visitante pediu não funciona. Uma sessão iniciada também. A analítica não, porque o sítio funciona perfeitamente para o visitante quer o estejas a contar quer não. A medição é uma coisa que tu pediste.
Algumas autoridades abriram um espaço estreito para a medição da própria audiência. A CNIL francesa é o exemplo mais claro: publica uma exceção para analítica estritamente limitada a medir a audiência do próprio sítio, usada apenas pelo editor do sítio, sem seguimento entre sítios e com um limite de conservação. As suas condições são concretas e vale a pena lê-las se operas em França; a CNPD publica as suas próprias orientações sobre cookies, que abordam as cookies de medição ou de analítica em termos parecidos. Muitos Estados-Membros não têm equivalente, e é por isso que o mais simples é uma ferramenta que evite por completo o armazenamento no dispositivo.
O que um aviso te custa
Além de ser feio, um aviso de consentimento tem um custo mensurável: os visitantes que recusam faltam nos teus dados.
A taxa exata depende do teu público, da tua geografia, e de como o aviso está redigido, portanto trata qualquer valor publicado com desconfiança, incluindo os que aparecem com ar de certeza. O que é constante é a direção. Quem mais tende a recusar são sobretudo pessoas preocupadas com a privacidade, perfis técnicos e quem bloqueia anúncios, e essas pessoas não são uma amostra aleatória do teu tráfego. A tua analítica deixa de ser uma contagem e passa a ser um inquérito com um grupo de inquiridos que se escolheu a si próprio.
Essa distorção propaga-se. A taxa de conversão é calculada sobre um denominador a que falta uma fração desconhecida das visitas. A atribuição por canal fica sem os canais de onde esses visitantes vieram. Os resultados de um teste A/B são tirados do subconjunto que aceitou ser medido.
Pior ainda: a perda é silenciosa. Não há nada no painel que diga "e aconteceram mais 30% de visitas que não consegues ver". Os números parecem completos.
Como é uma identidade sem armazenamento no dispositivo
Se não se pode escrever nada no dispositivo, a pergunta óbvia é como é que alguém distingue um visitante de outro.
A resposta é derivar um identificador no servidor a partir de coisas que o pedido já contém (tipicamente o endereço IP, o agente do utilizador, o sítio, e a data) e passá-las por uma função de dispersão juntamente com um segredo que roda. Rodar o segredo diariamente faz com que o identificador de um dado visitante seja diferente amanhã, e destruir o segredo antigo faz com que depois não possa ser reconstruído, nem sequer por quem tem os dados.
Isso dá-te contagens rigorosas dentro de um dia e abdica deliberadamente da capacidade de seguir alguém ao longo de vários dias. É uma troca real, e vale a pena ser direto quanto aos relatórios que te custa:
- Os visitantes únicos por dia, as sessões, a taxa de rejeição, as origens, as páginas e as conversões funcionam todos normalmente.
- As taxas de visitantes que voltam e as coortes de retenção de vários dias não. Não podem, porque o objetivo todo é o identificador de hoje não poder ser ligado ao de ontem.
Quem afirmar que podes ter identidade entre dias sem nada guardado no dispositivo e sem identificador persistente está a descrever uma impressão digital, chame-lhe o que chamar, e uma impressão digital cai em cheio dentro do artigo 5.º, n.º 3.
Onde é que a Skomi se posiciona
A Skomi deriva a identidade no servidor a partir de um sal que roda diariamente e é destruído ao fim de dois dias. O rastreador não escreve cookie nenhum nem guarda identificador nenhum no dispositivo do visitante; o código que o faria não está apenas desligado, foi retirado do ficheiro que o navegador descarrega, o que é uma afirmação muito diferente de "não o usamos". A única coisa que guarda lá é uma escolha do próprio visitante, como ter fechado o widget de opiniões, e só depois de ele a fazer.
As coortes de retenção são o relatório que isto custa, e isso está dito com todas as letras na página do Analytics em vez de enterrado. Um sítio que precise delas pode optar, sítio a sítio, por uma identidade guardada no dispositivo, e a partir daí volta a precisar de um aviso: é a descrição honesta do que esse interruptor faz.
A outra coisa que vale a pena verificar em qualquer ferramenta que avalies: se o fornecedor consegue ligar os teus visitantes uns aos outros através dos outros sítios que mede. Um identificador por sítio que nunca atravessa fronteiras de sítio é uma postura de privacidade diferente de um identificador global, e normalmente não é anunciada.
O que verificar no teu próprio sítio
- Abre o teu sítio numa janela privada com as ferramentas de programador abertas.
- Antes de aceitares seja o que for, olha para Aplicação → Local Storage, Session Storage, IndexedDB e Cookies.
- Tudo o que lá estiver foi escrito antes do consentimento. Se foi a tua analítica que o pôs lá, o aviso não está a fazer nada por ti juridicamente, porque o armazenamento já aconteceu.
Esse terceiro ponto apanha mais sítios do que qualquer outro engano isolado. Um aviso que aparece depois de o rastreador já ter escrito o seu identificador é decoração.
Se queres que a própria ferramenta seja a razão para o aviso poder desaparecer, é para isso que o valor de origem da Skomi foi construído. As páginas de comparação dizem quais das alternativas partilham esse valor de origem e quais não, incluindo os pontos em que ganham.
O mecanismo tem um nome e uma definição: sem cookies quer dizer identidade derivada no servidor a partir de um sal que muda todos os dias, e é também por isso que um visitante que volte na semana seguinte é contado como novo.