What is Google Meridian?
Google Meridian is Google's free, open-source marketing mix model. It estimates what each paid channel added to sales from weekly spend and sales totals, without tracking people. It suits brands with years of data, and its answers lean on priors you or Google set.
By Joris van Huët, Founder & CEOUpdated 7 min read
Google Meridian is Google's free, open-source marketing mix model. It is Python code that estimates what each paid channel added to sales, from weekly spend and sales totals, without tracking anyone. It usually suits brands with a few years of history, several paid channels and someone comfortable running code.
Google calls it an open-source MMM built by Google and says it is free for anyone to use. The code lives on GitHub, and Google's install guide asks for Python 3.11 or 3.12 plus at least one GPU.
You feed it one table. Each row is a week, ideally split by region, holding sales, spend and ad exposure per channel. Promotions and price changes can sit alongside. Google built it to answer three questions. What did each channel return in the past? How do returns change as spend rises? How should the next budget be split?
Under the hood it is a Bayesian model. It starts from priors, ranges of results you believe are plausible, and updates them with your data. It also models the delay between an ad and a sale, and the point where more spend buys less.
The project moved fast this autumn. Version 2.0 landed on 2 September 2026, and 2.1 followed on 17 September. Version 2.0 made JAX the default engine. It also added calibration from incrementality experiments such as Meridian GeoX, Google's open-source geo-experiment tool, plus channel calibration recommendations.
Around the library, Google now lists Meridian Studio, a Google Cloud platform with a point-and-click interface for running many models. A Scenario Planner, in open beta, turns a trained model into an interactive budget report. Inside Google Analytics, Meridian powers cross-channel budgeting only for select Google Analytics 360 properties, in alpha.
What one store's data shows
One store's anonymised GA4 export, 1 January 2024 to 21 August 2026. It holds shares of revenue only: no ad spend, no order counts.
| What the export shows | Share of revenue | Source cell |
|---|---|---|
| Direct, in last click, first click and touched views | 57.7% | Channels sheet, Direct row |
| All channels in the touched view, added up | 110.4% | Channels sheet, Touched column total |
| Journeys with 4 to 9 touches (16.9 days to buy) | 5.4% | Journeys sheet, 4-9 touches row |
| Journeys with 10 or more touches (16.0 days to buy) | 3.0% | Journeys sheet, 10+ touches row |
Every row in that table is an attribution view: revenue split by the labels and paths GA4 recorded. Meridian reads none of it. It needs spend and exposure per channel per week, and this export holds no spend at all. So the file cannot feed the model, but it shows where the model would look differently.
On the Channels sheet, Direct holds 57.7% of revenue in every view. In a path report, that money is credited to no campaign at all. A mix model ignores the label. If a channel's spend rose in some weeks and sales rose with it, Meridian can credit that channel, even for buyers GA4 filed as Direct.
The touched view adds up to 110.4% on the Channels sheet, by design: a journey that touched two channels counts for both. Meridian works from the other end. It starts with total sales, estimates a baseline of what would have sold with no marketing, and splits the rest among channels.
On the Journeys sheet, journeys with 4 to 9 touches took 16.9 days to buy, and journeys with 10 or more took 16.0. That is this store's slowest revenue, and a small share of it: 5.4% and 3.0% on the same sheet. Meridian's default model lets an ad keep working for up to 8 periods after it runs, which is 8 weeks on weekly data. Judged on days to buy alone, this store's slowest journeys finish well inside that window.
What the export cannot show is any channel's return. That needs spend data, and then a model or a test.
Why does the usual answer mislead?
The usual answer says Meridian is Google's free model that tells you each channel's true ROI. Free is right. True ROI is a stretch, for three reasons.
Part of every answer is the prior. Google calls Meridian's default priors moderately informative. The default ROI prior says, before any data arrives, that half of channels return more than 1.22 per unit spent. Where a channel's data carries little information, Google's health checks note that the prior and the posterior will be similar. Low-spend channels are the most exposed. So a small channel's ROI can be your starting guess, handed back with decimals.
Google's own version brings Google's priors. In Google Analytics 360, the Meridian-based budgeting model uses incrementality estimates from conversion lift studies and industry benchmarks. Those are Google's beliefs about channels in general, not yours. The same page calls its outputs guidance rather than guarantees.
A good fit does not make it right. Google's Scenario Planner guide says goodness-of-fit metrics don't give a complete picture for causal inference. The model also has to estimate a baseline nobody observed, so the best fit and the best causal answer can differ. Meridian's health score runs from 0 to 100, and Google treats 90 or more as fit for decisions. Even then, Google says to read the scores as directional.
What can Meridian not tell you?
- Which campaign worked. Google's FAQ notes that media can often be split by campaign, but sales cannot. Meridian answers at channel level.
- Whether two channels help each other. Asked whether channels boost each other, Google's FAQ answers that Meridian doesn't support this kind of analysis.
- What organic posts did, in Google Analytics. GA4's Meridian-based budgeting covers paid channels only. The open-source library can model organic media, if you supply it.
- Anything without its assumptions. Google's FAQ says observational methods like MMM rely on assumptions to estimate incremental impact. Experiments such as GeoX are how you check them.
What to do this week
- Set the bar before the model speaks. In Shopify, go to Analytics > Reports, click Profit Margin and open Profit margin by order. Divide 1 by your margin to get the ROI a channel must clear. Pass: one number that finance signs off. Fail: no cost per item recorded, so add costs under Products first.
- Count your weekly history. In Shopify, go to Analytics > Reports, click Orders and open Orders over time. Set the time unit to week in the Dimensions menu. Pass: two years or more of weekly rows, the floor GA4's Meridian budgeting asks for. Fail: less, so keep collecting and test one channel meanwhile.
- See what Google already runs for you. In GA4, select Advertising, then under Budgeting click Scenarios. Pass: you can create a plan, and on a Google Analytics 360 property in the alpha it may run on Meridian. Fail: no Budgeting menu, so Meridian means running Google's open-source code yourself.
Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework
Sources, 1 October 2026: An introduction to Meridian (Google); Install Meridian (Google); Collect and organize your data (Google); Meridian changelog (Google, on GitHub); Meridian GeoX (Google); Meridian Studio (Google); Meridian Scenario Planner (Open Beta) (Google); About cross-channel budgeting (Google); Meridian-based budgeting (alpha) (Google); Configure the model (Google); Set the max_lag parameter (Google); Calibrate treatment priors (Google); Default prior distributions (Google); Model health checks (Google); Model health score (Google); FAQs (Google); Use MMM Data Platform (Google); Profit reports (Shopify); Order reports (Shopify); Setting and comparing time ranges for your reports (Shopify)
Related answers
Frequently asked questions
Does Google see my data if I run Meridian?
Not by Google's account. Its FAQ says Google won't access your input data, model or results, apart from Google media data you request from its MMM Data Platform. Your inputs and outputs stay private unless you choose to share them.Does Meridian favour Google's own channels?
The code is open, so anyone can check how it treats each channel. The inputs are uneven, though: Google's MMM Data Platform offers reach and frequency only for YouTube, plus Google Query Volume. Bring comparable data for other channels and set priors you can defend.What changed in Meridian 2.0?
Released on 2 September 2026, version 2.0 made JAX the default backend. It added prior calibration from incrementality experiments such as Meridian GeoX, plus channel calibration recommendations. Version 2.1 followed on 17 September 2026.
Go deeper: Causal attribution, explained.
Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.
Keep reading
Terms in this article
- AttributionAttribution identifies user actions that contribute to a desired outcome and assigns value to each. It reveals which marketing touchpoints drive conversions.
- Bayesian InferenceBayesian Inference updates the probability of a hypothesis based on new evidence. It refines marketing attribution by incorporating prior beliefs about channel effectiveness.
- Causal InferenceCausal Inference determines the independent, actual effect of a phenomenon within a system, identifying true cause-and-effect relationships.
- Google AnalyticsGoogle Analytics is a web analytics service that tracks and reports website traffic.
- IncrementalityIncrementality measures the true causal impact of a marketing campaign. It quantifies the additional conversions or revenue directly from that activity.
- Marketing MixThe marketing mix is the set of actions a company uses to promote its brand or product. It traditionally includes product, price, place, and promotion.
- Marketing Mix ModelingMarketing Mix Modeling (MMM) is a statistical analysis that estimates the impact of marketing and advertising campaigns on sales. It quantifies each channel's contribution to sales.
- Profit MarginProfit margin measures profitability, calculated as net income divided by revenue and expressed as a percentage.