Run OLS regression, Bayesian PyMC, Meridian or Robyn models directly inside Nuso. Upload your CSV, map your channels, get saturation curves and optimal allocation.
The MMM Engine
Upload a CSV of your weekly channel spend and revenue. Map each column to a media channel. Select your model — OLS for speed, PyMC for Bayesian inference, Meridian or Robyn for industry-standard outputs — and run in one click.
Channel saturation curves — dots show current spend position
Four frameworks
Ordinary Least Squares — the fastest path to channel coefficients and saturation curves. Results in seconds. Perfect for exploratory analysis.
Full Bayesian inference with MCMC sampling. Posterior distributions, uncertainty quantification, and credible intervals on every parameter.
Google's open-source Bayesian MMM framework. Industry-standard Hill + Adstock transformations, geo-level modelling, and budget scenario planning.
Meta's automated MMM using multi-objective optimisation (Nevergrad). Ridge regression with hyperparameter tuning and Pareto-front model selection.
Full Python environment under the hood. Inspect model coefficients, download fitted values, and pipe results to your own notebooks via REST API.
Run multiple model configurations side-by-side. Compare OLS vs PyMC vs Robyn on the same dataset and see which yields the most defensible ROAS estimates.
After each run, Gemini AI summarises your results in plain English — flagging which channels are over-invested, which are undersaturated, and where to reallocate next week.
Experiment Bed
Don't guess which framework to trust. Run the same input data through OLS, PyMC, Meridian and Robyn simultaneously. Compare R², MAPE, and optimal allocations across all four.
Experiment Bed — Run Comparison
Marketing Mix Modelling (MMM) is a statistical technique that uses historical sales and spend data to quantify the contribution of each marketing channel — and external factors like seasonality and promotions — to overall revenue. Unlike pixel-based attribution, which depends on tracking cookies and is increasingly broken by iOS privacy changes and ad blockers, MMM is privacy-safe because it works entirely with aggregated data. For Shopify brands spending more than £20k/month on paid media, MMM provides an independent, platform-agnostic view of true marketing effectiveness that can't be gamed by platform-reported numbers. It answers the fundamental question every brand marketer faces: "If I move £10,000 from Meta to Google, what actually happens to revenue?"
OLS (Ordinary Least Squares) is the simplest MMM approach — a linear regression that estimates channel contributions from historical data. It is fast and interpretable but makes strong assumptions about linearity and can struggle with multicollinearity between channels. PyMC is a Python-based Bayesian inference framework that models uncertainty explicitly, producing probability distributions for each channel's contribution rather than point estimates; this gives brands a more honest picture of confidence in the model's outputs. Meridian is Google's open-source Bayesian MMM library, released in 2024, which is optimised for integration with Google's own media data and uses similar Bayesian principles to PyMC with additional features like geo-level modelling. Robyn is Meta's open-source MMM tool built in R, which adds automated hyperparameter optimisation using Nevergrad and is particularly popular in the DTC space for its budget allocation output. Nuso supports all four frameworks within the same interface, so you can run multiple models and compare results side by side.
As a general rule, MMM requires at least 52 weeks (one full year) of weekly data to produce reliable channel contribution estimates, with 2–3 years of data being optimal. Shorter time periods make it difficult for the model to separate the effects of seasonality from genuine channel performance. You also need sufficient variation in your spend levels across that period — a brand that has spent exactly the same amount on Meta every week for a year will find the model struggles to isolate the effect of Meta spend on revenue. Nuso's MMM tool will flag if your dataset is too short or lacks sufficient spend variation before running the model, and suggests data quality improvements before you invest time in interpretation.
Yes. Nuso is specifically designed to make MMM accessible to marketing teams and founders without a data science background. The workflow is: upload a CSV of weekly revenue and channel spend data (or connect Shopify and ad platforms directly), map your columns to the correct channel types, choose your model framework (OLS for a quick read, PyMC or Meridian for Bayesian confidence intervals), and click Run. Nuso handles all the statistical fitting, adstock transformation, and saturation curve fitting behind the scenes, then presents the outputs — channel contribution percentages, saturation curves, and a budget optimiser — in plain English with charts that do not require a statistics degree to interpret.
Adstock decay is the principle that advertising has a lagged and diminishing effect on consumer behaviour — a TV ad or a TikTok campaign seen today may influence a purchase made two or three weeks later, not just immediately. In MMM, adstock transformations model this carry-over effect by distributing the impact of each week's ad spend across future weeks according to a decay rate. Without adstock, an MMM model would attribute all of a channel's effect to the week the money was spent, which understates the long-term value of brand-building channels and overstates the impact of performance channels that drive immediate clicks. Different channels have different natural adstock decay rates — TV and YouTube typically decay slowly (over weeks), while paid search decays within days — and Nuso fits these decay parameters automatically during model training.
Platform-reported ROAS is calculated by each ad platform independently using their own attribution window and conversion tracking, which means Google, Meta, and TikTok will all claim credit for the same customer if they appeared at different points in that customer's journey. This results in the sum of all platform-reported ROAS figures being far higher than the actual return on total ad spend — a well-known phenomenon sometimes called "attribution inflation". MMM, by contrast, measures the incremental contribution of each channel to total revenue using observed spend and revenue changes, without relying on any individual platform's tracking. For a brand spending £100,000/month, the difference between platform-reported ROAS and MMM-derived incrementality can easily reveal that one or two channels are consuming 30–40% of budget for minimal incremental lift.
Once an MMM model has been fitted and you have saturation curves for each channel, Nuso's budget optimiser uses those curves to recommend the allocation of a given total media budget that maximises predicted revenue. You input your total monthly spend budget — say £80,000 — and the optimiser runs a constrained mathematical optimisation to find the channel split that sits at the most efficient point on each channel's diminishing returns curve. For example, it might recommend reducing Meta spend from £50,000 to £35,000 (where Meta is showing strong saturation effects) and reallocating that £15,000 to Google or TikTok where marginal returns are still high. The output is a concrete, model-backed channel allocation you can present to stakeholders and implement with your media buyer.
Neither framework is universally better — they are both Bayesian MMM implementations with similar theoretical foundations, and the quality of outputs depends far more on data quality and correct model specification than on the choice of framework. Meridian has the advantage of deep integration with Google's media data and geo-level modelling capabilities, making it a strong choice if Google Ads is a significant part of your media mix and you have regional sales data. PyMC (specifically the PyMC-Marketing library) is more flexible, has a larger open-source community, and is better documented for custom model extensions. In practice, Nuso allows you to run both on the same dataset and compare the channel attribution outputs, which is often more informative than committing to a single framework — divergent results between models are a useful signal to investigate data quality issues.
Connect your Shopify store in under 5 minutes. Free plan available — no credit card required.