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.

AttributionMMM
DataUser-level touchpointsAggregate weekly spend and sales
QuestionWhich touchpoints preceded conversions?What did each channel contribute?
GrainCampaign, ad, keywordChannel, at best sub-channel
LatencyNear real-timeWeeks; refreshed quarterly
Sees offline, TV, out-of-homeNoYes
Sees brand and long-term effectsNoPartially
Affected by tracking lossSeverelyNot at all
Causal claimWeak — correlational orderingStronger, 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