Carryover (Adstock) Functional Forms

Summary

The adstock transformation captures advertising’s carryover (lag) effect by replacing current spend with a finite, normalized weighted average of current and past spend over periods. Jin et al. give two weight functions: geometric decay (effect peaks at the exposure period and decays by a retention rate ) and delayed adstock (effect peaks periods later, a Gaussian-shaped radial kernel). Geometric adstock is the continuous analog of the Koyck distributed lag.

Overview

Some media build effect immediately (peak at exposure); others (e.g. brand TV) take time to peak. The adstock function transforms the raw spend time series so the regression sees the cumulative media effect rather than instantaneous spend. The maximum carryover duration truncates the window; for the chosen simulation parameters weeks approximates infinity (weights beyond 13 weeks), and is also used in the real-data application.

Choosing (Sec. 2.1, p. 3)

The paper gives three pieces of guidance on the window length:

  1. could differ by medium, but “for simplicity we use a common L for all media”. A per-medium is a legitimate extension the paper does not pursue.
  2. Prior knowledge of helps: “A properly chosen L can help with estimating the weights in the adstock transformation.” A window that matches the true carryover duration removes lags that carry no signal, which reduces the room for the weight parameters (, ) to fit noise. In the delayed form it also bounds , so sets the support of the delay prior (uniform in the Stan code).
  3. Without prior information, set very large “as an approximation to infinity, so the weights for are close to zero”. With the Table 1 parameters, already meets this (weights below beyond 13 weeks).

Point 2 also means is a researcher degree of freedom: different windows give different adstock fits from the same data. See Researcher Degrees of Freedom.

Main Content

Adstock transformation (finite-window, normalized)

where is spend of channel at week , is a weight function, is the maximum carryover duration (common across media for simplicity). The denominator normalizes the weights so adstock is a proper weighted average (preserving the spend scale). A large approximates an infinite window. (Eq. 1)

Geometric decay weights

is the retention rate of the ad effect from one period to the next. The effect peaks at the same period as the exposure () and decays geometrically. This is the discrete geometric distributed lag — the marketing analog of the Koyck lag (see Carryover Effects and Distributed Lags). (Eq. 2)

Delayed (peak) adstock weights

is the delay of the peak effect: the weight is maximized at lag rather than at . The form is proportional to a normal density with mean and variance — equivalently the radial (Gaussian) kernel used in local regression (Friedman, Hastie & Tibshirani 2009, p. 212). Other delayed forms (e.g. negative-binomial density, Hanssens et al. 2003) work too. (Eq. 3)

Delayed adstock does not nest geometric adstock

Some summaries say that setting in Eq. 3 gives Eq. 2. It does not:

With zero delay, the delayed kernel is a half-Gaussian in : it peaks at but falls off like , much faster than the exponential decay of the geometric form. For the lag-2 weight is against , and the lag-3 weight is against . The two families share the parameter but are non-nested specifications. In Sec. 8 the shampoo Models III/IV (geometric) are separate model forms compared by BIC, not restricted versions of Models I/II (delayed) with the delay fixed at 0. Read differently in each: in Eq. 2 it is a one-period retention rate, while in Eq. 3 it sets the kernel width (variance ). See also ^code-map for the code change needed to fit the geometric form.

Figure 1 — the two weight functions at (p. 4)

Figure 1 plots the unnormalised weights against lag (axis 0 to about 19; y-axis 0-1). The black line is geometric with . The red line is delayed with the same and . Values computed from Eqs. 2-3 (my computation; the paper gives only the plot):

lag 0123456781013
geometric 1.000.800.640.510.410.330.260.210.170.110.055
delayed 0.0040.0280.130.410.801.000.800.410.130.004~

Geometric adstock decays monotonically from lag 0. Delayed adstock is a symmetric bell centred on lag 5: it is almost zero at lags 0-1, rises to its peak at lag 5, and is almost zero again by lag 10. A delayed medium therefore puts nearly all of its weight on spend from 3-7 weeks earlier, while a geometric medium puts most weight on the most recent weeks. Note also that the geometric tail at is still about 0.05 at lag 13. The paper’s ” is a good approximation to infinity” claim (weights below beyond 13 weeks) refers to the Table 1 delayed-adstock parameters, whose Gaussian tails die out far faster.

Examples

Simulation generating parameters (Sec. 5, Table 1)

The simulated dataset uses delayed adstock. Per-media: retention , delay for Media 1/2/3, with . Estimation recovery (Sec. 6): the delay is estimated with low bias and only moderate uncertainty even in small samples, while shows somewhat more bias/uncertainty in small samples but is precise for large samples. Adstock parameters are recovered better for stronger-signal media (Media 1, 2) than the weak Media 3.

Real-data preference for geometric adstock (Sec. 8)

In the shampoo application the delay is not estimated well in either Model I or Model II (Fig. 16: Model I’s posterior is bimodal, Model II’s is nearly flat like its uniform prior), so the authors prefer the simpler geometric adstock. The delayed form also barely changes the likelihood (Table 9: negative log-likelihood 98.12 for Model I vs 98.06 for Model III). See MMM Model Selection and Application.

Connections

See Also