Marketing mix modelling guides | Odins

Price Promotions vs Advertising in MMM | Odins

Written by Odins | Oct 7, 2026, 5:03:55 PM

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.

The short answer

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.

Promotion weeks and advertising weeks: what separates themWeek 1Week 20Price promotion-20%-20%-20%-20%-20%Advertisingadvertising without a promotion:the weeks that separate the twoSalesPromotions and advertising usually run in the same weeks. The model separates them only if the promotion is inthe model as a control, with its depth, and the history has weeks where one ran without the other. Otherwise thechannel that ran gets the promotion's credit.

Why this is harder than adding a control

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.

How promotions enter the model

PromotionEnters the model asWhat the model needsThe risk if it is wrong
Black Friday, the January sale, a launch offerA dated event with a narrow windowThe dates, and a window no wider than the visible spikeFolded 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 argumentDepth, mechanic, share of range or stores, dates, planned aheadAs a plain control it absorbs variance that belongs to advertising, or the reverse
Price changesPrice as a driver, where it is set independently of mediaWeekly price index per marketPrice that moves with the media plan biases the channel estimates
Ad hoc discounts pushed through paid socialUsually nothing; the effect reads as part of the channel that carried itA note in the model, and a plan to vary themCredited to paid social as if the creative did it
Competitor promotionsAn event when they are large and known; otherwise left outDates from the market teamAn 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.

What the model needs in order to separate them

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:

  • Advertising weeks without a promotion. A flight that runs on the brand or the range, with no offer, in the weeks between sales periods. Two or three of those a year give the model the advertising effect on its own.
  • Promotion weeks with little advertising. A member offer or a retailer feature that runs without media support shows the promotion effect on its own.
  • Varying depth. A sale at 20 percent one year and 30 percent the next, with similar media, tells the model what depth does.
  • The dip after. Promotions pull purchases forward. The weeks after a sale often run below baseline, and the model should be allowed to see that rather than crediting the dip to whatever channel paused.

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.

What the result lets you decide

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 sale actually added. The event's contribution, net of the dip that followed, against the margin given away. Finance has usually never seen this number.
  • What advertising added on top. The channels' contributions in sale weeks compared with their contributions in ordinary weeks. Where the model can read the interaction, it will show whether advertising lifts a promotion or merely coincides with it.
  • Where the next unit of budget goes. Each channel's marginal return, read on its own curve rather than inflated by the promotion weeks it happened to run in.

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.

Questions to ask a vendor

  • How do promotions enter your model: as events, as controls, or not at all? What decides?
  • Do you treat price and discount depth as neutral controls? Why is that safe for our business?
  • What happens when advertising and promotions always run together? Will you show the range?
  • Can the model see the dip after a sale, and does the forecast include planned promotions?
  • Will you tell me when a promotion variable was added because it improved the fit rather than because it belonged?

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.

Frequently asked questions

Can MMM separate price promotions from advertising?

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.

Should promotions be a control variable?

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.

How do we measure the effect of a discount on sales?

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.

Which MMM tools suit a grocery retailer with weekly promotions?

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.

Does advertising work better during a promotion?

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.