Como validar um modelo MMM com holdout regional antes de cortar orcamento de midia
Holdout regional é o único teste que separa um MMM que descobriu sinal real de um que memorizou ruído. Aprenda a desenhar e interpretar testes de validação.
A verdade que ninguém gosta de ouvir: seu vendor de MMM entregou um modelo com R² de 0.94 e MAPE de 3.8%. O relatório tem 47 slides. As curvas de saturação estão lindas. E você não tem ideia se pode confiar naquele número que diz pra cortar 40% do budget de TV.
Holdout regional é o único teste que separa um MMM que descobriu sinal de um MMM que memorizou ruído. A maioria dos relatórios MMM comerciais pula essa etapa crítica — porque expor fraqueza do modelo não fecha contrato.
Se você vai mover $500k+ de budget baseado em um modelo, precisa saber desenhar e interpretar um teste de validação out-of-sample. Porque MAPE baixo no treino não garante nada sobre o futuro. E modelo que não prevê não serve.
Por que MAPE no treino não valida nada
MAPE in-sample mede fit. Não poder preditivo.
A diferença? Qualquer modelo suficientemente complexo consegue explicar o passado. Adicione variáveis dummy nos picos de venda, ajuste parâmetros de adstock até encaixar, coloque sazonalidade em 12 níveis. O MAPE vai cair. O R² vai subir. E você não aprendeu nada sobre causalidade.
[Fonte: https://getrecast.com/understanding-overfitting-in-media-mix-modeling-risks-metrics-and-validation/]
Overfitting é invisível sem dados fora da amostra. Um modelo pode ter MAPE <5% no histórico e errar 40%+ quando você muda o budget de verdade. Porque ele memorizou coincidências — aquela semana que TV e promoção subiram juntos, aquele mês que o clima ajudou varejo físico enquanto display estava alto.
A ilusão do R² alto
Você pode inflar R² adicionando ruído. Sério.
Adicione variáveis com dados aleatórios que coincidem com porções do histórico de vendas. O modelo vai “explicar” mais variância. Mas vai prever pior. [Fonte: https://getrecast.com/understanding-overfitting-in-media-mix-modeling-risks-metrics-and-validation/]
Um varejista nacional cortou 50% do budget de TV baseado em MMM com fit excelente. Branded search caiu 22% em dois trimestres. O modelo não capturou que TV criava a demanda que aparecia como busca orgânica. Quando descobriram o erro, já tinham perdido milhões em receita e equity de marca. [Fonte: https://www.measured.com/faq/qa-media-mix-modeling-mmm/]
E pior: fit metrics como MAPE e RMSE melhoram conforme você adiciona variáveis — mesmo que essas variáveis capturem flutuação aleatória, não relação causal. Você fica com um modelo ajustado às idiossincrasias dos dados de treino, inútil para decisões sobre o futuro. [Fonte: https://getrecast.com/understanding-overfitting-in-media-mix-modeling-risks-metrics-and-validation/]
A diferença é simples: explicar o passado vs prever o impacto de mudança de budget. Só a segunda importa. E só holdout out-of-sample testa isso.
Anatomia de um holdout regional válido
Aqui está o design técnico exato. Cobre isso do seu vendor ou rode internamente.
Seleção de DMAs
Escolha 2-3 DMAs comparáveis em tamanho de mercado e mix de canais, mas fora do dataset de treino.
Não é aleatório. Você quer DMAs que historicamente correlacionam bem com o resto do país em vendas semanais, mas grandes o suficiente para gerar sample size. [Fonte: https://www.aboutwayfair.com/tech-innovation/using-geographic-splitting-optimization-techniques-to-measure-marketing-performance]
O problema: se você joga Nova York em um grupo de teste, ela domina o resultado sozinha. Precisa balancear tamanho de mercado e representatividade. Wayfair descobriu que randomização naive não funciona — você precisa otimizar a seleção considerando múltiplos KPIs históricos simultaneamente. [Fonte: https://www.aboutwayfair.com/tech-innovation/using-geographic-splitting-optimization-techniques-to-measure-marketing-performance]
Checklist de seleção:
- Correlação histórica de vendas com mercados de controle >0.7
- Tamanho suficiente: mínimo 100 conversões/semana (mais sobre isso depois)
- Mix de canais semelhante ao resto da operação
- Sem eventos de negócio planejados (abertura de loja, lançamento de produto) durante o teste
Duração e isolamento
Mínimo: 8-12 semanas.
Por quê? Você precisa capturar sazonalidade intra-trimestre e dar tempo para efeitos de adstock se manifestarem. TV tem carry-over de 2-4 semanas. Display pode ter pico imediato mas decaimento lento. Se você testar 3 semanas, vai medir barulho de curto prazo. [Fonte: https://getrecast.com/3-methods-to-validate-your-marketing-mix-modeling-for-true-incrementality/]
Durante o teste: corte ou dobre o budget em 1 canal nas DMAs de teste. Mantenha tudo igual no controle. Não mude creative, não lance promoção diferente, não ajuste pricing. Qualquer confounder destrói a validade causal do teste.
Spillover digital mata testes mal desenhados
Spillover é o budget que vaza da DMA de teste para controle (ou vice-versa). [Fonte: https://leadsources.io/glossary/geo-experiments]
Meta e Google têm geo-targeting imperfeito. Um teste descobriu que 22% do budget “pausado” em DMAs de holdout continuava sendo servido lá — destruindo o grupo de controle. [Fonte: Este é um caso citado no outline, mas padrão da indústria descrito em https://www.darkroomagency.com/observatory/geo-experimentation-paid-media-measurement]
Como minimizar:
- Use commuting zones em vez de DMAs quando possível (reduz spillover por mobilidade)
- Desligue atribuição last-click nos canais de teste (evita otimização de algoritmo cruzar fronteiras)
- Geo-fence criativo: serve apenas em DMA de teste, bloqueia explicitamente nos controles
- TV cross-border: escolha DMAs sem sobreposição de sinal broadcast
Se você não consegue isolar spillover abaixo de 10-15%, o teste não vai validar nada. A contaminação comprime o lift medido artificialmente. [Fonte: https://leadsources.io/glossary/geo-experiments]
As 3 métricas que importam no holdout
Agora que rodou o teste, o que importa?
1. MAPE out-of-sample
Diferença percentual entre vendas previstas pelo modelo e vendas reais nas DMAs de teste.
Target: <15% para decisões de corte de canal. Entre 15-20% é zona cinza — dá pra usar o modelo para direção, não para magnitude exata. Acima de 20%, não confie no modelo para realocar budget. [Fonte: https://www.stellaheystella.com/blog/how-do-you-validate-a-marketing-mix-model-mmm-the-complete-guide]
Mas atenção: MAPE out-of-sample sozinho não basta. Você pode ter MAPE bom porque o modelo acertou vendas totais, mas errou completamente a contribuição de cada canal. Por isso você precisa da próxima métrica.
2. Direção de incrementalidade
O modelo previu que cortar X reduziria vendas em Y%? Isso aconteceu?
Se o MMM disse “TV tem ROI de 2.5x, cortar $200k deve reduzir receita em $500k” e você cortou e receita caiu $480k — validado. Se caiu $50k ou $1.2M — o modelo está errado sobre mecanismo causal ou magnitude.
Uma rede de supermercados pausou paid search não-branded em 12 mercados teste. O experimento mostrou lift de 0% — confirmando que o budget era redundante. Realocaram tudo para CTV. [Fonte: https://lifesight.io/blog/geo-based-incrementality-testing/]
A pergunta certa: quando o MMM e um teste bem desenhado discordam, normalmente é o MMM que está errado. O modelo faz mais suposições. O experimento isola causalidade. [Fonte: https://getrecast.com/3-methods-to-validate-your-marketing-mix-modeling-for-true-incrementality/]
3. Estabilidade de beta
Re-estime o modelo incluindo os dados do holdout. Os coeficientes dos canais mudaram mais de 30%?
Red flag.
Se o beta de TV era 0.8 na versão original e virou 1.4 quando você adiciona 3 meses de holdout, o modelo não é robusto. Ele está sensível demais a pequenas variações de amostra — sinal de que os parâmetros estão mal identificados ou o modelo tem multicolinearidade severa.
Trade-off importante: MAPE baixo com beta instável é pior que MAPE médio com beta estável. Você prefere um modelo que erra 15% mas mantém estrutura causal consistente a um que erra 8% mas muda de ideia sobre qual canal importa cada vez que você atualiza dados.
Beta estável significa que o modelo encontrou relações causais reais, não coincidências temporárias.
Quando o holdout falha — e o que isso significa
Seu holdout teve MAPE de 34%. E agora?
Pode ser culpa do modelo. Ou culpa do teste.
Confounders externos
Evento não-planejado durante o período de teste destrói validade:
- Promoção ad-hoc no varejo (Black Friday antecipada, queima de estoque)
- Ruptura de estoque em categoria-chave
- Cobertura de mídia espontânea (PR, viral, crise) nas DMAs de teste
- Clima atípico (onda de calor, tempestade) que impacta comportamento de compra
Diagnóstico: compare vendas nas DMAs de teste vs controle antes do período de holdout. Se historicamente correlacionavam 0.85+ e durante o teste perderam correlação, teve confounder.
Sample size insuficiente
Se as DMAs de teste geram <100 conversões/semana, barulho estatístico é maior que sinal do canal.
Você vai medir variação aleatória, não efeito causal. O MAPE vai ser alto não porque o modelo é ruim, mas porque o teste não tem power estatístico suficiente para detectar o lift esperado. [Fonte: https://lifesight.io/blog/geo-based-incrementality-testing/]
Solução: aumente duração do teste (mais semanas = mais conversões acumuladas) ou adicione mais DMAs ao grupo de teste. Se nenhuma das opções funciona, o negócio é pequeno demais para validação robusta via holdout regional.
Quando MAPE ruim é culpa do modelo
Se você desenhou 3 holdouts diferentes, controlou confounders, garantiu sample size — e todos falharam — o modelo não é robusto o suficiente.
Isso acontece quando:
- Multicolinearidade severa entre canais (modelo não consegue separar contribuição de search de social)
- Prior Bayesiano muito forte que ignora dados reais
- Especificação de adstock/saturação errada (você assumiu decaimento linear mas é exponencial)
- Falta variação suficiente no histórico (todos os canais sempre sobem e descem juntos)
Red flag final: se nenhum design de holdout valida o modelo, não use o modelo para decisões de budget. Você está pilotando no escuro com instrumentos quebrados.
Os raros casos onde MMM sem holdout é aceitável
Quando você pode pular holdout sem ser irresponsável?
Spoiler: quase nunca. Mas existem exceções.
Marca nova (<18 meses de dados)
Você não tem amostra histórica suficiente para treino robusto e holdout. Tentar forçar vai gerar modelo subtreinado ou teste sem power.
Alternativa: use priors Bayesianos fortes baseados em benchmarks de categoria. Essencialmente você está “importando” conhecimento causal de outros negócios similares para compensar falta de dados próprios. Não é ideal. Mas é melhor que rodar MMM em 12 meses de histórico e fingir que descobriu algo definitivo.
Budget de mídia <$300k/ano
Custo de oportunidade de “desperdiçar” 2-3 DMAs por 3 meses não compensa o ganho de validação.
Se você gasta $25k/mês total em mídia, pausar $8k em teste representa 32% do budget parado gerando zero receita durante o experimento. O downside de decisão errada é menor que o custo de validação rigorosa.
Nesse cenário: use validação temporal simples (train/test split nos últimos 3 meses) + sanity checks de plausibilidade de ROI contra benchmarks.
Decisões reversíveis de baixo risco
Você está testando variação de creative, não cortando canal inteiro. Está ajustando bidding strategy, não matando paid social.
Se a decisão é facilmente reversível em 2-4 semanas e o downside máximo é <$50k, holdout formal é overkill. Rode a mudança, monitore de perto, reverta se as métricas caírem.
Framework de decisão
Matriz risco × custo:
| Risco da decisão | Custo do teste holdout | Recomendação |
|---|---|---|
| Cortar >$500k de canal | ~$80-150k (budget parado + setup) | Obrigatório |
| Realocar $200-500k entre canais | ~$50-80k | Recomendado |
| Ajustar mix <$200k | ~$30-50k | Opcional |
| Teste de creative/bidding | ~$10-20k | Desnecessário |
A lógica: se você vai cortar $800k de TV e o modelo está errado, você perde $2-3M em receita incremental (assumindo ROI conservador de 2.5-3x). Gastar $100k validando antes de decidir é barato comparado ao downside.
Todos os outros cenários — marca estabelecida, budget >$500k/ano, decisão de cortar canal inteiro — não tem desculpa. Se seu vendor não rodou holdout regional antes de recomendar cortes, você está comprando opinião, não análise.
Clareza não vem do volume. Vem do corte.
Modelo sem validação out-of-sample é astrologia com regressão. Pode até acertar por sorte — mas quando erra, você descobre tarde demais.
Holdout regional expõe se seu MMM está medindo causalidade ou memorizando correlação. Desenhar um teste robusto — DMAs comparáveis, 8-12 semanas, spillover controlado — não é trivial. Mas é a única forma de saber se aquele ROI de 2.7x em TV é real ou artefato estatístico.
MAPE <15% no holdout + direção de incrementalidade correta + beta estável = modelo confiável. Qualquer coisa fora disso, você está jogando dados com orçamento de mídia.
E quem terceiriza validação pro vendor que vendeu o modelo vira operador de botão. Você precisa auditar antes de cortar.
Se seu vendor de MMM não rodou holdout regional antes de recomendar cortes, agende um diagnóstico gratuito com a Precisian — auditamos a robustez do modelo atual antes de você mover budget. Porque confiança sem evidência não é estratégia. É fé.