Methodology

Unified Marketing Measurement

How mediaROI builds a single measurement, comparable from one channel to the next, that your teams can use to settle a budget without arguing about the method.

3 methods that check each other

One measures everything, one adjusts day to day, one tests reality. When the three agree, you can act.

MMM

Measures the impact of every channel, including TV, print and radio. Updated at the cadence you choose.

Attribution

Your day-to-day results, corrected for last-click bias by the MMM.

MMMAttributionIncrementalityUnifiedMarketingMeasurement

Incrementality

Your geo and conversion lift tests feed the model and correct it against reality.

Explore incrementality →

Individual signal is disappearing. Measurement is changing in nature

Apple and Google tightening the signal, GDPR, the gradual end of third-party cookies: marketing measurement is leaving deterministic models, which tracked every user, for probabilistic models, which explain aggregate volumes.

The consequence: attribution and MMM, long kept apart, are converging. MMM stays holistic: it reads every touchpoint, online, offline, price, promotions, external factors. Attribution stays granular: it reads the conversion path campaign by campaign. The question is no longer which one to pick, but how to make them speak the same language.

That is what Unified Marketing Measurement does: MMM as the reference, attribution recalibrated on it, your incrementality tests to anchor it in reality.

Three roles, one reading

MMM as the long-term source of truth

A statistical model on aggregate data. It models every touchpoint: online and offline media, CRM, promotions, price, exogenous variables. It gives you the baseline and the contribution of each driver. It is the pillar that informs the other two. It is read weekly or monthly, not daily.

Calibrated attribution as the daily tactical reading

Attribution data from your platforms and your analytics tool is what you steer campaigns with. But it suffers from last click, from cookie bias, and it sees neither branding nor offline. mediaROI applies MMM ROAS to it as correction coefficients. The result: a daily, cross-platform attribution consistent with the real contribution of each driver.

Incrementality tests as point-in-time causal measurement

Geo lift, A/B tests, conversion lift: your experiments are the only tool that measures causality in the strict sense. Their limit: they measure one channel in isolation, over one period, not the overall mix. Their results enter the MMM as priors and make it more robust.

Your tests inform the model. The MMM produces the reference. Attribution is recalibrated on the MMM at every update. The more tests you have on correlated drivers, the more cleanly the model separates their contributions.

Sales = baseline + incremental contributions

The MMM breaks your target indicator (revenue, visits, leads, recruitment) into two parts.

The baseline

The share of your sales that would exist without media investment: organic demand, brand equity, repeat purchase, seasonality, market trend, external factors. It is not “what happens if we do nothing”: without investment, the baseline erodes over time.

The contributions

The additional sales generated by each driver beyond the baseline: media, price and promotions, trade, CRM. Contribution is not attribution: contribution is estimated by a probabilistic model at aggregate level, attribution rests on a deterministic approach at individual level.

What the model captures for each driver

  • Adstock : the effect of an investment persists after the flight ends, for longer or shorter depending on the medium. It is modelled driver by driver.
  • Saturation : beyond a certain level, every extra euro returns less. Response curves quantify it and show the return on the next euro invested (marginal ROAS).
  • Short, mid and long-term effects : 7, 30, 90 days and beyond, separated and quantified.
  • Profitability : ROAS for a revenue model, cost per visit for a traffic model, CAC for an acquisition model.

One model per target indicator, at the level of granularity defined together. The results feed the budget simulator: you test a reallocation before you decide it.

An open source engine, a proprietary business layer

Our model runs on an open source Bayesian engine, recognised and audited by the market. We do not reinvent the mathematics. The engine does the computation; everything that makes the result useful is the layer we build around it.

Why Bayesian

Two reasons. First, a Bayesian model accepts priors, informed starting points drawn from our sector experience, your teams’ business knowledge and your incrementality tests. The model then explores freely around those starting points. Second, consistency between updates. The results of the previous model become the prior for the next one. That is what makes recurring measurement possible, monthly if needed, without breaking the reading over time.

What mediaROI adds to the engine

  • A data infrastructure : API connectors with media platforms, a connection to your data warehouses, Excel and Google Sheets imports for sources without an API. Our internal tools clean, map and structure the data for modelling.
  • A business intelligence layer : our reading of adstock by medium, of saturation, of exogenous variables, the integration of your tests as priors, calibrated attribution.
  • A platform for marketers, not only for data scientists : dashboards, a budget simulator, and the mediaAI assistant that answers your questions in plain language.

From model to daily use: calibrated attribution

In Google, your last click CAC reads 10. Once every driver is taken into account, it is closer to 20. Calibrated attribution applies that correction coefficient to your attribution data, campaign by campaign, every day.

Two prerequisites. An MMM updated every month: applying coefficients from a January model in September would produce wrong numbers, and we would rather not offer the module than offer it hollow. And an open analytics tool whose data can be retrieved through an automated export or an API.

Where each tool stops: the MMM gives the fair contribution of each driver and each platform, it does not go down to audience or creative level. Calibrated attribution does go down to the campaign, with numbers recalibrated on real contribution. For day-to-day in-channel optimisation (bids, audiences, formats), your platform tools remain the right ones; the MMM guides allocation across drivers, calibrated attribution guides trade-offs across campaigns.

Your incrementality tests, built into the model

Geo lift, A/B tests, conversion lift: your past and ongoing experiments are not lost. Their result, a lift or a ROAS measured on one driver over one period, shapes the model’s starting point for that driver, with an uncertainty that mirrors the test’s own.

The nuance that matters: we inform the model, we do not force it. It stays free to adjust as the data dictates. The more tests you have on correlated drivers, TV and search for instance, the more cleanly the model separates their contributions.

No black box

90%R² typically observed
5 to 10%MAPE typically observed

Robustness

R² of 90%: the share of your indicator’s variation that the model explains. MAPE of 5 to 10%: the average gap between predicted and actual values. These are orders of magnitude typically observed on our models, not contractual promises.

Transparency

Priors, posteriors, iterations and robustness levels are exposed in a module of the platform. Your data teams can audit the model. The engine is open source and audited by the market.

Co-construction

We invite your data scientists to build the model with us. It is their business knowledge that we combine with our measurement and media expertise. When a variation in sales stays unexplained, we come back to you to identify the missing variable: the model improves with every iteration.

Credible interval

Each coefficient is delivered with its credible interval, the Bayesian equivalent of a confidence interval: the range in which the true value has a 95% chance of lying, given the data and the priors. A wide interval on a channel is not hidden: it signals that the model lacks information, and that is often where an incrementality test adds the most.

What MMM does, and does not do

An honest MMM starts by saying where it stops.

Methodological limits

  • The model needs variance: a driver invested at a perfectly constant level cannot be isolated. Always-on drivers get specific treatment.
  • Strongly correlated variables are grouped in a reasoned way, with your teams.
  • Granularity depends on weight and volume: below roughly 1% of the budget, a driver does not come out on its own. The model architecture adapts.

Usage limits

  • A macro reading of trade-offs, not campaign-by-campaign steering.
  • A weekly or monthly reading, not a daily one. That is the role of calibrated attribution.
  • Complete, quality data as input: collection is industrialised, and the dataset is validated together before modelling.
  • A foundation that needs upkeep: regular updates to follow changes in your offer, your stores and your media.

Four steps, at your pace

  1. 1

    Data collection and preparation

    Internal data (sales, investments, promotions) and external data (weather, public holidays, competition). API connectors for media platforms, a connection to your data warehouses, Excel or Google Sheets imports for sources without an API. Our internal tools clean the data, harmonise granularity and prepare the dataset. You validate it with us before modelling.

  2. 2

    Bayesian modelling

    The model carries uncertainty and complex effects: saturation, adstock, exogenous variables, your priors. One model per target indicator.

  3. 3

    Reading the results

    Robustness, contributions, response curves, short and long-term effects, budget scenario simulations.

  4. 4

    Recommendations and steering

    Reallocation towards the best performing drivers, drivers to push or to reduce. A readout by our marketing scientists, then autonomy for your teams in the platform.

Three weeks between dataset validation and the results readout. Then an update at the cadence you choose: yearly, twice a year, quarterly or monthly. At every update, contributions, saturation curves and recommendations are updated, and the previous model becomes the starting point for the next one.

Glossary

Target indicator
the KPI the model explains (revenue, visits, leads, recruitment). One dedicated model per indicator.
MMM
a statistical model that measures the contribution of every driver to sales, media and non-media.
Baseline
the share of sales that would exist without media investment: organic demand, brand, seasonality, external factors.
Incremental contribution
the additional sales generated by a driver, beyond the baseline.
Adstock
the persistence of an investment’s effect once the flight is over.
Saturation
the diminishing return of a driver as investment grows, modelled by response curves.
Marginal ROAS
the return on the next euro invested in a driver: where each extra euro pays off most.
Prior
knowledge fed into the model before training (tests, past studies) to guide the estimation.
Calibrated attribution
the daily reading of digital platforms, recalibrated on MMM results. Requires a monthly update.
Incrementality tests
geo lift and A/B tests measuring the causal effect of a driver. Their results feed the model as priors.
Update
retraining the model on up-to-date data, at the chosen cadence.
R² and MAPE
R², the share of past variation explained by the model. MAPE, the average prediction error in percent.
FAQ

Frequently asked by data teams

Do saturation curves change with seasonality?
No, and that is deliberate. Between two updates, a driver’s curve stays stable. Seasonality is captured by exogenous variables and by the baseline, not by the curves: the measured media effect stays clean. Curves are re-estimated at every update.
Can we get results by segment (brand, business unit, product universe)?
Yes, by segmenting the models: one segment, one target indicator, one model. The trade-off to weigh: more detail per silo, but less data per silo. It is a scoping question, not a technical blocker.
How are my incrementality tests integrated?
As priors: the test result shapes the model’s starting point for that driver, with the test’s uncertainty. The model is not forced to reproduce it.
Does the simulator give single values or ranges?
Central values, with a colour-coded reliability indicator based on the distance from the investment levels observed in your history. Rather than raw statistical intervals, which are hard to turn into a decision, we translate uncertainty into actionable confidence zones.
What data granularity is needed?
Ideally 24 to 36 months of daily history, weekly otherwise. Weekly data is the prerequisite for a driver to be modelled. Monthly data can serve as a control variable.

Discover the platform

30 minutes to walk through a complete model and ask your questions