---
title: Media Mix Modeling — RGM Training
url: https://realgrowthmatters.com/training/attribution-measurement/media-mix-modeling/
updated: 2026-06-10
source_html: https://realgrowthmatters.com/training/attribution-measurement/media-mix-modeling/
---

[Home](../../../index.html) › [Training](../../index.html) › [Attribution & Measurement](../index.html) › Media Mix Modeling

RGM° · Training

# Media Mix Modeling

MMM is back and bigger than ever. Fundamentals, Bayesian frameworks, calibration with experiments, and the strategic measurement layer mature programs build on.

### What you will learn

1. [Why MMM is back and bigger than ever](#why)
2. [MMM fundamentals: regression, adstock, saturation](#fundamentals)
3. [Data requirements: weekly aggregate by channel + controls](#data)
4. [Bayesian MMM and open-source frameworks (Robyn, LightweightMMM, Orbit)](#bayesian)
5. [Calibration with experiments — the experiment-MMM hybrid](#calibration)
6. [Vendor landscape](#vendors)
7. [Interpreting outputs: budget allocation, response curves, saturation](#interpretation)
8. [Communicating MMM to stakeholders](#stakeholders)
9. [Advanced playbook](#advanced)
10. [Common mistakes](#mistakes)
11. [Operating checklist](#checklist)

## Why MMM is back

Media mix modeling has been around since the 1960s. For decades, it was the domain of CPG giants with quarterly bonded analyst teams and six-figure-budget engagements. The 2010s saw MTA eclipse MMM as "digital-native" attribution. Then ATT and cookie deprecation arrived, and the industry realized aggregate-level measurement that doesn't rely on user identity is structurally more durable.

The 2020s MMM renaissance is being driven by: open-source frameworks (Meta's Robyn, Google's LightweightMMM, Uber's Orbit) making MMM accessible to mid-market brands; modern compute making Bayesian models tractable; ATT making MTA degraded; and meta-analysis showing MMM's causal validity was always stronger than MTA's.

## MMM fundamentals

MMM is regression analysis fitting:

**Sales(week) = baseline + Σ coefficient\_i × adstock(saturation(spend\_i, week)) + Σ control\_j × week + error**

The model decomposes weekly sales into: baseline (organic demand), media-attributed sales by channel, and control-attributed sales (seasonality, pricing, distribution, competitive activity, macro).

### Adstock (carryover)

Advertising effect doesn't end on the day the ad runs. People remember; impressions accumulate; conversions happen days or weeks later. Adstock models this carryover with a geometric or Weibull decay function:

adstock(t) = spend(t) + λ × adstock(t-1)

where λ is the carryover rate (typically 0.3–0.7 depending on channel; TV is high, sponsored search is low).

### Saturation (diminishing returns)

Doubling spend doesn't double sales. Saturation curves (Hill function, sigmoid, log) model the diminishing-returns relationship between spend and outcome. The shape of the saturation curve is crucial for budget optimization.

### Controls

The model must account for non-media drivers: seasonality, holidays, weather, pricing changes, distribution changes, competitive activity, macroeconomic factors. Without controls, the model attributes their effects to media incorrectly.

## Data requirements

- **Weekly sales or conversions:** 2+ years (104+ weeks) ideal; 1 year (52 weeks) workable for simpler models.
- **Weekly spend by channel:** Each meaningful channel separately (Meta, Google Search, TikTok, Display, CTV, Email, etc.).
- **Impressions or GRPs:** When available, better than spend alone (less correlation with channel CPMs).
- **Pricing and promotions:** Week-level average price, promotional discount %, promotional events.
- **Distribution:** Store count, region availability changes.
- **Competitive media spend:** If available; Kantar/Nielsen syndicated data.
- **Macroeconomic and seasonal:** Consumer confidence, weather, holiday indicators.
- **Granularity:** National or DMA-level depending on the model; geo-MMM allows DMA-level inputs.

## Bayesian MMM and open-source

Modern MMM is largely Bayesian: priors are set on coefficients (based on prior knowledge or experiments), posterior distributions are computed, uncertainty is quantified. This is a step up from frequentist regression that gives point estimates without uncertainty.

### Open-source frameworks

- **Meta Robyn.** R-based; uses Nevergrad optimization. Strong calibration with experiments. Active community.
- **Google LightweightMMM.** Python-based; built on NumPyro (JAX-backed Bayesian inference). Built-in geo support.
- **Uber Orbit.** Python-based Bayesian time-series framework; not MMM-specific but used for MMM.
- **PyMC and Stan.** General Bayesian modeling languages; for advanced custom models.

## Calibration with experiments

A frequentist MMM is just a regression on observational data. It conflates correlation with causation. Experiment calibration fixes this: incrementality test results inform Bayesian priors on channel coefficients, making the model causally grounded.

1. Run incrementality tests (geo holdouts, user-level lift studies) on major channels.
2. Use test results to set Bayesian priors on channel coefficients.
3. Fit MMM with experiment-informed priors.
4. Validate model against held-out periods.
5. Repeat experiments and refit model on a rotation.

This experiment-MMM hybrid is the modern best practice. Single-source MMM (no experiments) and single-source experiments (no MMM) both have gaps that the hybrid fills.

## Vendor landscape

- **Modern MMM-as-a-service:** Recast, Haus, Northbeam, Mass2 Analytics, Vexpower, Marketing Evolution. Quarterly model rebuilds, dashboards, integrated experiments.
- **Traditional CPG MMM:** Nielsen, Kantar, IRI/Circana, Marketing Analytics Consultants. Annual or semi-annual engagements; deep CPG expertise.
- **Boutique consultancies:** Many regional firms with strong domain expertise.
- **In-house teams:** Robyn, LightweightMMM, or proprietary code. Requires statistical capacity but offers full control.

## Interpreting MMM outputs

- **Channel contribution.** What % of sales each channel drove in the modeled period.
- **Channel ROI (or ROAS, iROAS).** Revenue per dollar of channel spend, with carryover and saturation accounted for.
- **Response curves.** Sales lift as a function of spend; reveals diminishing returns and saturation points.
- **Optimal budget allocation.** Given total budget, what allocation maximizes sales? Model output.
- **Marginal ROI.** Incremental sales from the next $1 of spend at current levels.
- **Saturation point.** Spend level where additional investment yields diminishing returns — useful for capping channel budgets.
- **Carryover length.** How long ad effect persists per channel; informs flighting decisions.

## Communicating MMM

- **Quote uncertainty.** Bayesian MMM gives credible intervals; share them with stakeholders.
- **Explain what MMM can and can't answer.** MMM answers strategic; can't answer tactical campaign optimization.
- **Distinguish in-sample fit from out-of-sample predictive accuracy.** A model with great in-sample R^2 and poor out-of-sample accuracy is overfit.
- **Avoid false precision.** "Meta drives 23.7% of sales" is overconfident; "Meta drives roughly 20–28% of sales with 80% credibility" is honest.
- **Bring CFO along early.** MMM is the most financially defensible attribution methodology; CFOs respect the methodology when explained well.

## Advanced playbook

- **Bayesian priors from experiments.** Always-experiment, always-model approach. Quarterly tests inform model priors; model informs which tests to run next.
- **Out-of-sample validation discipline.** Hold out the most recent 12 weeks during model fitting; test predictions against actuals before deploying.
- **Geo-MMM for added power.** DMA-level data gives 50+ "observations" per week instead of 1. Statistical power grows dramatically.
- **Channel decomposition.** Split Meta into Facebook + Instagram, into prospecting + retargeting, into conversion + awareness campaigns. The granularity reveals which sub-channels drive value.
- **Saturation curve maintenance.** Saturation shifts as audiences exhaust. Annual refresh required.
- **Pricing and promotion as primary controls.** For ecommerce and retail, pricing changes drive 20–50% of sales variance. Model carefully or attribute pricing effects to media incorrectly.
- **Brand vs activation separation.** Brand-building channels (TV, OOH, podcast, CTV upper-funnel) have long carryover (8–12+ weeks); activation channels (sponsored search, social conversion) have short carryover (1–3 weeks). Model accordingly.
- **Cross-channel synergies.** Some channel pairs have multiplicative effects (TV + search). Model interaction terms where supported by theory and data.
- **Budget optimization with constraints.** Optimal allocation often shows recommendations that violate operational constraints (can't put 80% in one channel). Build constraints into optimization.
- **Scenario modeling.** What if budget rises 20%? Falls 30%? Channel mix shifts? Run what-if analyses with the model to inform planning.

## Common mistakes

- Building MMM without experiment calibration; observational regression has identifiability problems.
- Insufficient control variables; pricing, distribution, competitive effects attributed to media.
- Single-source MMM with no incrementality tests for validation.
- Quoting point estimates without credible intervals.
- Models with great in-sample fit and poor out-of-sample prediction; overfit.
- Treating MMM outputs as exact; expecting daily-level granularity from weekly-level model.
- Annual MMM that becomes stale by month 9.
- Refusing to refit when major changes happen (new product launch, pricing shift, channel addition).
- Building MMM without finance team alignment on methodology; CFO rejects outputs.
- Outsourcing without methodology transparency; can't defend numbers when questioned.

## Operating checklist

- 2+ years of weekly sales and spend data assembled
- Comprehensive control variables (pricing, promo, distribution, seasonality, macro)
- Bayesian framework chosen (Robyn / LightweightMMM / vendor)
- Incrementality test results used as priors
- Out-of-sample validation built into model fit process
- Model rebuilt quarterly or semi-annually
- Response curves and saturation visualized
- Budget optimization scenarios produced quarterly
- Stakeholder communication with credibility intervals
- Methodology documented for finance team review
- Experiments calendar coordinated with MMM refresh cycle

## Sources and further reading

- Meta Robyn open-source documentation and GitHub
- Google LightweightMMM documentation
- Uber Orbit documentation
- PyMC and Stan documentation
- Recast, Haus, Northbeam — modern MMM vendor methodology
- Nielsen MMM whitepapers and academic publications
- Mass2 Analytics — CPG MMM case studies
- Mike Taylor, Vexpower — MMM tutorials and case studies
- Igor Skokan and Bayesian Marketing community
- Andrew Gelman — Bayesian Data Analysis (textbook)
- Markus Strauss et al. — Bayesian MMM research
- Hyokjin Kwak et al. — academic MMM and incrementality research

---

Part of the [Attribution & Measurement](../index.html) series.
