Tags: analytics commerce statistics concept
Marketing Mix Modelling
Date: 2026-08-17
Regressing sales against spend and external factors to estimate what each channel contributed. It needs no tracking at all, which is why a technique from the 1960s is back — and it answers a genuinely different question from attribution, at a much coarser grain, with far more ways to be confidently wrong.
What it is
MMM fits a model of aggregate sales against aggregate inputs, usually weekly, over two to three years.
sales_week = baseline
+ β₁ · f(TV spend)
+ β₂ · f(paid search spend)
+ β₃ · f(paid social spend)
+ γ · price index
+ δ · seasonality
+ ε · promotions, weather, competitor activity
+ error
No user-level data anywhere. Inputs are spend by channel by week; the output is an estimated contribution per channel. That property is why it survives ad blockers, consent decline, cross-device journeys and platform restrictions without modification — Privacy-Preserving Measurement.
The two transformations that make it work
The f() above is doing essential work, and MMM without it is just a linear regression that will mislead you.
Adstock (carryover) — advertising doesn’t only affect the week it ran.
adstocked_t = spend_t + λ · adstocked_(t−1)
λ = 0.6, spend of £10,000 in week 1 then nothing:
week 1 10,000
week 2 6,000 ← 0.6 × 10,000
week 3 3,600
week 4 2,160
week 5 1,296 effect decays geometrically
Saturation (diminishing returns) — the tenth impression is worth less than the first. Usually a curve where response flattens as spend rises.
spend/week modelled incremental revenue marginal £ per £ spent
£10,000 £48,000 £4.80
£20,000 £82,000 £3.40 ← still positive
£40,000 £119,000 £1.85
£80,000 £142,000 £0.58 ← below break-even
The saturation curve is the actual deliverable. Not “paid social drove £X” — the useful output is where the next £10,000 should go, and that’s a question about marginal return, which only the curve answers — Marginal Analysis, Bid Strategies and Budget Allocation.
MMM versus attribution
They answer different questions and disagreeing is expected rather than a fault.
| Attribution | MMM | |
|---|---|---|
| Data | User-level touchpoints | Aggregate weekly spend and sales |
| Question | Which touchpoints preceded conversions? | What did each channel contribute? |
| Grain | Campaign, ad, keyword | Channel, at best sub-channel |
| Latency | Near real-time | Weeks; refreshed quarterly |
| Sees offline, TV, out-of-home | No | Yes |
| Sees brand and long-term effects | No | Partially |
| Affected by tracking loss | Severely | Not at all |
| Causal claim | Weak — correlational ordering | Stronger, still observational |
Neither is ground truth. Attribution over-credits the last measurable click; MMM can attribute to a channel whose spend merely correlated with demand — Attribution Models, Correlation and Causation.
Why it’s easy to get wrong
- Multicollinearity. Channels whose spend moves together can’t be separated — if TV and paid social both rise every Q4, the model cannot tell which drove the sales, and it will assign a split with confident-looking coefficients anyway. This is the central technical problem, and the fix is deliberate variation in spend, which marketing teams hate
- Too few observations. Three years of weekly data is 156 points. With ten channels plus seasonality, price and promotions, you’re close to fitting noise — The Multiple Comparisons Problem
- Wide, unreported uncertainty. A channel’s contribution might be estimated at £400k ± £250k. Reported as “£400k”, it becomes a budget decision — Communicating Uncertainty, Confidence Intervals
- Researcher degrees of freedom. Adstock rates, saturation curves and which variables to include are all choices, and different reasonable choices produce materially different answers. Whoever fits the model has more influence over the result than the data does — The Garden of Forking Paths
- Omitted variables. A competitor’s outage, a viral moment, a supply problem — anything unmodelled gets absorbed into whichever channel it correlates with
- Baseline ambiguity. Sales with zero marketing is unobservable, so the baseline is an extrapolation, and it’s typically the largest single term in the model
Validating it
The step that separates useful MMM from expensive numerology:
- Calibrate against experiments. Run a geo holdout on one channel and check whether MMM’s estimate for that channel matches the measured incremental lift. This is the single most valuable thing you can do — it converts an observational model into one anchored by a causal measurement, and it’s now standard practice in credible implementations — Incrementality Testing
- Hold out time periods. Fit on the first two years, predict the third, compare
- Check stability. Refit with one channel removed, or one quarter removed. Coefficients that swing wildly aren’t measuring anything
- Report intervals, always, and refuse to let the point estimate travel without them
When it’s worth it
Yes: meaningful offline or brand spend; multiple channels with real budget; two-plus years of clean history; a genuine budget-allocation decision to make; tracking degraded enough that attribution is unusable.
No: one or two digital channels (test them directly); under two years of history; spend too small for the modelling cost; you want campaign-level or creative-level decisions, which MMM cannot give at any price.
The mature position is a triangle: MMM for budget allocation across channels, experiments for causal ground truth and calibration, attribution for day-to-day optimisation within a channel — each used only for what it can support — Triangulation.
Where it interacts
- Incrementality Testing — the causal anchor that makes MMM trustworthy
- Attribution Models — the bottom-up counterpart, with opposite strengths
- Seasonality — a major model term, and a major source of confounding if handled badly
- Channel Mix — the decision MMM exists to inform