Google's open source mixed marketing model library, helps you understand your return on investment and direct your ad spend with confidence.
Project description
About Meridian
Marketing mix modeling (MMM) is a statistical analysis technique that measures the impact of marketing campaigns and activities to guide budget planning decisions and improve overall media effectiveness. MMM uses aggregated data to measure impact across marketing channels and account for non-marketing factors that impact sales and other key performance indicators (KPIs). MMM is privacy-safe and does not use any cookie or user-level information.
Meridian is an MMM framework that enables advertisers to set up and run their own in-house models. Meridian helps you answer key questions such as:
- How did the marketing channels drive my revenue or other KPI?
- What was my marketing return on investment (ROI)?
- How do I optimize my marketing budget allocation for the future?
Meridian is a highly customizable modeling framework that is based on Bayesian causal inference. It is capable of handling large scale geo-level data, which is encouraged if available, but it can also be used for national-level modeling. Meridian provides clear insights and visualizations to inform business decisions around marketing budget and planning. Additionally, Meridian provides methodologies to support calibration of MMM with experiments and other prior information, and to optimize target ad frequency by utilizing reach and frequency data.
If you are using LightweightMMM, see the migration guide to help you understand the differences between these MMM projects.
Install Meridian
Python 3.11 or 3.12 is required to use Meridian. We also recommend using a minimum of 1 GPU.
Note: This project has been tested on T4 GPU using 16 GB of RAM.
To install Meridian, run the following command to automatically install the latest release from PyPI.
-
For Linux-GPU users:
Note: CUDA toolchain and a compatible GPU device is necessary for
[and-cuda]extra to activate.$ pip install --upgrade google-meridian[and-cuda]
-
For macOS and general CPU users:
Note: There is no official GPU support for macOS.
$ pip install --upgrade google-meridian
Alternatively, run the following command to install the most recent, unreleased version from GitHub.
-
For GPU users:
$ pip install --upgrade "google-meridian[and-cuda] @ git+https://github.com/google/meridian.git"
-
For CPU users:
$ pip install --upgrade git+https://github.com/google/meridian.git
We recommend to install Meridian in a fresh virtual environment to make sure that correct versions of all the dependencies are installed, as defined in pyproject.toml.
How to use the Meridian library
To get started with Meridian, you can run the code programmatically using sample data with the Getting Started Colab.
The Meridian model uses a holistic MCMC sampling approach called No U Turn Sampler (NUTS) which can be compute intensive. To help with this, GPU support has been developed across the library (out-of-the-box) using tensors. We recommend running your Meridian model on GPUs to get real time optimization results and significantly reduce training time.
Meridian Documentation & Tutorials
The following documentation, colab, and video resources will help you get started quickly with using Meridian:
| Resource | Description |
|---|---|
| Meridian documentation | Main landing page for Meridian documentation. |
| Meridian basics | Learn about Meridian features, methodologies, and the model math. |
| Getting started colab | Install and quickly learn how to use Meridian with this colab tutorial using sample data. |
| User guide | A detailed walk-through of how to use Meridian and generating visualizations using your own data. |
| Pre-modeling | Prepare and analyze your data before modeling. |
| Modeling | Modeling guidance for model refinement and edge cases. |
| Post-modeling | Post-modeling guidance for model fit, visualizations, optimizations, refreshing the model, and debugging. |
| Scenario planning | Plan budget allocation with Meridian on Colab & Looker Studio interactively. |
| Migrate from LMMM | Learn about the differences between Meridian and LightweightMMM as you consider migrating. |
| API Reference | API reference documentation for the Meridian package. |
| Reference list | White papers and other referenced material. |
Support
Questions about methodology: Please see the Modeling tab in the technical documentation.
Issues installing or using Meridian: Feel free to post questions in the Discussions or Issues tabs of the Meridian GitHub repository. The Meridian team responds to these questions weekly in batches, so please be patient and don't reach out directly to your Google Account teams.
Bug reports: Please post bug reports to the Issues tab of the Meridian GitHub repository. We also encourage the community to share tips and advice with each other on the Issues tab. When our team addresses or resolves a new bug, we will notify you through the comments on the issue.
Feature requests: Please post these to the Discussions tab of the Meridian GitHub repository. We have an internal roadmap for Meridian development, but would love your inputs for new feature requests so that we can prioritize them based on the roadmap.
Pull requests: These are appreciated but are very difficult for us to merge because the code in this repository is linked to Google internal systems and has to pass internal review. If you submit a pull request and we believe that we can incorporate a change in the base code, we will reach out to you directly about this.
Citing Meridian
To cite this repository:
@software{meridian_github,
author = {Google Meridian Marketing Mix Modeling Team},
title = {Meridian: Marketing Mix Modeling},
url = {https://github.com/google/meridian},
version = {1.5.2},
year = {2025},
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file google_meridian-1.5.2.tar.gz.
File metadata
- Download URL: google_meridian-1.5.2.tar.gz
- Upload date:
- Size: 385.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e3c3652a26e21d837573d5451b1a2e604d2c04cf199fe369287768f805f08ad
|
|
| MD5 |
86603ea444b544d91cb6a322fcbfde06
|
|
| BLAKE2b-256 |
80e9d3624c8d10daa8c39b39a3660d7bdbdeb39b0436d0f8140682039b359633
|
Provenance
The following attestation bundles were made for google_meridian-1.5.2.tar.gz:
Publisher:
publish.yml on google/meridian
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
google_meridian-1.5.2.tar.gz -
Subject digest:
7e3c3652a26e21d837573d5451b1a2e604d2c04cf199fe369287768f805f08ad - Sigstore transparency entry: 946066189
- Sigstore integration time:
-
Permalink:
google/meridian@775aaf359d741d3ea987613e683cc2f2ef8f76de -
Branch / Tag:
refs/heads/main - Owner: https://github.com/google
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@775aaf359d741d3ea987613e683cc2f2ef8f76de -
Trigger Event:
push
-
Statement type:
File details
Details for the file google_meridian-1.5.2-py3-none-any.whl.
File metadata
- Download URL: google_meridian-1.5.2-py3-none-any.whl
- Upload date:
- Size: 458.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36287a3438ba8892187dd2a5f8db1ed8648d953a5038e22e35259ad5e41b67d7
|
|
| MD5 |
fddcccaf04702a2cf5390bddaf50552d
|
|
| BLAKE2b-256 |
371b353cd1dcc188f97a9511f0869efcaaa770defeafd71bd261ecc9569d42ab
|
Provenance
The following attestation bundles were made for google_meridian-1.5.2-py3-none-any.whl:
Publisher:
publish.yml on google/meridian
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
google_meridian-1.5.2-py3-none-any.whl -
Subject digest:
36287a3438ba8892187dd2a5f8db1ed8648d953a5038e22e35259ad5e41b67d7 - Sigstore transparency entry: 946066198
- Sigstore integration time:
-
Permalink:
google/meridian@775aaf359d741d3ea987613e683cc2f2ef8f76de -
Branch / Tag:
refs/heads/main - Owner: https://github.com/google
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@775aaf359d741d3ea987613e683cc2f2ef8f76de -
Trigger Event:
push
-
Statement type: