Adstock and Saturation, Intuitively
Track 0 - MMM in 60 Minutes · Module 0.2
PM / everyone
Course home
Learning ObjectivesModule 0.2 · ~15 min · interactive
Explain in plain language why media effect lags and decays after a burst (adstock).
Explain why doubling spend rarely doubles sales (saturation) - no formulas required.
Connect the two ideas to the program's config vocabulary: alpha (decay) and beta (saturation shape).
Two ideas that carry half of MMM

A TV burst does not stop working the day it goes off air. People remember the ad, talk about it, and buy the brand next week and the week after - fading a little each week. Adstock is the modelling trick that spreads a week's media weight forward in time with a decay. The convenient handle on the decay is its half-life: the number of weeks it takes for the effect to fall to half. Search clicks convert in hours, so search gets a short half-life; a brand-building TV campaign can carry a half-life of several weeks.

The second idea: audiences run out. The first spend reaches your most reachable, most persuadable customers; each extra unit of spend reaches people who are harder to win. So the response to spend is a curve that rises steeply, then bends and flattens - saturation, described in this program by a Hill curve (an S-shaped function borrowed from pharmacology's dose-response work). Past the bend, each extra dollar buys visibly less.

Play with both below. Everything downstream - ROI vs mROI, response curves, the optimizer - is these two pictures wearing more math.

Adstock: media effect outlives the burst
Synthetic weekly spend, one channel, 52 weeks. Drag the half-life.
2.0 wk
Raw spend (bars)
Adstocked spend (what the model sees)
What to notice
With a short half-life the blue line hugs the bars: the effect dies quickly (typical for search or performance media). Stretch the half-life and the line keeps riding long after each burst ends: memory-building channels like TV behave this way. The decay rate is the alpha parameter in this program's config.
Saturation: doubling spend rarely doubles sales
Hill curve. Drag the shape and the half-saturation point.
2.0
$25k
Response (incremental sales)
If response were linear
What to notice
Early dollars earn the steep part of the curve; past the bend each extra dollar buys less. The bend is where marginal ROI starts falling, and it is why the optimizer in Track 3.3 moves money away from saturated channels. The curve's shape is the beta parameter family in this program's config.
The program's vocabulary for this

In this program's production model config (a YAML file you will meet properly in modules 1.5 and 2.6), each platform category carries its own alpha candidates - the adstock carryover rate - and beta parameters shaping the Hill saturation curve. The config encodes exactly the industry intuition you just dragged through: TV-like channels get slow-decay alphas, search and performance channels get fast-decay ones. The glossary entries behind this module (Pre-Read slide 8) define adstock, lag effect, saturation, elasticity, and response curve in one table - worth a bookmark.

Why this module exists
No source document in the training pack actually plots a decay or saturation curve - the glossary defines the words and stops. The interactive above supplies the missing picture. If a chart in a client deck ever confuses you, come back here first.
Sources
Authored from:
  • UL_Rapid ROI_Pre-Read_Document 1.pptx slide 8 (glossary: Adstock, Lag effect, Saturation, Elasticity, Response curve)
  • MathCo Methodology Understanding_UL.xlsx sheet Glossary (cross-validates the deck)
  • External: Broadbent's original adstock concept (1979); Meta Robyn's public documentation of geometric vs Weibull adstock (this program uses the geometric form); the Hill equation's marketing-science adaptations as documented in Google Meridian and Meta Robyn open-source docs
Chart data is synthetic (52 fabricated weeks, fixed seed) - no relation to any real channel.