THE MIX-MODEL REPORT

The mix model says: move the money where the curve is still steep.

A mix model on GA4 plus weekly spend. It answers a different question from path attribution: what happens if the budget moves. Every file is approved by a marketing professional with extensive experience in marketing analytics before it is sent.

The comparison engine can still run while this one waits. Two years of clean weekly spend, a P&L outcome, and the same channel list. Meridian when regions exist. PyMC when the picture is national and extra market forces matter. Path credit and mix-model numbers stay apart on purpose.

What the report is for

Whether a channel is already saturated

Response curves show where another dollar does less than the last. TV and always-on display often sit high on the curve. Prospecting search often does not. The decision sheet says hold, move, or wait — with today’s spend marked on the curve.

Whether regions tell a different story

When spend and sales are observed in more than one region, Meridian lets a small market borrow strength without disappearing. A national return can hide a strong north-east and a weak south. The PDF prints both, and will not average them into one fake number.

Whether something else is eating the media story

Competitor flights, prices, rates, holidays. PyMC puts those in as controls, not as media. If a control explains the week and media return moves, the report says so — instead of giving paid the credit for a quiet competitor week.

Whether this week is stable enough to move

A jump in the spend mix, a consent drop, or a fit that did not settle is a hold. Weekly retraining is the default. A model that fails its checks does not lead the PDF.

  1. 01

    Decision sheet

    Monday-morning moves, not a notebook.

    Hold, move, or wait — each tied to a named channel and a note on diminishing returns. One page that forwards.

    • Which channels still respond to extra spend, and which are already flat
    • A proposed shift that respects brand floors and caps
    • What changed versus last week’s fit
    • A single line on whether this week is stable enough to act

    The lead recommendation is gated on fit checks — not on a language model. Commentary may only cite figures that appear later in the same PDF. If Meridian and PyMC both ran, the sheet says which one led and why.

  2. 02

    Meridian — when regions exist

    The national number is not the only story.

    Google’s mix model, used when spend and sales are both tagged by region. A small market can still be seen without being over-trusted.

    • Weekly spend and sales by region, same planning channels
    • A national picture plus a regional one — a strong region is not averaged away
    • How long spend keeps working after the ads stop, per channel
    • Diminishing returns per channel, with today’s spend marked on the curve
    • Return at today’s spend versus the return if spend were pushed much higher
    • Contribution by region and channel

    Meridian, run on AWS. Seasonality is treated as a control, not as media. How carry-over and diminishing returns are set is written in the appendix every week so the number can be rebuilt. Regional detail is used only when the data exists; a national-only account is not padded with fake regions.

  3. 03

    PyMC — when the picture is national

    Spend, diminishing returns, and the market forces that are not your ads.

    A mix model for a single weekly series — with competitor spend, prices, rates, and holidays as controls when those series exist.

    • How long spend keeps working after the ads stop, and where extra spend flattens, on each channel
    • Seasonality so media is not credited for Christmas
    • Controls, not media: competitor flights, inflation, rate changes, holiday flags
    • A three-way comparison: a naive spend model, spend with carry-over only, and the full model — so the meeting can see what the extras added
    • Sales split: baseline, media, everything else — not blended
    • Return with a range (low / typical / high), not a single heroic point

    PyMC, run on AWS. Media is not allowed to take a negative return. Controls may go either way. When a check against known effects is possible, recovered controls are printed with a range. A control that does not hold up is dropped, not forced into the story.

  4. 04

    Response curves

    See diminishing returns before the budget moves.

    Carry-over and flattening, drawn so a meeting can see why another dollar in this channel does less than the last.

    • How long spend keeps working after the flight, in weeks, in the appendix
    • The diminishing-returns curve per channel, with today’s spend marked
    • Return at today’s spend versus the return at the top of the curve
    • A note when a channel is too young, too lumpy, or too tangled with another to draw a curve

    Curves come from the same fit as the contributions. They are not a separate sketch. A channel whose curve cannot be identified is reported as unidentified — it is not given a decorative S-shape.

  5. 05

    Fit checks

    The fit has to earn the recommendation.

    If the fit did not settle, or a held-out period broke, the PDF says wait — it does not ship a curve.

    • Did the fit settle, for the numbers that matter
    • Did the model actually describe the weeks it claims
    • Error on weeks the model did not train on, versus a naive spend model
    • Whether channel returns keep the same sign across the range
    • Known limits: no regions, short history, a channel remap, a consent drop

    A fail on fit quality or on held-out weeks demotes the model. The language model cannot override a failed check.

  6. 06

    Retraining, and a move worth printing

    Weekly by default. Sooner if the mix jumps.

    A jump in the spend mix, a competitor shock, or an export gap holds the send. A proposed shift respects the same caps the optimizer uses.

    • Scheduled weekly refit on AWS
    • A check on whether the spend mix — and, for PyMC, the market series — has jumped
    • A proposed shift off saturated channels onto the steep part of the curve
    • Labeled as a recommendation. The ad account is not touched

    Retrain is a job, not a person in a notebook. A marketing professional still approves the PDF. Path-credit numbers from the comparison engine are not mixed into these figures.

How a run is produced

  1. 01

    Spend and outcome in

    GA4 plus the weekly spend file. Same channel list as the comparison engine.

    Two years or more, week by week. Invoice or platform spend. Gaps are labeled, not silently filled. National by default; regional when both spend and sales exist by region.

  2. 02

    Fit Meridian, or fit PyMC

    The diagnostic chooses the family. Both can run when the data supports it.

    Run on AWS. Meridian when regions exist. PyMC when the series is national and extra market forces matter. Same planning channels as the comparison engine.

  3. 03

    Check the fit, then draft

    The fit has to pass before a sentence is written.

    Did it settle, did held-out weeks hold, do returns keep their sign. The language model may only cite figures already in the file. Unseen lifts are rejected.

  4. 04

    Professional review, then the inbox

    Every PDF is approved by a marketing professional with extensive experience in marketing analytics.

    Items held for review: mix jump, failed fit check, export gap. Delivery over email or Slack. Monthly readout on the retainer.

Why this engine exists

Ready, or not yet.

If the spend history is short or dirty, the diagnostic says so. The comparison engine still runs. This page is not a promise that every GA4 property is a mix model.

Two families, one PDF.

Meridian when regions exist. PyMC when the picture is national and extra market forces matter. The sheet says which one led.

Curves before dollars.

Diminishing returns are the point. A shift that ignores the curve is not printed as the plan.

Not blended with path credit.

Markov chains and Shapley values stay on the comparison report. Mix-model incrementality stays here. They answer different questions.

Appendix, every week

So the analyst can rebuild the number without a call.

  • Family used this week: Meridian, PyMC, or both — and why
  • How carry-over and diminishing returns were set, so the number can be rebuilt
  • Region list, or an explicit national-only flag
  • Market controls included, and any that were dropped
  • Whether the fit settled, and error on weeks held out
  • Whether the spend mix jumped versus recent weeks
  • Commentary is checked against the tables; unseen figures do not ship