Promotions and advertising run in the same weeks. The sale is announced with a TV flight, the discount is pushed through paid social, Black Friday gets the biggest budget of the year. So when sales jump, every method that counts touchpoints gives the credit to the advertising, and every finance team suspects the discount did the work. Separating the two is one of the questions marketing mix modelling exists to answer, and one of the places where a careless model gives a confident wrong answer. This guide covers how promotions enter the model, what the model needs in order to separate them from advertising, and what the result lets you decide.
Promotions are not a channel. The large, dated ones (Black Friday, the January sale, a launch offer) enter the model as events, with a window as narrow as the visible effect. A promotion calendar as a continuous variable, with depth and reach, enters only with a causal argument, because promotions move with the marketing plan and change how advertising performs, and a plain control that does both biases every channel estimate. Whichever way they enter, the model can only separate promotions from advertising if the history contains weeks where one ran without the other. If it does not, the plan has to create them.
The obvious fix is to add the promotion calendar as a control variable and let the model sort it out. It often makes things worse, for a reason that is specific to promotions. A control is supposed to be outside the system: it moves sales but is not moved by marketing and does not change how marketing works. Promotions fail both tests at once. The discount is scheduled with the media plan, so the two move together. And the discount changes how the ads perform: a TV spot that announces 30 percent off converts differently from the same spot without the offer. Treat that as a neutral control and the model splits the credit by an assumption it cannot check, with a Bayesian stamp on it.
There is a second test: will the model know the variable's value next quarter? A model that forecasts the next period cannot contain a variable it cannot see in the next period. A promotion calendar that is decided month by month fails that test; one that is planned a year ahead passes it.
So the question is not whether promotions are in the model, but in what form, and with what justification. The full guide to marketing mix modelling covers the baseline and the controls in general; this guide is about promotions specifically.
| Promotion | Enters the model as | What the model needs | The risk if it is wrong |
|---|---|---|---|
| Black Friday, the January sale, a launch offer | A dated event with a narrow window | The dates, and a window no wider than the visible spike | Folded into seasonality, the spike is smeared over the weeks around it and under-counted |
| Weekly promotions set by category managers (grocery, FMCG) | A control with depth and reach, with a causal argument | Depth, mechanic, share of range or stores, dates, planned ahead | As a plain control it absorbs variance that belongs to advertising, or the reverse |
| Price changes | Price as a driver, where it is set independently of media | Weekly price index per market | Price that moves with the media plan biases the channel estimates |
| Ad hoc discounts pushed through paid social | Usually nothing; the effect reads as part of the channel that carried it | A note in the model, and a plan to vary them | Credited to paid social as if the creative did it |
| Competitor promotions | An event when they are large and known; otherwise left out | Dates from the market team | An event for every unexplained dip removes variance from the channels |
The row for weekly promotions deserves the causal argument spelled out, because it is the one exception to "leave it out". In grocery and FMCG the promotion calendar is set by category managers against the retailer's cycle, planned months ahead, and known in the forecast period. It is large, it is not steered by the media plan, and the model cannot explain sales without it. That is the argument. Where it holds, depth and reach go in. Where it does not, the promotion stays out and the fit is checked to see whether anything was lost. "It improves the fit" is not, on its own, a reason to add it.
However promotions enter, the model separates them from advertising the same way it separates any two things: by how they move relative to each other over the history. If every advertising flight carried a promotion and every promotion had a flight behind it, the two moved as one and no model can split them. The result then comes from the priors, and a good vendor shows you a wide range rather than a midpoint.
What creates separation:
Black Friday is where the model is most often fooled
If TV only ever airs in Black Friday week, the model cannot separate the TV effect from the Black Friday effect. Either accept that the prior decides and say so in the deck, or plan a TV flight in a quiet week. The same holds for any channel that only shows up when the discount does. One structured test outside the sale period settles what years of sale-period data cannot.
With the promotions in the model properly, the decomposition of a sales week shows baseline, the promotion event, each channel's contribution and the carry-over from earlier weeks, with a confidence range on each. Three decisions follow from it.
What the model will not say is whether a specific discount was the right depth. That is a pricing decision, with its own evidence. The model tells you what the promotion did to sales and what advertising did around it.
Odins builds and runs the model: a sparse baseline, the large promotions as dated events, a promotion calendar only where the causal argument holds, and a confidence range on every number. Companies like CDON, Nettbil, Hyre and Megaflis run their marketing budgets on it.
Yes, when the history contains weeks where one ran without the other and the promotions are in the model in the right form. When advertising and promotions have always coincided, no method can separate them from the data alone, and the honest answer is a range and a planned test.
Large, dated promotions should be events with a narrow window. A continuous promotion calendar with depth and reach belongs in the model only where it is set independently of the media plan and known ahead, as in grocery. As a plain control elsewhere, it biases the channel estimates.
Through the event's contribution in the decomposition, net of the dip in the weeks after. Compare that with the margin given away. A model that ignores the dip overstates every promotion.
Tools that let promotions enter with depth and reach, model the baseline conservatively, and say when the promotion and advertising effects cannot be told apart. Our guide to MMM by business model covers grocery and other promotion-driven businesses.
Often, and the model can show it where the history has sale periods with and without heavy advertising. Where it has not, the interaction is an assumption, and a planned flight in a quiet week is how you find out.
Read the complete guide to marketing mix modelling, see how recommendations and structured tests work, or book a demo and bring your promotion calendar.