Seasonality: MMM's Trickiest Confound Isn't the Calendar

Seasonality: MMM's Trickiest Confound Isn't the Calendar
Every retailer's sales chart has the same silhouette: flat for most of the year, then a cliff upward every December, back down every January. Nobody mistakes that shape for marketing working unusually well in December. It's obviously just Christmas. A model, left to its own devices, isn't so sure. Fed nothing but spend and revenue, it has no innate concept of a calendar, so unless it's told otherwise, some of that December cliff will get credited to whichever channel happened to be spending the most at the time.
Marketing mix models handle the obvious part of this reasonably well. Google's Meridian and Meta's Robyn both build an ordinary seasonal pattern directly into the model as its own separate factor, letting the underlying demand curve bend the way real seasonal demand does, rather than assuming sales are flat except when a channel happens to be spending. That way, when December's spike shows up in the data, the model already has somewhere to put it that isn't "credit whichever channel was loudest."
Budgets follow demand, and that's the harder problem to fix
Controlling for the calendar handles the visible half of the problem. The dangerous half is quieter: marketers don't spend a flat amount every week and let sales do what they do. They spend more when they expect demand to be high. Budget goes up ahead of Black Friday because sales are already expected to rise, not the other way round. That means spend and the true, underlying strength of demand move together, and a model that only sees spend and sales has no clean way to tell how much of the sales lift was caused by the extra spend, and how much was the demand that motivated the extra spend in the first place. This has a name, called endogeneity, and it consistently biases a model's estimate of a channel's return upward, not just randomly, but in the same generous direction every time.
The scale of the distortion can be large. One simulation study found a channel with a true return of 4.2x was estimated at 10.61x by a model with no controls for this at all. Even after adding sensible controls, the estimate only came down to 8.41x, still roughly double the truth. The uncomfortable implication is that adding more control variables narrows this bias but doesn't reliably eliminate it, because the thing actually driving both spend and demand, a buyer's underlying propensity to purchase, is rarely something a model can observe and control for directly.
Different regions rarely chase the same demand the same way
One genuine structural fix is geography. If every region scaled its spend up and down in perfect lockstep with national demand, there would be no way to separate the two. But regions don't. A retailer might push harder in one city than another for reasons that have nothing to do with that city's particular seasonal swing: a local promotion, a store opening, a regional media buy. That mismatch between a region's spend pattern and its demand pattern is exactly the variation a model needs to tell the two apart, which is why breaking data out by region, rather than working from one national total, tends to produce a more trustworthy model.
The other fix doesn't come from better statistics at all. It comes from outside the model entirely. Google now offers Meridian GeoX specifically to let a company run a real geo-level experiment and use the result to calibrate the model's estimates directly, rather than trusting the observational fit alone (Intro to incrementality-based calibration, Meridian). This is the same idea covered in more depth in calibrating MMM with incrementality testing. Seasonality and endogeneity are the clearest illustration of why a model's own internal fit statistics, however good they look, can be improved by actually conducting experiments.
If your own reporting has never separated the Christmas bump from the Christmas budget, that's exactly the kind of question an MMM is built to answer properly. Get in touch with Day1data to find out what's actually driving your seasonal peaks.
FAQ
How does marketing mix modelling account for seasonality? By building trend and seasonal patterns directly into the model as controls, either as a flexible time-varying baseline (Meridian) or as an explicit decomposition of trend, season and holidays run before media effects are estimated (Robyn, via Prophet), so seasonal swings aren't mistaken for media impact.
What is endogeneity in the context of MMM? The technical name for spend and demand moving together. Marketers increase budget when they expect demand to be high, which makes it hard for an observational model to tell how much of a sales lift came from the extra spend versus the demand that prompted it.
Why can't more control variables fully fix this? Because the true confounder is usually something unobservable, like a buyer's underlying propensity to purchase at a given moment. Controls can reduce the bias, but a study of the mechanism found they didn't eliminate it, even when the "right" known controls were included.
Does this mean MMM overstates media effectiveness? It can, if seasonality and demand-driven spend aren't properly controlled for. One cited simulation found an observational estimate more than double the true return even after adding standard controls.
How does geo-level data help? Different regions rarely scale spend in exact lockstep with their own local seasonal demand, and that mismatch gives a model genuine variation to work with. That's part of why breaking data out by region, rather than working from one national total, tends to produce a more trustworthy model.
Is there a way to check the model isn't just fooling itself? Yes. Running a real incrementality experiment and calibrating the model's output against it, which is covered in calibrating MMM with incrementality testing.
Should Black Friday and Christmas be modelled differently from ordinary seasonality? Often yes. Major, one-off calendar events are usually given their own dummy variables rather than folded into a smooth seasonal curve, since their effect on demand doesn't follow the same gradual pattern as the rest of the year.

