Marketing — the Atlas · ch.30 · mmm
📣 Chapter 30 · Part V · Growth & measurement

The oldest model in the building

Media mix modeling was born on mainframes, shelved by the click, and resurrected by privacy. This chapter is how the aggregate math works, where it lies, and how it turns into next quarter's budget.

Here's the whole chapter in one line: when you can no longer follow the individual buyer, model the crowd — MMM asks the aggregate history what the spend did, and answers in budget allocations. Everything below is how to make that answer honest.

1The model your grandparents ran

Chapter 29 ended in an armistice: run experiments when you can afford the truth, keep attribution dashboards for daily steering, and let a third lens decide how the budget splits across channels. This chapter is that third lens — and the joke is that it's the oldest instrument in the whole atlas. Before pixels, before cookies, before the click existed as a concept, CPG econometricians in the 1960s were doing the only thing you can do with aggregate data: write down weekly sales on one side, and everything that might explain it on the other — ad spend by medium, price, distribution, seasonality, weather, what the competitor spent — and fit the line. That's media mix modeling: a regression over history, asking which of the things you did moved the number you care about.

Notice what's missing from that ingredient list: any information about any individual human. No tracked users, no identity graph, no consent banner. Weekly totals in, weekly totals out. For fifty years that looked like the technique's weakness — attribution could name the exact click, and MMM could only shrug at the aggregate. Then the tracking died, and the weakness turned out to be the moat.

Programmer's version: attribution is distributed tracing — follow one request across services and bill each hop. MMM is capacity planning from aggregate logs — no request IDs, just totals per week, and a model that infers what load did what. When the tracing headers get stripped (and Chapter 33 is the story of exactly that), the aggregate view is the one that still compiles.

2One equation, in plain English

Strip the vendor decks away and MMM is one readable equation: sales(t) = base + Σ effect_channel(spend) + controls + noise. Each piece earns its place:

  • Base — what you'd sell this week with the advertising switched off: distribution, habit, memory, brand. This is Chapter 19's compounding baseline, appearing here as a number the model estimates rather than a metaphor.
  • Channel effects — one term per medium, each passed through the two marketing-shaped curves of the next section, because raw spend never maps straight to sales.
  • Controls — price changes, promotions, seasonality, holidays, weather, competitor activity. Everything that moves sales and isn't your media, held still so the media terms don't steal its credit.
  • Noise — the honest term. Some weeks are just weird.

The model's actual job is harder than the equation looks: untangle correlated causes from a history you didn't design. Sales rose in November; so did TV spend, discounts, cold weather, and the competitor's stockout. You're fitting a function to noisy logs generated by a system nobody instrumented, and many different credit-splits reconstruct the same sales line almost equally well. Which stories the math can and can't tell apart is the whole game — Section 5 is about exactly that.

One more honesty clause before the curves: MMM is observational. It sees what happened, never what would have happened — Chapter 15's incrementality question doesn't dissolve just because the math got Bayesian. Causality has to be smuggled in deliberately: through structure, controls, and calibration against real experiments. Hold that thought.

3The two curves that make it marketing

What separates MMM from generic regression is two transformations, each encoding a fact about how advertising behaves that raw spend numbers miss.

Adstock — the echo. An ad you ran this week keeps selling next week, and the week after, fading as memory fades. So the model doesn't see this week's spend; it sees a running total that decays: a(t) = spend(t) + θ·a(t−1) — every week's spend, convolved with a decaying kernel. A TV brand campaign might carry θ near 0.8, its effect echoing for a month after the flight ends. Paid search carries θ near zero: the click happens now or never (the intent it captures was Chapter 20's, already formed).

Saturation — the bend. Doubling spend never doubles sales. The first dollars buy the cheapest attention — your lightest, easiest buyers (Sharp's logic from Chapter 5, priced by the auction dynamics of Part IV) — and every next dollar buys a harder one. So the adstocked spend passes through a bending curve that rises steeply, then flattens toward a ceiling. Where you sit on that bend is the single most consequential fact about a channel's budget.

Put them together and you should hear something familiar: these are Chapter 19's two clocks, written as math. Adstock is the long clock — memory, carryover, effects that outlive the spend. Saturation is the short clock's ceiling — how much demand exists to harvest right now, and how fast you exhaust it. Binet & Field argued the split with a databank; MMM fits it, per channel, from your own history.

💡
For the engineers: adstock is exponential smoothing — a leaky accumulator over the spend stream — and saturation is a rate limiter — throughput that flattens as you push the input. Every marketing channel is a leaky bucket behind a rate limiter; MMM just fits the leak rate and the limit from data.
Interactive · adstock & saturation One 3-week flight of spend · two knobs decide what it does
0.80
1.0
presets
Move the knobs — the gray bars are the money, the sand line is what it does.

4Shelved, then resurrected

If the technique is this sensible, why did it spend two decades in the attic? Because the classic MMM engagement was everything modern teams hate: an annual project, run by an outside consultancy, on data it took a quarter to assemble, producing a slide deck of coefficients nobody could reproduce and one big answer that arrived after the budget it was supposed to inform. The model was a priesthood, and the binder was its scripture.

Then digital attribution showed up promising the opposite: free, instant, per-click, per-user. Why fit an aggregate model when you could watch the individual conversion happen? The budget meetings of the 2010s were won by the dashboard — Chapter 29 covered what that dashboard was actually measuring, and the polite word is "harvest."

What brought MMM back wasn't nostalgia; it was demolition. App tracking transparency, third-party cookie decay, walled gardens closing their logs — user-level measurement lost its fuel supply (Chapter 33 tells that story in full). Attribution starves without the tracked individual. MMM never used one. The technique that couldn't compete with user-level data outlived it.

And the comeback version is not the binder. Modern MMM is Bayesian (priors made explicit, uncertainty shipped with every estimate), open-source (Meta's Robyn, Google's Meridian — the code is public, the priesthood is a GitHub repo), frequent (refreshed monthly or weekly, in-house, as a pipeline rather than a project), and — the part that makes it honest — calibrated against experiments: the geo holdouts of Chapter 29 anchor the model's response curves to ground truth, occasionally and expensively, so the cheap weekly answer inherits some of the expensive answer's credibility. The armistice, operationalized.

📈
Evidence check. Industry surveys through the mid-2020s show MMM adoption climbing steeply after the 2021 tracking changes — most large advertisers now run or commission one, and it keeps ranking among the fastest-growing measurement line items (figures vary by survey; the direction doesn't). The methodology papers behind Robyn and Meridian report the same working finding: models calibrated against lift experiments land materially closer to experimental ground truth than models fit on history alone. And the open-sourcing itself is evidence — a technique leaves the priesthood phase when its arguments move from binders to pull requests.
The answer arrived in a binder.
Big-agency econometrics · mainframes and mad men · 1960s–70s
the moveRegress a year of weekly sales on media weight, price, distribution, and weather — marketing science before anyone called it that.
the machineryPunch cards and a mainframe booked by the hour; one model run per season, one revision if the client argued.
the productAn annual binder of coefficients, delivered by consultants, trusted precisely because nobody could check it.
the limitBy the time the model spoke, the budget it judged was already spent. Right method, wrong clock speed.
Argued about in a notebook, refreshed while you slept.
Open-source Bayesian MMM · Robyn, Meridian & kin · 2026
the moveThe same regression, now Bayesian: priors written down, uncertainty shipped with every coefficient, code public.
the machineryA pipeline, not a project — monthly refresh in-house, response curves versioned like any other artifact.
the anchorLast quarter's geo holdout calibrates the curves — the expensive truth teaching the cheap model, on schedule.
the lessonThe technique didn't change; the cadence and the honesty did. Same math, new metabolism.

5The traps

A comeback this convenient deserves suspicion. Four traps account for most of the ways an MMM goes quietly wrong:

  • Multicollinearity. The model splits credit by finding contrast in the history — weeks where one channel moved and another didn't. Channels spent in lockstep have no contrast to offer: if search and social always rose together, any split of their joint credit fits the data equally well. The math doesn't fail loudly; it just returns one of many possible answers with a straight face. The widget below lets you watch the failure happen.
  • Overfitting a short history. Three years of weekly data is ~156 observations. A model with a dozen channels, each with adstock and saturation knobs, plus controls, can have more effective parameters than that. Enough knobs fit any history — including the noise.
  • Priors doing the talking. Bayesian machinery is honest about uncertainty, but priors are a steering wheel: set a tight prior on a channel's ROI and the "posterior" mostly returns your prior wearing a lab coat. Priors should come from experiments and published benchmarks — not from what the budget owner hopes is true.
  • Calibration as laundering. The deepest trap. Every MMM involves judgment calls — which controls, which adstock ranges, which model of saturation. Each call is defensible; their sum steers the answer. A model tuned until it agrees with the room is the room's opinion, plus error bars.
⚠️
"The model says" is a sentence to distrust. Said honestly, it means: given this data, these structural choices, and these priors, the estimate is… — and the choices belong to people. If nobody in the room can name the judgment calls inside the model, the model isn't laundering uncertainty; it's laundering somebody's preferences. Ask who set the priors the way you'd ask who set the KPI.

The fixes share one shape: give the math contrast it can't hallucinate around. Vary spend on purpose — stagger channel changes so their histories decorrelate (designed variation is cheap; entangled history is forever). Hold out recent time periods and check the model predicts them. And anchor the response curves to Chapter 29's geo experiments, so at least some coefficients are pinned to ground truth rather than to taste.

Interactive · the collinearity trap True effects: search 2.0 · social 1.0 — can the model recover them?
0.20
same true effects, new noise — watch how much the split moves
Drag the correlation up and watch the split come apart while the sum holds.

6From model to decision

A fitted MMM's real output isn't the coefficients — it's the response curves: for each channel, sales as a function of spend, bend included. And a set of response curves turns budget allocation from a negotiation into arithmetic. The rule is one line of calculus: move dollars from flat curves to steep ones until the marginal return is equal everywhere. If the next $10k in video buys three times what the next $10k in search buys, the budget is donating money to the saturated channel — usually the one that's easiest to measure, for exactly Chapter 29's reasons.

This is also where the CFO conversation finally becomes empirical. "We believe in brand" is a posture; "search is past its bend — the next million in, we estimate, returns 0.3× — and video is still on the steep part at 1.9×" is a sentence with numbers in it, wrong in estimable ways, arguable with evidence. Scenario planning falls out for free: cut search 20% in the model and read off the predicted damage — with Section 5's caveats attached, because a counterfactual from observational curves is a forecast, not a fact.

The loop that keeps the whole thing honest: the model recommends, the experiment verifies. Let the MMM propose the reallocation, then test the biggest move as a geo experiment before rolling it out everywhere. Curves you've verified once are worth ten you haven't.

Interactive · the allocator Three response curves, one budget · find the equal-margin split
$240k
60
25
15
Last year's split is weighted toward the channel that's easiest to measure. The curves disagree.
Instant, granular, wrong — but free.
The last-click decade · every budget meeting · ~2010–2020
the pitchWhy model the aggregate when you can watch each conversion? Per-click ROAS, updated hourly, argued to two decimal places.
the winnerWhatever sat closest to the checkout — brand search, retargeting — harvested credit and grew its budget every quarter.
the casualtyEverything slow: the long clock's channels defunded because their effect never fit inside an attribution window.
the tellChapter 29's holdouts kept finding it: dashboards claiming sales that would have happened anyway.
Slower, aggregate, honest — and still standing.
The post-signal budget meeting · 2026
the pitchHere is each channel's response curve, its bend, and the marginal return on the next dollar — with uncertainty attached.
the winnerThe steep parts of the curves, wherever they are — including channels no click ever credited.
the checkThe biggest proposed move ships as a geo test first. The model recommends; the experiment verifies.
the lessonPrecision isn't accuracy. The two-decimal dashboard lost to the honest curve with error bars.

7The stack around the model

Zoom out and MMM is one instrument in a three-part analytics stack, and the parts have different jobs that go wrong when confused:

  • Dashboards report. What happened, at operational speed. They answer "is anything on fire?" — they cannot answer "what caused what," and Chapter 29 showed what happens when they're allowed to pretend.
  • Models recommend. MMM turns history into response curves and curves into proposed budgets. Recommendations, not verdicts — observational math with judgment inside.
  • Experiments verify. The only instrument in the stack that manufactures its own counterfactual. Expensive, occasional, and the reason to believe the other two.

Under the stack, a metric hierarchy keeps score coherent: one north star the business actually banks (revenue, contribution, retained customers), a small set of driver metrics that mechanically feed it (traffic, conversion, basket, frequency — Chapter 26's loop math), and channel KPIs at the bottom, useful for steering and dangerous the moment one is mistaken for the north star. A team optimizing a channel KPI against the north star is Goodhart's law with a media budget.

And the standard that makes all of it worth the payroll: analytics' product is a decision, not a chart. Every recurring report should be able to name the decision it powers and the person who makes it; a chart nobody acts on is inventory, not output. The model earns its keep the day a budget moves because a curve bent — and the day the follow-up geo test confirms the move, the whole stack has done its job: report, recommend, verify.

That's measurement rebuilt on aggregate honesty. The last stop in Part V is the page where all this argued-over traffic finally does something: the landing page, the form, the funnel's last mile — where a percent of a percent is worth a fortune. Conversion, next.

Check yourself

3 questions · instant feedback 0 / 3