Ferramenta

Verificador de SRM para teste A/B

Antes de ler qualquer vencedor, confirme que a divisão de tráfego chegou como você configurou. Cole os visitantes de cada variação e o verificador diz, por qui-quadrado, se há sample ratio mismatch. Grátis, sem cadastro, com a conta explicada.

Esta é a primeira verificação de saúde do seu teste, feita antes da conversão. O SRM (sample ratio mismatch) é a divisão de tráfego chegando torta: você mandou 50/50 e recebeu 52/48. Quando isso acontece com volume, não é acaso, é um defeito no motor de divisão que enviesa tudo. Rode este verificador antes de olhar quem venceu; se ele acusar, o resultado de conversão não vale. Para o veredito de conversão em si, use depois a calculadora de significância estatística.

Verificador de SRM (sample ratio mismatch)
A
B

Preencha ao menos duas variações. A alocação esperada é o peso relativo do split (1 e 1 = 50/50, 9 e 1 = 90/10).

χ² (qui-quadrado)-
Graus de liberdade-
valor-p-
VariaçãoVisitantes observadosEsperado% real

Teste qui-quadrado de aderência entre a divisão observada e a esperada. O alarme dispara quando o valor-p fica abaixo de 0,01: com esse split, um desvio desse tamanho é raro demais pra ser só acaso. SRM invalida o teste, investigue o motor de divisão antes de ler a conversão.

Como usar

  1. Informe os visitantes observados de cada variação (o número real que caiu em cada braço, não as conversões).
  2. Ajuste a alocação esperada com o peso do seu split: 1 e 1 para 50/50, 9 e 1 para 90/10.
  3. Precisa de mais de duas variações? Clique em adicionar variação e informe a alocação de cada uma.
  4. Leia o veredito: divisão dentro do esperado ou SRM detectado.
  5. Confira o qui-quadrado, os graus de liberdade e o valor-p, além da tabela com esperado e percentual real de cada braço.

Como funciona: a fórmula

O verificador usa o teste qui-quadrado de aderência, o mesmo método que ferramentas sérias de experimentação aplicam pro guardrail de SRM. Ele compara quantos visitantes chegaram (observado) com quantos deveriam ter chegado pela sua divisão (esperado):

χ² = Σ (Oi − Ei)² / Ei

Onde Oi é o observado de cada variação, Ei é o esperado (o total multiplicado pelo peso relativo daquela variação) e a soma corre por todas as variações. Os graus de liberdade são o número de variações menos 1. O valor-p sai da distribuição qui-quadrado: é a probabilidade de ver um desvio tão grande quanto o seu por puro acaso, se a divisão estivesse certa.

Exemplo trabalhado (reproduz o resultado padrão)

Com os valores que já vêm preenchidos: A com 5.200 visitantes e B com 4.800, alocação esperada 50/50. O total é 10.000, então o esperado é 5.000 por variação. A conta:

χ² = (5200 − 5000)² / 5000 + (4800 − 5000)² / 5000 = 40000/5000 + 40000/5000 = 8 + 8 = 16.

Com 2 variações, são 1 grau de liberdade. Um χ² de 16 com 1 grau de liberdade dá um valor-p de cerca de 0,00006, muito abaixo do limite de 0,01. Veredito: SRM detectado. Uma divisão de 52/48 parece inofensiva no olho, mas com 10 mil visitantes é rara demais pra ser acaso. É exatamente o que a ferramenta mostra acima quando você abre a página.

Como interpretar e onde ela engana

O veredito é binário de propósito: divisão saudável ou SRM. Valor-p acima de 0,01 quer dizer que o desvio cabe no acaso, seu split está bom e você pode seguir pra leitura de conversão. Valor-p abaixo de 0,01 é sinal vermelho: pare, o teste está enviesado. Note que o SRM não mede conversão nenhuma, ele só olha a contagem de quem entrou em cada braço. Um teste pode ter SRM e ainda assim mostrar uma variação vencendo, e é justamente aí que o SRM te salva de comemorar um falso positivo.

Limites a ter em mente: o teste precisa de volume pra ser sensível, com poucas centenas de visitantes ele quase nunca acusa nada. A alocação esperada precisa refletir o que você configurou de verdade, não o que você imagina. E o SRM diz que existe um problema, não qual é: a causa (redirecionamento, cache, bot, tag) você investiga na mão. Depois de descartar o SRM, siga pra calculadora de significância e revise as armadilhas no guia de erros comuns de teste A/B.

Boas práticas com o guardrail de SRM

SRM é uma verificação de rotina, não um exame que você faz só quando desconfia. Trate como o primeiro item da leitura de todo teste.

Perguntas frequentes

O que é SRM (sample ratio mismatch)?
SRM é quando a divisão de visitantes entre as variações não bate com a divisão que você configurou. Se você mandou 50/50 e chegou 52/48 com muito tráfego, algo no motor de divisão está errado (redirecionamento, cache, bot, tag disparando fora de hora). O verificador mede essa diferença com um teste qui-quadrado: se ela for grande demais pra ser acaso, é SRM e o teste está comprometido.
Por que o SRM invalida o meu teste A/B?
Porque quebra a suposição básica do experimento: que os grupos são iguais menos pela mudança testada. Se a divisão está torta, os grupos provavelmente diferem em algo mais (device, origem, momento), e qualquer diferença de conversão pode ser esse viés, não a sua variação. Ler o vencedor com SRM ativo é ler ruído. Conserte a causa e rode de novo.
Qual valor-p indica SRM?
A convenção de mercado é alarmar quando o valor-p fica abaixo de 0,01 (1%). O limite é mais rígido que os 5% de um teste de conversão de propósito: o SRM é uma verificação de guardrail que você faz sempre, então um limite baixo evita alarme falso. Valor-p acima de 0,01 quer dizer que a diferença observada cabe no acaso e a divisão está saudável.
Uso o verificador com divisão diferente de 50/50?
Sim. Ajuste a alocação esperada de cada variação com o peso relativo do seu split: 1 e 1 para 50/50, 9 e 1 para um ramp de 90/10, 1 e 1 e 1 para 33/33/33. O teste compara o que você configurou com o que de fato chegou, seja qual for a proporção alvo.
Serve para teste com mais de duas variações?
Serve. Adicione uma variação para cada braço do teste (A/B/n) e informe a alocação esperada de cada um. O qui-quadrado passa a ter mais graus de liberdade e o veredito continua o mesmo: divisão dentro do esperado ou SRM detectado.
O que fazer quando o verificador acusa SRM?
Não leia a conversão ainda. Investigue as causas comuns: redirecionamento que perde parte de uma variação, tag ou snippet carregando em momentos diferentes, cache servindo uma versão fixa, bots concentrados num braço, ou filtro de analytics assimétrico. Corrija a causa raiz, descarte os dados enviesados e reinicie o teste com a divisão saudável.
Incorporar esta ferramenta no seu site

Cole este código onde quiser exibir o verificador. O link de crédito abaixo do quadro nos ajuda e é livre para manter.

Continue

Divisão saudável? Siga pro veredito de conversão na calculadora de significância estatística e planeje o próximo teste com a calculadora de tamanho de amostra. O contexto completo está no guia o que é teste A/B.

Ferramentas relacionadas

Ver todas as ferramentas →