Adstock: choosing a media memory compatible with the observed mechanism.

SUPPORTED DECISIONKeep a media memory only if its profile improves out-of-sample validation without creating a lasting effect incompatible with operational reality.

Directly verifiable evidence

Primary sources to check the key claims.

  1. Meridian, model configuration (opens in a new tab)

    Adstock specification, lags and model parameters.

Key distinctions

Three conditions before calculating.

01

A non-causal stock

Adstock is a structural transformation, not proof of an effect. A long memory can absorb trend, seasonality or competitive activity when those factors are poorly controlled.

02

Time scale

A weekly parameter does not transpose directly to daily data. Half-life, peak and area must be expressed in the time unit of the dataset.

03

Channel mechanism

Brand search, television, promotion and CRM do not share the same dynamics. Imposing a common kernel simplifies the model but can distort the contributions.

Method

Estimating a memory without letting the model invent the past

  1. 01Plot the impulse

    Compare immediate weight, week of the peak, half-life and mass after four or eight weeks for each kernel family.

  2. 02Bound the parameters

    Define ranges informed by campaign duration, purchase frequency, tests and media knowledge; the bounds must be published before optimisation.

  3. 03Validate out of period

    Test whether the kernel predicts the periods of variation and keeps plausible contributions — a better internal fit is not enough.

  4. 04Test the confounders

    Re-estimate with alternative trends, seasonalities and events; a half-life that collapses indicates that adstock was capturing an omitted factor.

ORIGINAL ASSET

Three responses to the same media impulse

A one-off spend of 100 is propagated over eight weeks by three kernels. Area, peak and half-life make the assumptions comparable.

W0W1W2W3W4W5W6W7
Geometric 0.3
10030931000
Geometric 0.6
10060362213853
Delayed Weibull
2872100784925103
θ = 0.6Half-life 1.36 weeks
MASS250 transformed units
CSVDownload adstock kernels↓
ILLUSTRATIVE EXAMPLE · SIMULATED DATA

A retention of 0.6 implies a half-life of 1.36 weeks

01 · SITUATION

A geometric adstock is defined by Aₜ = Xₜ + 0.6 × Aₜ₋₁. An impulse of 100 produces 100, 60, 36, 21.6 then 13 units.

02 · CALCULATION

Half-life = ln(0.5) ÷ ln(0.6) = 1.36 weeks. The total theoretical mass is 100 ÷ (1 − 0.6) = 250 units of transformed exposure.

03 · DECISION

The parameter is acceptable for a short effect. An estimate of 0.9, that is a half-life of 6.58 weeks, would require strong evidence and tests against the trend.

Acceptance conditions

What must be true to act.

  1. 01

    Half-life, week of the peak and area are published for each channel.

  2. 02

    Parameter ranges are justified before fitting.

  3. 03

    The kernel improves out-of-sample validation and not only the fit.

  4. 04

    Stability is tested against several trend and season controls.

Limits

What this analysis does not prove.

  • Aggregate data identifies adstock, saturation and seasonality simultaneously only with difficulty.
  • A weekly kernel often mixes several creatives and delivery strategies.
  • A short experiment informs the long-run tail imperfectly.

References

Works cited.

  1. Koyck, L. M. (1954), Distributed Lags and Investment Analysis.
  2. Broadbent, S. (1979), One Way TV Advertisements Work.
  3. Jin, Y. et al. (2017), “Bayesian Methods for Media Mix Modeling with Carryover and Shape Effects”.