Intenção de Tratar em Teste A/B: analise por sorteio
Intenção de tratar mede o efeito de quem foi sorteado, não de quem usou. Por que a análise por protocolo exagerou 2,4 vezes e como recuperar o efeito real.

📚 Este artigo faz parte do guia Significância Estatística em Teste A/B: O Guia.
Intenção de tratar significa analisar cada usuário no braço em que ele foi sorteado, mesmo que ele nunca tenha aberto o recurso que você lançou. É a única comparação que continua aleatória depois que o teste começa, e por isso é a única que mede causa. Filtrar por quem usou parece mais justo e é o erro mais caro do gênero: no exemplo trabalhado deste guia, essa filtragem devolveu mais 9,5723 pontos percentuais quando o efeito verdadeiro era de 4 pontos. Este guia mostra por que a filtragem quebra o sorteio, como recuperar o efeito em quem de fato usou dividindo pelo tamanho da adesão, e quanto a adesão parcial custa em tamanho de amostra. Faz parte do nosso guia completo de teste A/B e conversa direto com análise por gatilho e diluição e unidade de sorteio.
O que a aleatorização garante, e o que ela deixa de garantir
O sorteio garante uma coisa só, e ela é enorme: no instante em que os usuários são distribuídos entre controle e tratamento, os dois grupos são estatisticamente iguais em tudo, inclusive no que você não mediu e no que nem sabe que existe. Essa igualdade é o que permite atribuir qualquer diferença posterior à mudança que você fez.
A garantia vale para os grupos como foram sorteados, e não sobrevive a nenhum filtro aplicado depois. Assim que você seleciona usuários por algo que aconteceu após o sorteio, você deixa de comparar dois grupos aleatórios e passa a comparar dois grupos escolhidos por comportamento. O nome disso é viés de seleção, e ele não some com mais tráfego: ele é um erro de desenho, não de precisão.
O caso mais comum em produto é a adesão parcial. Você lança um checklist de onboarding, um assistente novo, uma trilha de configuração guiada. O recurso fica disponível para todo mundo no braço de tratamento, e uma parte dos usuários simplesmente não interage com ele. Aí vem a pergunta que parece razoável: “por que comparar contra quem nem viu o recurso? Vamos olhar só quem usou”.
Essa frase destrói o experimento. Quem usa não é uma amostra aleatória de quem foi sorteado: é a parte mais engajada, mais motivada, com mais chance de converter mesmo sem tratamento nenhum. Você compara os melhores do tratamento contra a média do controle e chama a diferença de resultado.
Os quatro tipos de usuário diante do sorteio
A literatura de inferência causal organiza o problema classificando cada usuário pelo que ele faria em cada um dos dois cenários possíveis. Imbens resume a classificação na revisão de 2014, atribuindo a formulação a Imbens e Angrist (1994) e a Angrist, Imbens e Rubin (1996). São quatro tipos:
O ponto incômodo dessa tabela é que você nunca sabe de que tipo é um usuário específico. Um usuário do tratamento que não abriu o checklist pode ser um nunca adere ou um contrariante. Um usuário do controle que converteu pode ser aderente ou nunca adere. Como Imbens coloca, os dados não contêm informação nenhuma sobre o que o usuário teria feito no outro braço.
O que se recupera são as proporções agregadas, e é disso que a análise correta vive.
Três contas sobre os mesmos dados, três respostas diferentes
O exemplo canônico da literatura é um experimento de vacinação contra gripe conduzido por McDonald, Hiu e Tierney em 1992, com 2.861 pacientes, reanalisado por Imbens em 2014. Os pesquisadores não sortearam a vacina: sortearam cartas enviadas aos médicos, lembrando da temporada de gripe e incentivando a vacinação dos pacientes. O sorteio é da carta, a adesão é a vacina, o desfecho é internação por causa relacionada à gripe.
É exatamente a estrutura de um teste de produto: você sorteia a exposição ao recurso, não o uso dele.
| conta | o que ela compara | resultado |
|---|---|---|
| intenção de tratar | 1.472 sorteados para carta (7,8125% internados) contra 1.389 sem carta (9,2873%) | menos 1,4748 pp |
| como tratado | 716 vacinados (8,5196%) contra 2.145 não vacinados (8,5315%) | menos 0,0119 pp |
| por protocolo | 453 vacinados do braço da carta (6,8433%) contra 1.126 não vacinados do braço sem carta (8,7922%) | menos 1,9489 pp |
| efeito nos aderentes | intenção de tratar dividida pela adesão | menos 12,4557 pp |
Quatro números para o mesmo experimento, variando de praticamente zero a menos 12,5 pontos percentuais. Só o primeiro e o quarto significam alguma coisa, e por motivos diferentes.
A conta “como tratado” diz que a vacina não faz nada. Isso é quase certamente falso, e o motivo é visível: pacientes vacinados sem carta nenhuma tendem a ser pacientes de risco mais alto, que o médico vacinaria de qualquer jeito. Comparar vacinados contra não vacinados compara doentes contra saudáveis.
A conta por protocolo tem o mesmo defeito, atenuado. E o número da intenção de tratar, o único que preserva o sorteio, é honesto e modesto: menos 1,4748 ponto percentual. Colando os quatro números do experimento na calculadora de significância, a diferença sai com z de menos 1,4115, valor-p de 0,158091 e intervalo de 95 por cento indo de menos 3,5265 a mais 0,5770 ponto percentual. Não é significante. Um resultado inconclusivo obtido corretamente vale mais que um resultado forte obtido pela conta errada.
A quarta linha é o assunto da próxima seção.
Exemplo trabalhado: um checklist de onboarding com 35 por cento de adesão
Simulamos um caso de produto para poder comparar cada conta contra a verdade, que num experimento real você nunca conhece. O cenário: um SaaS lança um checklist de onboarding para metade dos novos cadastros. O recurso não existe no controle, então não há sempre adere nem contrariante.
Os parâmetros do mundo simulado, que o analista não vê:
- 35 por cento dos usuários são aderentes, ou seja, abririam o checklist se tivessem acesso.
- Um aderente converte a 14 por cento sem tratamento nenhum. Um nunca adere converte a 6 por cento. Essa diferença é a fonte inteira do viés.
- O checklist aumenta a conversão do aderente em 4 pontos percentuais, de 14 para 18 por cento. Esse é o efeito verdadeiro que queremos recuperar.
- A conversão média da população é 8,80 por cento, e o efeito visível no braço inteiro é 35 por cento de 4 pontos, ou seja, 1,40 ponto percentual.
Rodamos o experimento com 20.000 usuários por braço, semente fixa. Os números observados:
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.
Colando na calculadora acima o controle com 20.000 visitantes e 1.692 conversões (8,4600 por cento) contra o tratamento com 20.000 visitantes e 2.035 conversões (10,1750 por cento), o resultado é z de 5,9000, valor-p de 3,647 vezes 10 elevado a menos 9, diferença de 1,7150 ponto percentual, ganho relativo de 20,2719 por cento e intervalo de 95 por cento de 1,1455 a 2,2845 ponto percentual. É o efeito de intenção de tratar, medido no denominador do sorteio.
No braço de tratamento, 7.054 dos 20.000 usuários abriram o checklist, ou seja, 35,2700 por cento de adesão. Agora as contas erradas, sobre os mesmos dados:
| conta | numerador e denominador | resultado | contra o verdadeiro (4 pp) |
|---|---|---|---|
| intenção de tratar | 2.035/20.000 contra 1.692/20.000 | mais 1,7150 pp | mede o efeito diluído, correto |
| por protocolo | 1.272/7.054 (18,0323%) contra 1.692/20.000 (8,4600%) | mais 9,5723 pp | exagero de 2,393 vezes |
| como tratado | 1.272/7.054 contra 763/12.946 (5,8937%) | mais 12,1386 pp | exagero de 3,03 vezes |
| efeito nos aderentes | 1,7150 dividido por 0,352700 | mais 4,8625 pp | intervalo contém o verdadeiro |
A análise por protocolo devolve um valor-p que a calculadora arredonda para zero e um ganho relativo de 113,15 por cento. É o tipo de número que fecha uma reunião. E ele está errado por um fator de mais de dois, porque 7,4 pontos dos 9,6 medidos já existiam antes do experimento: no braço de controle da mesma simulação, os usuários que seriam aderentes converteram a 13,2710 por cento e os demais a 5,8950 por cento.
A conta que recupera o efeito de quem usou
Existe uma forma correta de responder “quanto o recurso fez por quem o usou”, e ela não passa por filtrar ninguém. Passa por uma divisão.
O efeito de intenção de tratar é o efeito nos aderentes multiplicado pela fração de aderentes. Quem nunca adere tem efeito zero por construção, então ele não contribui com nada para a diferença entre os braços, só dilui. Invertendo a relação:
efeito nos aderentes = efeito de intenção de tratar dividido pela diferença de adesão entre os braços
Essa razão é o estimador de Wald. Imbens e Angrist (1994) e Angrist, Imbens e Rubin (1996) mostraram que, sob duas suposições que a próxima seção detalha, ela identifica o efeito médio local, também chamado de efeito causal médio nos aderentes.
No nosso exemplo, 1,7150 dividido por 0,352700 devolve 4,8625 pontos percentuais. O erro-padrão do efeito de intenção de tratar é 0,2906 ponto percentual, e o erro-padrão da razão sai aproximadamente dividindo pelo mesmo denominador, ou seja, 0,8238 ponto. O intervalo de 95 por cento vai de 3,2479 a 6,4771 pontos, e contém o valor verdadeiro de 4,00 pontos.
Repare no preço embutido: o intervalo do efeito nos aderentes é quase três vezes mais largo que o da intenção de tratar, exatamente porque foi dividido por 0,35. Recuperar o efeito de quem usou não é de graça, é uma amplificação da incerteza junto com a amplificação do sinal.
Para confirmar que não foi sorte da semente, rodamos 4.000 réplicas do mesmo desenho:
| verificação | resultado | esperado |
|---|---|---|
| efeito nos aderentes, média das 4.000 réplicas | 3,9780 pp | 4,00 pp |
| cobertura do intervalo de 95 por cento | 95,03% | 95% |
| efeito por protocolo, média das réplicas | 9,1834 pp | 4,00 pp |
| viés da análise por protocolo | mais 5,1834 pp | zero |
| poder do teste de intenção de tratar (N de 20.000) | 99,72% | alto por desenho |
A razão de Wald é praticamente não viesada e o intervalo cobre o que promete. A análise por protocolo erra por mais 5,18 pontos percentuais em média, e esse erro não diminui com mais tráfego.
O preço em amostra: a adesão entra quase ao quadrado
A parte que quebra cronograma é o dimensionamento. Se o efeito nos aderentes é de 4 pontos percentuais e só 35 por cento aderem, o efeito visível no braço inteiro é de 1,4 ponto. E como o tamanho de amostra necessário cresce com o inverso do quadrado do efeito, dividir o efeito por três multiplica a amostra por cerca de nove.
Com base de 8,80 por cento, 95 por cento de confiança e 80 por cento de poder:
| adesão | efeito visível no braço | N por variação | dias a 40 mil/semana | N contra adesão total |
|---|---|---|---|---|
| 5% | 0,200 pp | 318.189 | 112 | 337,1x |
| 10% | 0,400 pp | 80.352 | 29 | 85,1x |
| 20% | 0,800 pp | 20.489 | 8 | 21,7x |
| 35% | 1,400 pp | 6.885 | 3 | 7,3x |
| 50% | 2,000 pp | 3.468 | 2 | 3,7x |
| 75% | 3,000 pp | 1.611 | 1 | 1,7x |
| 100% | 4,000 pp | 944 | 1 | 1,0x |
A razão entre a linha de 35 por cento e a de adesão total é 7,3 vezes, um pouco abaixo do quadrado puro de 8,2 vezes, porque a variância da proporção também muda conforme o efeito cresce. Na linha de 5 por cento a distância fica maior: 337 vezes contra os 400 vezes que o quadrado puro previria. A regra prática é que a amostra cresce aproximadamente com o inverso do quadrado da adesão, e a aproximação vale melhor quanto menor o efeito.
O erro que essa tabela expõe é frequente e silencioso. O time dimensiona o teste para o efeito que espera em quem usa o recurso, roda com a amostra dessa conta e lê o resultado no braço inteiro. Dimensionando 944 usuários por variação, o poder real vira:
| adesão real | poder efetivo | amostra que daria 80% |
|---|---|---|
| 20% | 8,71% | 20.489 |
| 35% | 17,80% | 6.885 |
| 50% | 30,90% | 3.468 |
Um teste com 17,8 por cento de poder falha em detectar um efeito real em mais de 4 de cada 5 tentativas. O time conclui que o checklist “não funcionou” e mata um recurso que funciona. É o mesmo mecanismo descrito no nosso guia sobre poder observado: o teste nunca teve chance.
Quando a divisão não vale
O estimador de Wald não é mágico. Ele exige duas suposições além da aleatorização.
Restrição de exclusão. O sorteio só pode afetar o resultado passando pela adesão. Imbens descreve essa suposição como a mais crítica e tipicamente mais controversa desse tipo de método. Em produto, ela costuma valer quando o usuário que não adere literalmente não percebe diferença nenhuma. E ela falha em casos concretos e comuns:
- O recurso é anunciado por um banner ou e-mail que atinge todo o braço, inclusive quem nunca clica. O anúncio sozinho pode mudar comportamento.
- A entrada do recurso ocupa espaço na interface e empurra outro elemento para baixo, mudando a experiência de quem nunca o usa.
- O tratamento muda o desempenho da página para todo mundo, aderente ou não.
Nesses casos a intenção de tratar continua válida como efeito da mudança inteira, que é o que o negócio sente de verdade, mas a divisão deixa de isolar o efeito do recurso.
Monotonicidade. Não pode existir usuário que use o recurso quando não é sorteado para ele e deixe de usar quando é. Em lançamento de produto isso é automático, porque o recurso não existe no controle. Em teste de mensagem, cupom ou incentivo, existem contrariantes de verdade: gente que reage ao empurrão fazendo o oposto.
Um detalhe que ajuda: quando o controle não tem acesso nenhum ao recurso, a diferença de adesão entre os braços é simplesmente a taxa de uso no tratamento, e a fração de aderentes é diretamente observável. Foi o nosso caso. No experimento da vacina, não: 18,9345 por cento dos pacientes se vacinaram mesmo sem carta, então a fração de aderentes é a diferença, 11,84 por cento, e não a taxa bruta de 30,7745 por cento.
Intenção de tratar não é análise por gatilho
Essa confusão é frequente porque as duas coisas se parecem no código: as duas restringem quem entra na conta. A diferença é quando o critério é decidido.
| análise por gatilho | filtro por adesão | |
|---|---|---|
| critério | chegou ao ponto do fluxo em que os braços diferem | usou o recurso |
| determinado por | estado anterior à ação do tratamento | escolha do usuário depois do sorteio |
| afetado pelo tratamento | não, quando bem montado | sim, por definição |
| preserva a aleatorização | sim | não |
| checagem barata | contagem de disparados igual nos dois braços | não existe conserto por filtro |
A análise por gatilho é legítima e aumenta o poder do teste, porque remove do denominador gente cujo efeito é zero por construção sem olhar para o comportamento pós-tratamento. O filtro por adesão faz o oposto: seleciona pelo comportamento que o tratamento causou. A checagem que separa uma coisa da outra é comparar a contagem de usuários disparados nos dois braços, exatamente como se faz numa verificação de divisão desigual de tráfego. Se o número de “disparados” é diferente entre controle e tratamento, o seu gatilho virou um filtro de adesão disfarçado.
Como montar isso na prática
- Registre o sorteio no momento do sorteio, não no momento do uso. Se o seu log só grava usuários que interagiram com o recurso, você perdeu o denominador e não tem como fazer a conta certa depois.
- Reporte sempre a intenção de tratar como número principal. É o efeito que o negócio vai sentir, porque o lançamento também terá adesão parcial.
- Reporte a adesão como métrica de primeira classe. Ela é metade da explicação de qualquer resultado morno e é acionável: um efeito real com adesão baixa é um problema de descoberta, não de produto.
- Só então calcule a razão, e declare que ela vale para os aderentes, não para a base inteira.
- Dimensione pelo efeito diluído, usando a adesão esperada, com a calculadora de tamanho de amostra. Se você não tem estimativa de adesão, rode uma semana só para medi-la antes de dimensionar.
- Antes de dividir, verifique se o sorteio toca o resultado por fora da adesão. Banner de anúncio, mudança de layout e impacto de desempenho são os três suspeitos de sempre.
- Nunca reporte a comparação por protocolo como se fosse causal. Se ela for pedida, apresente junto a diferença de base entre aderentes e não aderentes medida no controle, que é o tamanho do viés.
Erros comuns
- Filtrar o controle pelo mesmo comportamento para “equilibrar”. Comparar quem usou o checklist no tratamento contra quem “teria usado” no controle exige saber o tipo de cada usuário, e você não sabe. Quando dá para aproximar o tipo com um comportamento anterior ao sorteio, isso vira uma segmentação legítima, e aí é efeito heterogêneo por segmento, não intenção de tratar.
- Tratar adesão baixa como falha de medição. Adesão de 8 por cento não é ruído: é o resultado. Ela diz que o recurso não está sendo encontrado, e nenhuma conta estatística conserta isso.
- Dividir por uma adesão medida com erro grande. Com adesão muito baixa, o denominador do Wald é pequeno e instável, e o intervalo do efeito nos aderentes fica largo a ponto de não decidir nada.
- Aplicar a divisão em cima de um efeito de intenção de tratar não significante. Dividir um número que pode ser zero por 0,3 devolve outro número que pode ser zero, com intervalo três vezes maior. A razão não cria evidência.
- Esquecer que o lançamento também terá adesão parcial. O efeito nos aderentes é útil para entender o mecanismo. O que vai aparecer na receita depois do lançamento é o número diluído, exatamente como acontece na diluição por gatilho.
Faça isso automático na Donnu
A causa raiz do erro por protocolo quase nunca é estatística, é de instrumentação: a ferramenta registra o usuário no experimento quando ele interage com o recurso, porque é aí que o evento dispara. Nesse modelo de dados, o braço de tratamento passa a conter apenas aderentes, e a comparação por protocolo deixa de ser uma escolha do analista e vira a única conta possível.
A Donnu grava a atribuição no instante do sorteio, separada do evento de uso, o que mantém os dois denominadores disponíveis: o do sorteio, para a intenção de tratar, e o da adesão, para a razão. Se a sua ferramenta atual só registra quem interagiu, o passo imediato é adicionar um evento de exposição no momento da atribuição e, enquanto isso, tratar todo resultado por protocolo como estimativa de teto, nunca como efeito. Para checar se o seu efeito diluído tem amostra suficiente, a calculadora de poder estatístico responde em um minuto.
Referências
- Imbens, G. W. Instrumental Variables: An Econometrician’s Perspective. Statistical Science, 2014 (arXiv 1410.0163). Fonte da classificação em quatro tipos de adesão (nunca adere, aderente, contrariante e sempre adere) atribuída a Imbens e Angrist (1994) e a Angrist, Imbens e Rubin (1996); do registro de que os dados não informam o tipo de nenhuma unidade individual; da identificação das proporções dos tipos sob monotonicidade; da definição do efeito médio local como a razão entre o efeito de intenção de tratar no desfecho e o efeito de intenção de tratar no recebimento do tratamento; dos dados de gripe de McDonald, Hiu e Tierney (1992) com 2.861 pacientes e a tabela completa das oito células; das estimativas publicadas de 0,189 para sempre adere, 0,692 para nunca adere e 0,119 para aderente, do efeito de intenção de tratar de menos 0,015 com erro-padrão 0,011, do efeito no recebimento de 0,119 com erro-padrão 0,016 e do efeito médio local de menos 0,125 com erro-padrão 0,090; da descrição da restrição de exclusão como a suposição mais crítica e tipicamente mais controversa; da observação de que a monotonicidade implica ausência de contrariantes; e do registro de que o efeito de intenção de tratar se apoia em menos suposições que as alternativas. arxiv.org.
- Kohavi, R., Deng, A., Longbotham, R. e Xu, Y. Seven Rules of Thumb for Web Site Experimenters. KDD 2014. Fonte da regra de diluir métricas pelo tamanho do segmento afetado, com o exemplo de uma melhora de 10 por cento num segmento de 1 por cento resultando em impacto total de aproximadamente 0,1 por cento, e do registro de que num site como o Bing os experimentos bem-sucedidos movem métricas-chave entre 0,1 e 1,0 por cento depois de diluídos. exp-platform.com.
- Kohavi, R., Deng, A., Frasca, B., Walker, T., Xu, Y. e Pohlmann, N. Online Controlled Experiments at Large Scale. KDD 2013. Referência sobre a exigência de confiabilidade dos dados de atribuição em plataformas de experimentação em escala e sobre a separação entre o registro da atribuição e o registro do uso. exp-platform.com.
- Dmitriev, P., Gupta, S., Kim, D. W. e Vaz, G. A Dirty Dozen: Twelve Common Metric Interpretation Pitfalls in Online Controlled Experiments. KDD 2017. Fonte da lição de que a condição usada para definir um segmento não pode ser afetada pelo tratamento, e do exemplo do Bing em que dois segmentos definidos por um comportamento pós-tratamento subiram enquanto a população combinada não se moveu. exp-platform.com.
Leia também: Análise por gatilho e diluição · Unidade de sorteio · Poder observado · SRM: divisão desigual de tráfego · Métrica primária e OEC · Calculadora de tamanho de amostra · Read in English
Perguntas frequentes
- O que é análise por intenção de tratar em teste A/B?
- É analisar cada usuário no braço em que ele foi sorteado, mesmo que ele nunca tenha usado o recurso que você lançou. O denominador é a população sorteada inteira, não a população que aderiu. É a única comparação que continua sendo aleatória depois que o experimento começa, e por isso é a única que responde a uma pergunta causal sem suposição adicional. Como Imbens registra na revisão de 2014, o efeito de intenção de tratar se apoia em menos suposições que qualquer alternativa.
- Qual a diferença entre intenção de tratar e análise por protocolo?
- A intenção de tratar compara os braços inteiros como foram sorteados. A análise por protocolo compara só quem aderiu ao tratamento contra o controle, e essa comparação deixa de ser aleatória porque quem adere é diferente de quem não adere. No exemplo trabalhado deste guia, a análise por protocolo devolveu mais 9,5723 pontos percentuais quando o efeito verdadeiro era de 4 pontos, um exagero de 2,393 vezes, porque os usuários que aderiram já convertiam mais que a média antes de qualquer tratamento.
- Como recuperar o efeito em quem realmente usou o recurso?
- Dividindo o efeito de intenção de tratar pela diferença de adesão entre os braços. Essa razão é o estimador de Wald, e Imbens e Angrist mostraram em 1994, junto com Angrist, Imbens e Rubin em 1996, que ela identifica o efeito médio nos usuários que aderem por causa do sorteio. No exemplo deste guia, 1,7150 ponto percentual dividido por 35,27 por cento de adesão devolveu 4,8625 pontos, com intervalo de 3,2479 a 6,4771, contendo o valor verdadeiro de 4 pontos.
- Quanto a adesão parcial custa em tamanho de amostra?
- Muito, porque o efeito visível encolhe proporcionalmente à adesão e o tamanho de amostra cresce aproximadamente com o quadrado dessa redução. Na tabela deste guia, detectar um efeito de 4 pontos percentuais exige 944 usuários por variação com adesão total, 6.885 com adesão de 35 por cento e 318.189 com adesão de 5 por cento. Dimensionar pelo efeito em quem usa, e não pelo efeito diluído no braço inteiro, é o jeito mais comum de rodar um teste sem poder nenhum.
- Quando o estimador de Wald não vale?
- Quando o sorteio afeta o resultado por algum caminho que não passa pela adesão, o que se chama restrição de exclusão, ou quando existem usuários que fazem o contrário do que foram designados. Imbens descreve a restrição de exclusão como a suposição mais crítica e tipicamente mais controversa por trás desse tipo de método. Em teste A/B de produto ela costuma valer para quem nunca vê o recurso, e costuma falhar quando o próprio anúncio da novidade muda comportamento de quem não a usa.
- Intenção de tratar é o mesmo que análise por gatilho?
- Não. A análise por gatilho restringe o denominador a quem chegou ao ponto do fluxo em que as variações passam a diferir, um critério que não depende do tratamento e por isso preserva a aleatorização. A adesão é uma escolha do usuário tomada depois do sorteio e afetada pelo tratamento, então filtrar por ela quebra a comparação. As duas coisas parecem iguais no código e são opostas na estatística.