Analytics

Dados First-Party e Teste A/B num Mundo Pós-Cookie

Teste A/B com dados first-party: o que os limites de armazenamento e o consentimento custam, como a perda de identidade infla o prazo e por onde começar.

Ilustração de um escudo segurando fileiras organizadas de blocos de dados, com linhas pontilhadas parando na borda e uma linha sólida entrando por baixo

Teste A/B nunca dependeu de cookie de terceiro, então a virada de privacidade não quebrou o método; ela quebrou a contabilidade em volta dele. A divisão acontece no seu próprio domínio, com os seus próprios visitantes, medida contra as suas próprias conversões, o que é first-party por construção. O que se degradou foi a durabilidade da identidade que leva a alocação de uma visita para a seguinte, e a completude da analítica que descreve quem foi alocado. Este artigo é filho do guia completo de GA4 e teste A/B e responde uma pergunta prática: o que um programa de testes precisa mudar quando uma fatia relevante dos visitantes não pode ser medida, ou não pode ser reconhecida na segunda visita.

A versão curta: a sua amostra necessária não se move, o seu denominador semanal se move, e quase todo problema prático daí para baixo vem de time que não refez essa segunda conta.

O que mudou, com precisão

Três coisas diferentes costumam ser embrulhadas juntas sob o rótulo de “apocalipse dos cookies”, e elas têm consequências bem diferentes para um experimento.

Mudança O que afeta Efeito no teste A/B
Cookie de terceiro bloqueado por padrão no Safari e no Firefox Rastreamento entre sites e medição de anúncio Quase nenhum: a divisão e a conversão são no mesmo site
Armazenamento first-party do lado do cliente com vida útil limitada Quanto tempo a alocação sobrevive Real: quem volta é realocado, diluindo o efeito medido
Consentimento exigido antes de as tags de medição dispararem Quem aparece na analítica Real: a população medida vira um subconjunto autosselecionado

A primeira linha é a que ganha manchete e a que menos importa aqui. O Google anunciou em abril de 2025 que o Chrome não lançaria um aviso dedicado sobre cookies de terceiros e manteria a escolha já existente do usuário, enquanto Safari e Firefox os bloqueiam por padrão há anos. De um jeito ou de outro, nada disso toca um experimento no mesmo site.

A segunda linha é onde mora o estrago. O Intelligent Tracking Prevention da Apple limita a vida útil dos cookies escritos por JavaScript no cliente, documentado pela equipe do WebKit desde o ITP 2.1, em 2019, com limite adicional para armazenamento gravável por script depois de navegação entre sites com decoração de link. Um teste cuja alocação está guardada desse jeito perde visitantes recorrentes num calendário definido pelo navegador, não por você.

A terceira linha é uma decisão de projeto que você controla, e a mais frequentemente aplicada de forma inconsistente.

Perda de identidade dilui o efeito, não enviesa

Vale ser preciso nessa distinção, porque os dois modos de falha pedem respostas diferentes.

Quando quem volta é sorteado de novo, mais ou menos metade das vezes cai do mesmo lado e nada acontece, e mais ou menos metade das vezes atravessa. As travessias não favorecem sistematicamente nenhuma variação, então não criam um vencedor falso; elas misturam as duas populações e puxam a diferença observada em direção ao zero. Uma melhora real de 10% é medida como algo menor, e um teste dimensionado para 10% agora tem poder insuficiente para o que consegue de fato detectar.

O viés, ao contrário, vem de qualquer coisa que trate os dois braços de forma diferente: um fluxo de consentimento que trava um lado e não o outro, uma tag que dispara antes da renderização em um dos braços, um bloqueador de script que pega a requisição extra da variação e não a do controle. Isso produz resposta errada, não resposta fraca.

Diluição por realocação de visitantes recorrentes comparada ao viés assimétricoÀ esquerda, a perda de identidade manda quem volta de novo para o sorteio, então cerca de metade atravessa para a outra variação. As duas populações se misturam e a diferença medida encolhe em direção ao zero sem favorecer nenhum lado. À direita, um problema assimétrico como o consentimento travando só um braço remove visitantes de um lado só, o que move a diferença medida numa direção específica e produz resposta errada em vez de resposta fraca.Perda de identidade: diluiçãovariação Avariação Bquem volta atravessa nos dois sentidosas populações se misturam e a distânciamedida encolhe em direção ao zeroresposta mais fraca, não resposta erradaPerda assimétrica: viésvariação Avariação Bvisitantes removidos de um lado sóa distância se move numa direção específicaresposta errada, em qualquer amostra
Diluição custa tempo e poder estatístico. Assimetria custa a conclusão. Só uma das duas se resolve rodando por mais tempo.

A aritmética: mesma amostra, calendário maior

Aqui está a parte que os times erram. A amostra necessária por variação é uma propriedade da estatística, não do seu rastreamento, então ela não muda quando a visibilidade cai. O que muda é a velocidade com que você a acumula.

Pegue uma taxa base de 4% e o alvo de detectar 10% de melhora relativa (de 4,0% para 4,4%), a 95% de confiança e 80% de poder. A conta devolve 39.475 visitantes por variação. Agora varie só o tráfego mensurável por semana:

Visitantes mensuráveis por semana O que isso representa Dias para preencher as duas variações
25.000 Todo mundo mensurável cerca de 23 dias
17.500 30% dos visitantes não mensuráveis cerca de 32 dias
12.500 Metade não mensurável cerca de 45 dias

Rode a sua taxa base e o seu tráfego antes de se comprometer com uma data:

Calculadora de tamanho de amostra
-Visitantes por variação
-Total (2 variações)
-Duração estimada

Cálculo por aproximação normal de duas proporções, 2 variações (50/50). Mexa nos campos e veja o impacto ao vivo.

A versão perigosa desse erro não é o calendário maior, é manter o original. Um time que planejou 23 dias, perdeu 30% do tráfego mensurável e parou no dia 23 mesmo assim termina com aproximadamente 28.750 por variação em vez de 39.475. Nessa amostra, o poder de detectar o mesmo efeito de 10% relativo cai para cerca de 67%, ou seja, se a melhora for real, o teste a perde uma vez em cada três. O resultado não é um achado negativo, é ausência de achado reportada como se fosse um.

Dias necessários para preencher a mesma amostra conforme o tráfego mensurável caiA amostra necessária fica fixa em 39.475 visitantes por variação. A 25.000 visitantes mensuráveis por semana o teste precisa de cerca de 23 dias. A 17.500 por semana, uma perda de 30 por cento de visibilidade, precisa de cerca de 32 dias. A 12.500 por semana, metade do tráfego, precisa de cerca de 45 dias. Parar na data original de 23 dias com tráfego reduzido deixa cerca de 28.750 por variação, onde o poder de detectar o efeito alvo é de apenas 67 por cento.Dias para chegar a 39.475 por variação (2 variações)25.000/semanacerca de 23 dias17.500/semanacerca de 32 dias, 30% menos visibilidade12.500/semanacerca de 45 dias, metade do tráfegoParar no dia 23 com tráfego reduzido deixa cerca de 28.750 por variação: poder perto de 67%, não 80%.
A exigência de amostra é fixada pela estatística. Só o calendário absorve a perda de visibilidade, e só se você deixar.

Onde a alocação deve morar

Quatro lugares, em ordem crescente de durabilidade e de custo.

Um cuidado sobre a segunda opção, porque ela costuma ser vendida além do que entrega: um cookie first-party HttpOnly torna a alocação durável, não a torna consentida. Se você pode colocá-lo antes do consentimento depende de como a sua política e a sua assessoria jurídica classificam um cookie que existe para rodar um experimento, e não para entregar o serviço. Decida isso com quem é dono do tema jurídico, registre a decisão e aplique-a de forma idêntica aos dois braços.

Consentimento, aplicado com simetria ou não aplicado

A regra que mantém honesto um experimento com consentimento é a simetria. O que quer que o banner faça, ele precisa fazer com os dois braços exatamente no mesmo ponto do fluxo. Se o controle renderiza na hora enquanto a variação espera uma resposta de consentimento, você não está mais comparando dois desenhos de página, está comparando uma página contra uma página mais um atraso, e o atraso normalmente vale mais pontos de conversão do que a mudança de desenho que você queria testar.

Duas consequências que valem estar escritas no plano de teste em vez de descobertas depois:

  1. Declare a população. Se a medição começa depois do aceite, o achado se aplica a visitantes que consentiram. Essa é uma população legítima e uma frase honesta no relatório. Apresentar isso como “os nossos visitantes” é onde vira algo enganoso.
  2. Não compare atravessando uma mudança de consentimento. Um teste que rodou antes de um redesenho de banner e outro que rodou depois estão medindo populações diferentes. Trate a mudança de banner como a fronteira de uma era de medição, do mesmo jeito que trataria uma migração de rastreamento.

No Brasil, a base legal e a finalidade do tratamento vêm da LGPD, e a Autoridade Nacional de Proteção de Dados publicou um guia orientativo sobre cookies e proteção de dados pessoais que trata da distinção entre cookies necessários e os demais, e da informação que precisa ser dada ao titular. O ponto prático para quem roda teste é que a classificação do cookie de alocação (necessário ao serviço ou não) é uma decisão que precisa ser tomada e documentada, e não herdada do que a ferramenta faz por padrão.

O que dados first-party de fato compram no teste A/B

O enquadramento até aqui foi defensivo, o que subestima a oportunidade. Uma identidade first-party que você controla, especialmente uma logada, permite leituras que o rastreamento de terceiro nunca sustentou bem.

Exemplo trabalhado: lendo um teste com visibilidade reduzida

Uma página de preços converte a 4,00% entre os visitantes mensuráveis. O time roda o teste até 20.000 visitantes por variação e fecha com 800 conversões no controle e 880 na variação (4,40%). Passando esses quatro números pela mesma matemática de duas proporções usada em todo este blog: z = 1,99, valor-p de aproximadamente 0,046, ganho relativo observado de +10,0% e intervalo de confiança de 95% da diferença de +0,007 a +0,793 ponto percentual.

Significativo, e por pouco. O limite inferior do intervalo está sete milésimos de ponto percentual acima do zero, que é outra forma de dizer que um pouco mais de ruído teria virado o veredito. Essa é exatamente a posição em que um programa com identidade degradada vive se encontrando: a diluição encolhe a distância observada, a distância cai perto do limiar, e a decisão fica dependendo dos últimos poucos visitantes. Cole os seus números abaixo para ver onde o seu teste está:

Calculadora de significância estatística
Controle (A)
Variação (B)
Controle (A) · Taxa-
Variação (B) · Taxa-
Melhora relativa-
valor-p-
IC 95% da diferença-

Teste z bilateral de duas proporções. "Sem significância" quase sempre quer dizer que falta amostra, não que as versões são iguais.

A resposta certa não é anunciar a vitória mais alto. É registrar que a estimativa é compatível com qualquer coisa entre um ganho desprezível e um ganho sólido, e decidir se a mudança é barata o suficiente para subir com um positivo fraco ou importante o suficiente para merecer uma rodada de confirmação com identidade mais persistente.

O que não fazer

Faça isso automático na Donnu

O modo de falha descrito neste artigo raramente é um recurso que falta; é um passo de aritmética que ninguém refez. A visibilidade do tráfego caiu, a exigência de amostra ficou igual, a data de parada não se moveu, e um teste que nunca teve poder para responder a pergunta foi reportado como resposta.

A Donnu cuida da metade web e client-side disso: um snippet first-party servido do seu próprio domínio, dimensionamento de amostra calculado a partir da sua taxa base real em vez de um padrão, e estatística honesta que mostra o intervalo de confiança ao lado do veredito em vez de um único número verde. Ela não constrói para você um grafo de identidade entre dispositivos e não finge que constrói; o que ela faz é se recusar a chamar de vencedor um resultado diluído e sem poder. Comece um teste grátis de 14 dias e veja o intervalo, não só a seta.

Referências

Leia também:

Read in English: First-Party Data and A/B Testing in a Post-Cookie World

Perguntas frequentes

O fim do cookie de terceiro quebrou o teste A/B?
Não, e vale desfazer a confusão. Teste A/B sempre foi uma atividade first-party: você divide os seus próprios visitantes no seu próprio domínio e mede as suas próprias conversões, então nenhum cookie de terceiro jamais foi necessário para a divisão em si. O que a virada de privacidade mudou foi a confiabilidade da identidade que carrega a alocação e a completude da analítica que reporta sobre ela. O experimento continua funcionando; a contabilidade em volta dele fica mais ruidosa.
O que realmente quebra quando o armazenamento do navegador é restringido?
A persistência da alocação, não o sorteio. Quando o navegador expira ou limpa a chave que guarda "este visitante está na variação B", quem volta é tratado como novo e é sorteado de novo, o que pode colocar a mesma pessoa dos dois lados do teste ao longo das visitas. Isso dilui a diferença medida em direção ao zero e, no pior caso, quebra a proporção da divisão. A estatística continua válida; o que se degrada é a premissa de que um visitante equivale a uma exposição consistente.
O banner de consentimento invalida o meu teste A/B?
Ele torna o teste parcial, o que é diferente de inválido. Se a medição só começa depois do consentimento, você está rodando o experimento no subconjunto de quem aceita, e esse subconjunto não é uma amostra aleatória do seu tráfego. O resultado continua válido para aquela população, e isso deve ser dito no relatório. O que é genuinamente inválido é aplicar o consentimento de forma assimétrica, por exemplo deixando a variação rodar antes do banner enquanto o controle espera, porque aí o próprio banner passa a fazer parte do que está sendo medido.
Devo migrar meus testes para server-side por causa da privacidade?
Só se a restrição que está te travando for a persistência da identidade, e só com clareza sobre o custo. Uma alocação feita no servidor e gravada num cookie first-party com a marca HttpOnly sobrevive melhor às restrições de armazenamento do lado do cliente do que uma chave escrita por JavaScript, e não pode ser removida por bloqueador de script. Em troca, você abre mão da iteração rápida do snippet, precisa de engenharia para cada mudança e passa a ser dono do problema de cache, já que uma página em cache não varia por visitante sem trabalho extra na borda.
Quanta amostra a mais a perda de identidade custa?
Não é amostra a mais, é tempo a mais, e essa é a armadilha. A amostra necessária por variação não muda: com taxa base de 4% e alvo de detectar 10% de melhora relativa a 95% de confiança e 80% de poder, são 39.475 por variação, dando ou não para medir todo mundo. O que muda é o denominador semanal que preenche isso. A 25.000 visitantes mensuráveis por semana o teste leva cerca de 23 dias; se 30% deles deixam de ser mensuráveis, o mesmo teste leva cerca de 32 dias; pela metade, cerca de 45 dias. Quem não refaz essa conta acaba parando na data original com uma fração da amostra planejada.
Fingerprinting é um substituto legítimo do cookie em teste?
Não, por dois motivos independentes. Juridicamente, identificar um dispositivo sem consentimento é tratamento de dado pessoal sob a LGPD e sob o GDPR, e fazer isso especificamente para driblar uma restrição de armazenamento é difícil de sustentar como legítimo interesse. Tecnicamente, é instável exatamente onde importa aqui, porque a impressão digital muda com atualização de navegador, mudança de tela e condição de rede, então a mesma pessoa pode migrar de variação no meio do experimento. Identidade frágil que também é risco de conformidade é um péssimo negócio para um experimento.