Meelu

Free marketing mix modeling, in your browser

You spend across several channels and the platforms each claim the same sales. Upload a CSV of weekly spend and revenue and find out what each channel is really giving back, which ones have stopped paying for extra money, and how to split the same budget better. No sign-up, nothing installed, and your media plan never leaves this tab.

Drop a CSV of weekly spend and results here, or

One row per week or day: a date, one spend column per channel, and the conversions or revenue you want explained. Two to 12 channels, up to 800 periods.

The file is read and the model is fitted in this browser tab. Your spend data never reaches our server, so there is nothing for us to keep.

  • No account
  • Runs locally
  • Nothing uploaded
  • Free
  • CSV export

What you get back

Most free “marketing ROI calculators” divide revenue by spend and call it an answer. This one accounts for the fact that ads keep working after you stop paying, that channels hit a ceiling, and that Christmas would have happened anyway.

Credits the ads that work slowly

A TV or video ad sells things for weeks after the money stops. Without that, the sale gets handed to whatever was running the day it happened — usually search, which was just catching demand someone else created.

Shows where a channel runs out of road

Every channel has a point where extra money stops buying much. You get a curve per channel with today's spend marked on it, so you can see whether you are still on the steep part.

Tells you how much was the marketing

Your sales chart is split into the part you would have had anyway, the trend, the seasonal lift and each channel. If marketing only explains a small slice, it says so rather than hiding it.

Suggests a better split of the same budget

No extra money. It moves spend from the channels that have flattened out towards the ones that have not, and tells you what that would have been worth.

Warns you when the answer is shaky

A range around every return figure, and a warning when your data cannot really answer the question — too few weeks, a channel that never changes, two channels that always move together.

Stays on your machine, exports to CSV

Everything runs in this tab, so your media plan never reaches a server. The breakdown, the returns and the suggested budget all download as CSV.

How to run a marketing mix model on your own data

  1. Step 1

    Export one row per week

    A date column, one spend column per channel, and the sales or conversions you want explained. Most planning spreadsheets already look like this; if yours has a row per campaign, rows sharing a date are added together.

  2. Step 2

    Check the columns it picked

    It reads your headers to find the date, the outcome and the spend columns. Every guess is a dropdown you can change, and the answer updates as soon as you do.

  3. Step 3

    Read the warnings first, then the numbers

    The warnings sit above the results on purpose. If they say your data cannot separate two channels, the neat table underneath is a starting point for a test, not an answer.

Want to see it work before you go hunting for your own file? The run it on made-up data link under the upload box builds a few years of pretend weekly data and runs the whole thing on it, so you can see exactly what comes out.

How much of this should you believe?

Less than the confident-looking table suggests. This kind of analysis is genuinely useful and genuinely fragile, and its worst habit is handing you a precise number built on almost nothing. Four things to keep in front of you:

  • It spots patterns, not causes. It finds the spend that moved alongside your sales. It cannot tell a channel that drove sales from one you happened to switch on during a good quarter. Only a real test — holding a channel back in some regions and not others — can do that.
  • Channels that always move together cannot be told apart. If everything ramps up for a sale and everything stops in January, there is no way to know who deserves the credit, and the split between them is close to a guess. You get a warning when this is happening.
  • A channel that never changes teaches nothing. If you spend the same amount every week, there is nothing to compare. Whatever number comes out for that channel is filler, and it is flagged as such.
  • You need a couple of years of weekly data. Less than about a year and the answer is guesswork dressed up as a table. The ranges around each figure are honest about the noise, but they cannot rescue data that never had the answer in it.

What it does not do

  • It only knows about time and spend. Trend and the time of year are accounted for. Price changes, promotions, stock-outs, what competitors did and the weather are not, so their effect gets parked somewhere else — sometimes on a channel that happened to move at the same time.
  • You cannot tell it what your tests found. If you have switched a channel off in one region to see what happened, there is nowhere to feed that result in. That is the biggest gap between this and a commissioned piece of work.
  • It needs money, not impressions. A return figure needs a cost to divide by. If all you have is impressions or clicks, you will get curves but no meaningful return.
  • Nothing is saved. Close the tab and the result is gone. Download the CSVs if you want to keep them — there is no account to store them in.

Frequently asked questions

What is marketing mix modelling?

Marketing mix modelling is a statistical method that explains a business outcome — revenue, orders, conversions — using how much you spent on each marketing channel over time, alongside everything else that moves the number: trend, seasonality and the demand you would have had anyway. It works on aggregate weekly data, not on individual people, so it needs no cookies, no pixel and no user-level tracking. It came out of consumer goods in the 1960s and came back when privacy changes broke click-based attribution.

How does marketing mix modelling work?

You fit a regression of your outcome on channel spend, after transforming each channel twice. First adstock, which carries part of last period's spend into this one because advertising keeps working after the money stops. Then a saturation curve, which bends the response so the tenth thousand pounds does less than the first. The fitted coefficients give each channel's contribution, and whatever the model cannot attribute to media is the baseline — the sales you would have made regardless.

What data do you need for a marketing mix model?

One row per week with a date, a spend column for every channel, and the outcome you want explained. Two years of weekly data — 104 rows — is the usual minimum, because the model has to see several seasons and several different spend levels to separate them. Fewer than about 52 rows and the estimates get unstable. Adding controls such as price, promotions, distribution or competitor activity improves the fit, but spend and outcome are the core.

What is adstock in marketing mix modelling?

Adstock is the assumption that advertising you paid for last week still sells this week. The model carries a fraction of each period's spend forward: x' = x + theta multiplied by the previous adstocked value. Theta is the decay rate, fitted per channel and between 0 and 1. A theta of 0.7 means 70% of the effect survives into the next week, typical of brand and video; a theta of 0.1 is almost immediate, which is what search usually looks like.

What is a saturation curve in marketing?

A saturation curve describes diminishing returns: each extra pound in a channel buys less than the pound before it, because you have already reached the people who were cheapest to reach. It is usually modelled with a Hill curve, which has a half-saturation point (the spend at which the channel is halfway to its ceiling) and a shape parameter that decides whether returns fall away immediately or after an initial S-shaped ramp. Without one, a model believes doubling the budget doubles the sales forever.

What is a good ROAS?

It depends entirely on your margin, and most benchmarks quoted online ignore that. A rough rule is that a channel breaks even at 1 divided by your gross margin — at a 40% margin that is a ROAS of 2.5, at a 20% margin it is 5.0. Ecommerce blended ROAS commonly lands between 3 and 5, but a subscription business with high lifetime value can profit at under 1 on first order. The number that matters for budget decisions is incremental ROAS, not the figure the ad platform reports.

What is the difference between ROI and marginal ROI?

ROI is the total outcome attributed to a channel divided by everything you spent on it — an average across all the money already committed. Marginal ROI is what the next pound would return at your current spend level, read off the slope of the response curve. They separate exactly when saturation bites, so a channel can have the best average ROI and the worst marginal ROI because it is already flat. Reallocate budget on marginal ROI; average ROI only tells you about money you cannot spend again.

Can marketing mix modelling prove a channel caused sales?

No. A mix model finds spend patterns that correlate with your outcome, so it cannot separate a channel that drove sales from one you happened to switch on during a strong quarter, and when two channels always run together it often cannot tell them apart at all. Only experiments establish causality: geo holdouts, matched-market tests, and controlled lift studies. The right use of a model is to decide which experiment is worth running, then to calibrate the model against the result.

Top-down is only half the picture

A mix model works from aggregate spend downward and sees everything, including the channels you cannot track. Path-based channel attribution works from tracked journeys upward and sees them in detail. They will disagree; the disagreement is usually the finding. If the outcome you are modelling fell off a cliff at a specific point rather than drifting, the traffic drop analyser is the faster question to ask first, and the SEO audit covers the case where the cause was technical.

All of them are pieces of Meelu, a desktop app where an AI marketing agent runs your marketing on your own machine — no row cap, no upload, and nothing leaves the laptop. Join the waitlist.