Marketing Science
Why Marketing Mix Modeling Is Having a Renaissance
Zhen Ma · April 8, 2026 · 4 min read
Marketing measurement is broken. Not in the sense that the tools are bad — they’re more sophisticated than ever — but in the sense that the underlying model is wrong. The dominant paradigm for the last decade was last-touch attribution: find the pixel that fired closest to the conversion and hand it the credit. It was cheap, it was fast, and it felt precise.
It was also largely fiction.
The Attribution Illusion
Last-touch attribution is a story we tell ourselves. It credits the channel that happened to be in the right place at the right moment, ignoring everything that moved the buyer through the funnel before that final click. If someone spent six weeks reading your content, saw two display ads, and then converted after clicking a branded search ad, Google Search gets 100% of the credit. Your content team gets nothing.
This mattered less when data was abundant. Cross-site tracking meant you could at least see the full journey. But the privacy reckoning — Safari’s ITP, iOS 14, the end of third-party cookies — has stripped away the signal. Today, a substantial fraction of conversions happen in dark social or arrive with no referrer. Your MTA model is working with a dataset that’s missing 30–50% of the picture.
What MMM Gets Right
Marketing Mix Modeling takes a different approach. Instead of tracking individual users, it works at the aggregate level: it looks at your spend across channels over time, correlates it with outcomes (revenue, leads, conversions), and builds a statistical model of how each channel contributes.
This approach has three properties that make it durable:
-
Privacy-native by design. MMM works on aggregated data. There’s no user-level tracking required, no cookies, no device fingerprinting. It works exactly the same in a cookieless world as it did in 2015.
-
Captures long-term effects. Channels like TV, podcasts, and organic content have effects that unfold over weeks or months. MMM’s adstock and saturation curves model this lag and decay explicitly — something pixel-based attribution can never do.
-
Cross-channel fairness. Because MMM builds a joint model across all your channels simultaneously, it can correctly attribute the baseline lift from brand awareness to the right channels, rather than over-crediting the last click.
The Catch: Complexity
The reason MMM hasn’t been universal is that it’s hard. Traditional implementations required a data scientist with econometrics expertise, weeks of modeling time, and bespoke Python notebooks that only one person on the team could actually run. When your model lives in a Jupyter notebook, it’s not a product — it’s a science project.
This is exactly the problem Marginal solves.
# Traditional MMM: dozens of lines of custom Stan/PyMC3 code
# Marginal: upload your CSV, configure your channels, run
import marginal
model = marginal.Model.from_csv("media_spend.csv")
model.fit()
results = model.optimize(budget=500_000)
print(results.allocation)
# {"paid_search": 0.28, "paid_social": 0.31, "display": 0.12, ...}
Marginal wraps Google’s Meridian — the state-of-the-art open-source MMM library — in a product layer that handles data ingestion, model configuration, run management, and results interpretation. You don’t need to know what an adstock decay rate is to use it. You need to know your budget.
What Comes Next
Over the next few weeks we’ll be writing about the specific modeling decisions that go into a production MMM: how to handle seasonality, how to set priors for new channels, and how to sanity-check your model against held-out data. If you’re currently running attribution in GA4 or a MTA tool and wondering whether MMM is worth exploring, start with our product page — it walks through how Marginal handles each of these decisions for you.
The measurement renaissance is real. The teams that figure this out first will make better budget decisions for years.