Teste Switchback: experimentar sob efeito de rede
Quando os braços compartilham o mesmo estoque, o teste A/B de usuário mede errado. O teste switchback alterna no tempo e devolve o efeito real.

📚 Este artigo faz parte do guia Significância Estatística em Teste A/B: O Guia.
Num marketplace, os dois braços de um teste A/B compartilham o mesmo estoque de oferta, então a atribuição de um usuário muda o resultado do outro e o experimento mede uma versão diluída do efeito. O teste switchback resolve isso trocando a unidade de aleatorização: em vez de sortear usuários, você sorteia janelas de tempo dentro de cada região, e cada par tempo mais região vira uma unidade experimental. Este guia cobre por que o teste de usuário encolhe o efeito num sistema com oferta compartilhada, um exemplo trabalhado em que o mesmo efeito real de 2 pontos percentuais aparece como 1 ponto no desenho errado e exige 4,1 vezes mais amostra, como escolher o tamanho da janela entre viés e margem de erro, o desenho ótimo demonstrado na literatura, e por que o valor-p que sai da calculadora precisa de correção. Faz parte do nosso guia completo de teste A/B e é o desenho que resolve o problema descrito em interferência entre variações.
O problema: seus dois braços dividem a mesma frota
O teste A/B padrão repousa numa hipótese que raramente é dita em voz alta: a de que o resultado de um usuário não depende de qual variação os outros usuários receberam. Em um site de conteúdo isso é quase sempre verdade. Em um marketplace, quase nunca.
O time de Dispatch do DoorDash publicou o exemplo mais claro disso. Eles usam um preço dinâmico de pico quando há entregadores de menos para o volume de pedidos que está entrando: a taxa de entrega sobe, parte da demanda se desloca para mais tarde e mais entregadores decidem sair para rodar. Suponha que você queira testar uma mudança nesse algoritmo como um teste A/B de consumidores, com metade vendo o preço de pico e metade não. O relato deles é direto sobre o que acontece: o primeiro grupo recebe só metade do benefício do reequilíbrio de oferta, e o segundo grupo recebe parte do benefício sem pagar nada por ele. Os dois grupos continuam dividindo a mesma frota, então não existe independência entre eles.
O efeito prático é sempre o mesmo, e é medido para menos. O controle é contaminado pelo tratamento, a diferença entre os braços encolhe, e o teste conclui que a mudança vale menos do que vale.
O que é um teste switchback
Num teste switchback você alterna a região inteira entre controle e tratamento ao longo do tempo, sorteando qual variação vale em cada janela. O DoorDash descreve o mecanismo em uma frase: alterna-se entre os algoritmos de controle e de tratamento numa determinada região em períodos de tempo alternados, e depois se comparam as métricas dos períodos de controle contra as dos períodos de tratamento.
Dois detalhes de implementação separam um switchback correto de uma alternância ingênua:
- A variante de cada janela é sorteada, não alternada. O relato do DoorDash é explícito nesse ponto: eles aleatorizam a variante usada em cada janela de tempo, em vez de sortear a variante inicial e depois alternar de forma determinística. Alternância fixa é vulnerável a qualquer ciclo do negócio que tenha período parecido com o da alternância.
- As regiões são sorteadas de forma independente umas das outras. A região A pode usar o algoritmo atual numa janela e o novo na seguinte, enquanto a região B faz o caminho inverso. É isso que cria o que eles chamam de unidades tempo mais região.
Exemplo trabalhado: o mesmo efeito, dois desenhos
Um marketplace de entregas quer testar um novo algoritmo de despacho. O efeito verdadeiro dele sobre a taxa de entregas dentro do prazo prometido é de 2,000 pontos percentuais, de 85,000 por cento para 87,000 por cento, quando o algoritmo governa o mercado inteiro.
Desenho 1, teste A/B por consumidor. Metade dos consumidores é despachada pelo algoritmo novo, metade pelo antigo, e as duas metades disputam a mesma frota. O benefício se espalha: o controle também melhora, porque a frota como um todo ficou mais eficiente. Suponha que metade do ganho vaze, um cenário conservador. Cole na calculadora:
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.
| Teste por consumidor | Entregas | No prazo | Taxa medida |
|---|---|---|---|
| A, algoritmo atual, contaminado pelo vazamento | 120.000 | 102.000 | 85,000 por cento |
| B, algoritmo novo | 120.000 | 103.200 | 86,000 por cento |
A calculadora devolve mais 1,000 ponto percentual, mais 1,176 por cento relativo, z = 6,957, valor-p abaixo de 0,00001, intervalo de 95 por cento de mais 0,718 a mais 1,282 ponto percentual. O resultado é significativo e está errado pela metade.
Desenho 2, switchback. As mesmas 240 mil entregas, agora organizadas em janelas de 30 minutos sorteadas por região. Nenhuma janela divide a frota:
| Switchback por janela e região | Entregas | No prazo | Taxa medida |
|---|---|---|---|
| Janelas em controle | 120.000 | 102.000 | 85,000 por cento |
| Janelas em tratamento | 120.000 | 104.400 | 87,000 por cento |
Agora a calculadora devolve mais 2,000 pontos percentuais, mais 2,353 por cento relativo, z = 14,119, valor-p abaixo de 0,00001, intervalo de mais 1,722 a mais 2,278 ponto percentual.
O ponto não é que o primeiro desenho deu não significativo, porque com 120 mil entregas por braço ele deu significativo. O ponto é o preço de amostra. Para detectar 2,000 pontos percentuais sobre uma base de 85 por cento com 95 por cento de confiança e 80 por cento de poder são necessários 4.724 por braço. Para detectar o efeito diluído de 1,000 ponto percentual são necessários 19.461 por braço. O vazamento cobra 4,1 vezes mais amostra para enxergar a mesma mudança de produto, e essa conta você pode refazer na calculadora de tamanho de amostra.
A unidade de análise tem que ser a unidade de sorteio
Este é o erro mais caro do switchback, e ele é sutil porque parece desperdício de dado. Você sorteou janelas, então a análise roda sobre janelas, não sobre entregas.
O DoorDash é explícito: eles conduzem os testes estatísticos sobre os valores médios das unidades tempo mais região de controle e de tratamento, e não sobre os valores individuais das entregas. Na prática isso significa que a média de cada braço é uma média simples das unidades, não uma média das entregas ponderada pelo volume de cada janela.
A diferença entre as duas médias não é cosmética. Eles registram uma leitura de diagnóstico útil sobre ela: a média simples e a ponderada costumam convergir com o tempo, e quando não convergem isso é sinal de que a intervenção tem impacto diferente em unidades com muitas entregas e em unidades com poucas. Vale a pena calcular as duas justamente por causa desse sinal.
| Pergunta | Teste A/B de usuário | Teste switchback |
|---|---|---|
| O que é sorteado | usuário ou dispositivo | par de janela de tempo e região |
| O que entra no teste estatístico | usuário | janela e região |
| Tamanho típico da amostra | centenas de milhares | milhares de janelas |
| Hipótese de independência | plausível | violada por construção |
| Resolve interferência de oferta | não | sim |
| Custo | baixo | perde poder, exige mais tempo de calendário |
Escolher a janela: viés de um lado, margem de erro do outro
O tamanho da janela e o tamanho da região são a decisão de desenho que realmente importa, e o DoorDash enquadra a escolha como um cabo de guerra entre dois problemas.
Viés. Aparece quando a aleatorização das unidades é comprometida e os tipos de entrega que caem em cada braço deixam de ser parecidos em média. O exemplo que eles dão é preciso: um algoritmo relutante em aceitar entregas com distância longa entre loja e cliente pode ser observado como mais rápido sem ser melhor, porque escolheu as entregas curtas e deixou as longas para o controle limpar. Esse viés fica mais provável quando as regiões ficam pequenas demais ou quando a troca é frequente demais, porque a janela seguinte herda o serviço que a anterior empurrou para frente.
Margem de erro. Anda no sentido oposto. Quanto mais granular a unidade, maior a variação natural da métrica dentro dela, mas também maior o número de unidades. Como a margem de erro é proporcional à variação natural dividida pela raiz do número de unidades, existe um ponto de equilíbrio, e ele se encontra empiricamente. Eles encontraram o deles rodando uma série de testes A/A longos e medindo como a margem de erro mudava conforme trocavam mais rápido ou mais devagar. O resultado prático relatado: janelas de 30 minutos, em divisões geográficas aproximadamente no nível de cidade.
O desenho ótimo, segundo a teoria
O lado empírico dessa escolha ganhou tratamento formal em Design and Analysis of Switchback Experiments, de Iavor Bojinov, David Simchi-Levi e Jinglong Zhao. Eles formulam o desenho como um problema de otimização minimax e chegam a dois resultados que interessam diretamente a quem vai rodar o teste.
Primeiro: a moeda tem que ser honesta. O Teorema 1 do artigo estabelece que qualquer desenho ótimo precisa ter probabilidade de atribuição igual a 1 sobre 2 em todos os pontos de sorteio. Dividir 70 contra 30 não é uma escolha conservadora aqui, é uma escolha pior.
Segundo: o período deve acompanhar o efeito residual. O efeito residual, ou carryover, é o tempo durante o qual o tratamento continua influenciando o resultado depois de desligado. Chamando de m a ordem desse efeito e de T o horizonte total, quando T é múltiplo de m com pelo menos quatro blocos, os pontos de sorteio ótimos são o instante 1 e depois os instantes 2m+1, 3m+1, e assim por diante até (n-2)m+1. O efeito prático é que o primeiro e o último blocos têm o dobro do comprimento dos blocos do meio.
| Horizonte T = 12 períodos, efeito residual de ordem m = 2 | Períodos |
|---|---|
| Pontos de sorteio ótimos | 1, 5, 7, 9 |
| Bloco inicial | períodos 1 a 4, comprimento 2m |
| Blocos do meio | 5 a 6 e 7 a 8, comprimento m |
| Bloco final | períodos 9 a 12, comprimento 2m |
Os autores tiram daí uma orientação prática que vale ser lida devagar: a frequência ótima de sorteio depende da duração física do efeito residual, independentemente da granularidade escolhida para um único período. Ou seja, a pergunta certa não é quantos minutos você quer, e sim quanto tempo o seu sistema leva para esquecer o tratamento. Se o mercado leva 25 minutos para reequilibrar a oferta depois de uma mudança de preço, é isso que dita o período, não a conveniência do relatório.
Eles também observam uma robustez útil: quando não existe efeito residual (m igual a zero) ou ele é mínimo (m igual a 1), os desenhos ótimos são praticamente os mesmos. Errar para o lado de supor um efeito residual curto custa pouco.
O valor-p que a calculadora devolve é otimista
Aqui está a parte que nenhuma calculadora avisa, incluindo a nossa. O teste de duas proporções que você acabou de rodar supõe unidades independentes. Num switchback essa hipótese é falsa por construção.
O motivo é físico. O DoorDash coloca em termos concretos: o tempo médio para completar entregas numa área durante um intervalo de 10 minutos é fortemente correlacionado com o tempo médio na mesma área no intervalo seguinte, muito mais do que uma entrega isolada é correlacionada com a entrega seguinte. Janelas vizinhas compartilham clima, trânsito, promoções e o mesmo turno de entregadores.
Correlação positiva entre unidades do mesmo braço significa variância subestimada, que significa erro-padrão pequeno demais, que significa valor-p pequeno demais. A correção usada por eles é um estimador de variância robusto à falta de independência, do tipo sanduíche, e eles relatam que nos testes A/A rodados o efeito desse estimador sobre as contas de variância ficou abaixo de 10 por cento.
Vale ver o tamanho dessa correção no nosso exemplo. Inflar a variância em 10 por cento multiplica o erro-padrão por raiz de 1,10, ou seja, por 1,0488. O z de 14,119 do switchback cai para 13,462, e o resultado continua a milhas de qualquer limiar de significância. Essa é a boa notícia embutida no número deles: quando a correlação entre janelas é moderada, a correção muda a conta e raramente muda a decisão. A má notícia é que isso não é uma lei, é uma medição que eles fizeram no sistema deles. Meça no seu, com testes A/A, antes de assumir que a sua correlação também é pequena. O procedimento é o mesmo descrito em teste A/A e validação.
Bojinov, Simchi-Levi e Zhao oferecem duas saídas mais rigorosas para quem quiser: valores-p exatos baseados em aleatorização, e testes conservadores construídos sobre um teorema central do limite para população finita. As duas dispensam a hipótese de normalidade que a aproximação de duas proporções carrega.
Checklist antes de rodar um switchback
- A interferência existe mesmo? Se os braços não disputam recurso nenhum, o switchback só custa poder. Um teste A/B comum é melhor sempre que ele é válido.
- Qual é a ordem do efeito residual? Quanto tempo o seu sistema leva para voltar ao normal depois de desligar o tratamento. Esse número, e não a conveniência, define a janela.
- A variante de cada janela é sorteada de verdade? Sorteio a cada janela, meio a meio, e independente entre as regiões.
- A análise roda sobre janelas? Média simples das unidades tempo mais região. Calcule também a ponderada, mas só para comparar as duas.
- A variância foi corrigida para a dependência entre janelas vizinhas? Sem isso o valor-p é otimista.
- A aleatorização passou na checagem de saúde? O DoorDash relata que checar se a proporção esperada de entregas caiu em cada braço já pega a maior parte dos casos de viés, e que, quando notam viés, encerram o experimento e recomeçam com unidades de tempo ou geografia mais grossas. Vale a mesma disciplina de divisão desigual de tráfego.
- O resultado bate com a realidade depois do lançamento? Eles fazem essa verificação olhando a série temporal da métrica antes e depois do lançamento definitivo, buscando confirmação direcional, não igualdade exata.
Erros comuns
- Alternar em vez de sortear. Alternância determinística casa com qualquer ciclo do negócio de período parecido, e aí você não tem experimento, tem uma comparação de horários.
- Analisar por entrega depois de sortear por janela. Infla a amostra artificialmente e produz intervalos de confiança que não descrevem nada. É a mesma confusão entre unidade de sorteio e unidade de análise que aparece em métricas de razão.
- Encurtar a janela para ganhar poder. Funciona na planilha e cria viés na rua, porque o tratamento devolve trabalho pendente para o controle limpar.
- Usar switchback onde ele não é necessário. O desenho custa poder e tempo de calendário. Fora de sistemas com recurso compartilhado, isso é preço sem produto.
- Confiar no valor-p bruto. Sem correção de variância, ele descreve um experimento de unidades independentes que você não rodou.
Faça isso automático na Donnu
O que torna um switchback difícil não é a estatística, é a disciplina de manter a unidade de sorteio e a unidade de análise casadas do começo ao fim, com o resultado bom já na tela.
Na Donnu, o relatório de um experimento sempre declara qual foi a unidade de aleatorização e roda o teste sobre essa unidade, sem oferecer a opção de trocar a unidade na hora da análise porque o número fica mais bonito. Quando o desenho tem unidades agrupadas, o alerta de dependência aparece acima do resultado, não num rodapé. E se você quiser refazer qualquer conta na mão, a calculadora de valor-p aceita as contagens brutas de qualquer corte.
Referências
- Kastelman, D. e Ramesh, R. Switchback Tests and Randomized Experimentation Under Network Effects at DoorDash. DoorDash, 13 de fevereiro de 2018. Fonte do exemplo do preço de pico e da explicação de que os dois grupos dividem a mesma frota, da definição de unidades tempo mais região, da decisão de aleatorizar a variante de cada janela em vez de alternar de forma determinística, da regra de analisar sobre médias simples das unidades e não sobre entregas individuais, do uso do estimador de variância sanduíche com efeito abaixo de 10 por cento nos testes A/A, do cabo de guerra entre viés e margem de erro, do exemplo do algoritmo relutante com entregas longas, e da escolha operacional de janelas de 30 minutos em divisões no nível de cidade. careersatdoordash.com.
- Bojinov, I., Simchi-Levi, D. e Zhao, J. Design and Analysis of Switchback Experiments. arXiv 2009.00148, versão de 17 de setembro de 2025. Fonte do Teorema 1 sobre a otimalidade do sorteio meio a meio, do Teorema 2 com os pontos de sorteio ótimos e o exemplo de T igual a 12 com m igual a 2, da observação de que a frequência ótima depende da duração física do efeito residual e da recomendação de que cada período seja quase tão longo quanto a ordem desse efeito, da robustez quando m é zero ou 1, e das duas abordagens de inferência propostas. arxiv.org.
- Chamandy, N. Experimentation in a Ridesharing Marketplace. Lyft Engineering, 2016. Série em três partes citada pelo próprio time do DoorDash como referência anterior sobre experimentação com efeito de rede em marketplaces de mobilidade. eng.lyft.com.
- Kohavi, R., Tang, D. e Xu, Y. Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Cambridge University Press, 2020. Referência geral sobre violação da hipótese de unidades independentes e desenhos alternativos de aleatorização. Material complementar em experimentguide.com.
Leia também: Interferência entre variações · Testes simultâneos e efeito de interação · Métricas de razão · Teste A/A e validação · Calculadora de valor-p · Read in English
Perguntas frequentes
- O que é um teste switchback?
- É um experimento em que a mesma unidade, normalmente uma cidade ou região inteira, é exposta ao controle e ao tratamento em janelas de tempo alternadas e sorteadas. Em vez de dividir os usuários em dois grupos, você divide o tempo. A unidade experimental deixa de ser o usuário e passa a ser o par tempo mais região. O time de Dispatch do DoorDash descreveu essa arquitetura em detalhe em 2018 e roda os testes deles com janelas de 30 minutos em divisões geográficas próximas do nível de cidade.
- Quando o teste switchback é melhor que o teste A/B tradicional?
- Quando os dois braços disputam o mesmo recurso compartilhado e por isso interferem um no outro. O exemplo canônico é o preço dinâmico num marketplace de entregas: se metade dos consumidores vê o preço de pico e metade não, as duas metades continuam dividindo a mesma frota de entregadores, então o controle recebe parte do benefício do tratamento e a diferença medida encolhe. Sempre que a atribuição de um usuário muda o resultado de outro, a hipótese de unidades independentes cai e o teste A/B comum passa a medir uma versão diluída do efeito.
- Qual deve ser o tamanho da janela de um switchback?
- Bojinov, Simchi-Levi e Zhao mostram no artigo deles que o desenho ótimo depende da duração física do efeito residual, não da granularidade escolhida para o período, e recomendam que cada período seja quase tão longo quanto a ordem desse efeito residual. Na prática o DoorDash relatou usar 30 minutos. Janela curta demais introduz viés porque o tratamento devolve trabalho pendente para o controle limpar; janela longa demais reduz o número de unidades e infla a margem de erro.
- Por que o valor-p de um switchback é otimista demais?
- Porque o teste padrão supõe unidades independentes e as janelas consecutivas da mesma região não são independentes: o tempo médio de entrega numa área em uma janela de 10 minutos é fortemente correlacionado com o da janela seguinte. Sem correção, a variância fica subestimada e o valor-p sai menor do que deveria. O DoorDash usa um estimador de variância do tipo sanduíche para lidar com isso e relatou que, nos testes A/A que rodou, o efeito desse estimador sobre as contas de variância ficou abaixo de 10 por cento.
- Qual é a probabilidade de sorteio ideal num switchback?
- Meio a meio. O Teorema 1 de Bojinov, Simchi-Levi e Zhao estabelece que qualquer desenho ótimo de switchback regular tem que ter probabilidade de atribuição igual a 1 sobre 2 em todos os pontos de sorteio. E o sorteio precisa ser real a cada janela, não uma alternância determinística iniciada por um sorteio único: o DoorDash é explícito ao dizer que aleatoriza a variante de cada janela em vez de sortear só a primeira e alternar depois.