Just over a week ago, Google introduced Meridian, a new model to the family of open-source media mix models, which also includes Facebook's Robyn and LightweightMMM.
We have been testing Meridian for the past week, and in this article, we provide you with our findings.
Bayesian Statistics
Meridian makes use of Bayesian statistics, which is widely applied in science, marketing, and artificial intelligence. It helps make better predictions by continuously incorporating new information and improving existing assumptions.
How does this work in simple terms?
Imagine you have a large jar filled with marbles, but you don’t know how many red and blue marbles are inside. You want to find a smart way to estimate the distribution without counting all the marbles. What do you do?
Step 1: Use Prior Knowledge as a Starting Point
You could take a quick look and guess that there are 50 red and 50 blue marbles. However, a better approach is to start with an assumption:
"Most jars I’ve seen before contained 70 red and 30 blue marbles. So, it’s likely that this one is similar." This is your prior knowledge—an initial estimate based on previous data.
Meridian applies this principle by using historical data from marketing channels:
"From previous analyses, we know that Google Ads account for an average of 40% of revenue, while email marketing contributes 30%." This prior knowledge serves as input for the model.
Another prior is the Hill function, which incorporates knowledge about the saturation of advertising campaigns into the model. When initiating a new model, Meridian leverages historical patterns as a starting point. So, even if you have limited data, Meridian begins with a reasonable estimate of how quickly your advertising budget saturates across specific channels.
Step 2: Incorporate Experiments
For marbles, you might draw 10 at random and find that 7 are red. This new information helps refine your estimate. Repeating this process multiple times provides a clearer picture.
Many companies conduct experiments such as Geo Lift tests or Conversion Lift studies. This involves temporarily increasing or decreasing spending on a specific channel to measure the incremental revenue impact.
If past experiments show that Facebook Ads saturate quickly for a particular business, Meridian integrates this knowledge into its initial estimate. This prevents the model from attributing unrealistic effects to additional budget allocations.
Step 3: Add Context
By studying the marble market, you discover that red marbles are made from scarcer materials than blue ones, leading manufacturers to minimize their use. This is crucial information!
Similarly, Meridian allows the inclusion of market context. You can incorporate total market revenue or competitor data (if available). Additionally, you can add indicators such as search volume trends as a measure of market demand. Whether you input trends or actual numbers, the model can process both.
You can also model your brand’s search volume. If Meridian detects an increase in search volume without additional advertising, it can infer that the channel might saturate more quickly.
Moreover, promotional activities, such as discount codes or sales events, can be integrated. Since these impact conversion rates, feeding this information into Meridian ensures a more accurate model.
Step 4: Iterate and Continue Learning
Run the model, analyze the results, and compare them to historical data from previous marble jars. If discrepancies arise, adjust the model and rerun it until you achieve an optimal fit.
This is exactly how Meridian functions—it continuously tests its predictions against media channel input and revenue data until it finds an optimal fit. The result is a reliable model for refining media investments.
Geo Modeling
One of Meridian’s key new features is its ability to model using geographic/regional data. By leveraging data from different regions, the model gains better validation and refinement capabilities.
Previously mentioned Geo Lift tests can be incorporated in detail. By modeling impressions, costs, and revenue at a regional level (e.g., by province), the model can observe variations when channels are switched on or off.
Meridian in Practice
Step 1: Setting Up the Infrastructure
We have been using Meridian for a week. It runs on Python and can operate within any infrastructure that supports Python, such as a Colab Enterprise notebook in Google Cloud.
To avoid time-intensive modeling, it’s best to run it on a machine with a fast GPU. We successfully processed models for clients with broad media investments and extensive historical data using an Nvidia Tesla T4 GPU, completing runs in just over ten minutes.
Step 2: Collecting and Preparing Data
Reliable data is essential for generating valuable model outputs—the model is only as good as the data it receives.
To create high-quality input, various data sources are combined, such as:
Sales, revenue, and margin data from the backend
Impressions, costs, and clicks from online channels (e.g., segmenting campaigns like Awareness, Prospecting, and Sales for Facebook Ads)
Reach and frequency of offline channels
Promotion data, including discount codes and sales events
Market and competitor revenue data, which can include search volume trends as an indicator of demand
It’s crucial to categorize data by region and standardize definitions across sources while also adjusting for vacation regions or merging smaller regions.
Of course, you could collect and prepare the data from scratch for every analysis. However, this is time-consuming and prone to errors. A more efficient solution is to build an automated data transformation within your Marketing Data Hub or Data Warehouse—where this data is already available—to systematically feed Meridian. This saves time and minimizes errors. Learn more in our previous article: How to Build a Marketing Data Hub – The Modern Data Stack for Marketing.
Step 3: Incorporating Geo Lift Tests or Conversion Lift Studies
Meridian allows you to assign a unique ROI prior to each channel. The best input sources are Geo Lift tests or Conversion Lift studies that provide incremental revenue (or margin) insights.
For our test cases, we had conducted these studies for online channels but not for offline channels. As a result, the offline channel analysis was less reliable, reinforcing the need for future tests.
When estimating ROI, it’s important to differentiate between channels based on Reach & Frequency versus direct response ads. For example, TV ads function differently from Google Ads since TV requires repeated exposure before prompting action. Meridian accounts for this with specific roi_rf
and beta_rf
parameters.
Step 4: Adding Other Priors
Meridian allows additional priors (or defaults if unspecified). Examples include:
Hill_before_adstock:
Determines whether to apply Hill saturation before Adstock effectsUnique_sigma_for_each_geo
:
Specifies whether regions should be combinedBaseline_geo
:
Sets a baseline region for stabilityMax_lag
:
Defines how long an ad can continue to impact results, depending on campaign type and data granularity (weekly vs. daily data)
To avoid overfitting (where the model learns too well on past data but performs poorly on new data), you can configure training and test data using the ‘holdout_id’ and ‘test_pct’ parameters.
Step 5: Running the Analyzer
After data preparation and prior configuration, the first model run is the analyzer.
Upon completion, the model provides a report with key insights. If configured correctly, results should align with expectations, providing a strong representation of the input data. One of the key features is that incremental margin, revenue or conversions (depending on your input) are calculated.

Step 6: Running the Optimizer
Next, the optimizer is run.
This generates a report with optimization scenarios, recommending an optimal budget allocation to maximize incremental revenue, margin, or conversions. For example, in a dummy dataset test, the model suggested reducing spend on Google while reallocating budgets to Meta Ads and Outdoor. This way, the advertiser - with an equal budget - could realize an increase of 343k in incremental revenue.

Meridian as an Addition to Your Attribution and Budget Optimization Strategy
If sufficient data is available, it is reliable, and priors are well-defined, Meridian offers valuable insights for attribution and budget optimization strategies. However, it doesn’t tell the whole story.
Since the model only processes the data provided, it lacks holistic market context. For example, while it may recommend increasing Meta Ads spend, it doesn’t account for the dynamics in all the campaign layers (Touch, Tell, Sell for example), competition dynamics, or cost increases from auction-based pricing.
Additionally, it doesn’t measure user-level behavior and cross-channel overlaps, which Multi-Touch Attribution can capture.
In a robust attribution and budget optimization strategy, a tool like Meridian plays a crucial role. At Turntwo, we call this approach Triangulation, and Meridian has earned its place as a Media Mix Modeling tool!

Stay up-to-date!
Did you like this article? Subscribe and get notified when new articles or other interesting updates are published. No spam and you can unsubscribe at any time.