Marginal Return, Not Average Return
The channel with the best cost per acquisition is often the worst place to put the next dollar. Averages describe money already spent. Budgets are decisions about money that has not been spent yet.
Branded search has the best cost per acquisition in the account. It has had the best cost per acquisition for three years. Every quarterly review reaches the same conclusion, which is that it deserves more budget.
It is the worst place in the account to put the next dollar, and has been for most of those three years.
Two different numbers
Average return divides all the conversions a channel produced by all the money it consumed. It describes a quarter that already happened.
Marginal return is what the next dollar buys. It describes a decision you have not made yet.
A budget is entirely a question of the second kind. Nobody is deciding whether to have spent last quarter’s money. They are deciding where the next increment goes, and an average cannot answer that, because it averages over dollars bought at every level of saturation the channel has ever been at.
Why they come apart
Media does not respond linearly to money. The first dollars into a channel reach the people most likely to respond. Later dollars reach people who are harder to move, at higher frequency, with worse placements. The curve bends.
That bend is what separates the two numbers. A channel funded heavily for years sits far along its curve, where the last dollar buys very little, while its average is still pulled up by all the cheap early dollars it bought long ago. A channel funded lightly sits near the origin, where its average looks mediocre because it has not yet had the volume to prove otherwise, and where its next dollar is the most productive one available anywhere.
Show the data
| Channel | Current spend | Conversions | Avg CPA | Marginal CPA |
|---|---|---|---|---|
| Branded search | $280k | 3,200 | $88 | $787 |
| Non-brand search | $380k | 3,293 | $115 | $315 |
| Paid social | $240k | 1,971 | $122 | $213 |
| Online video | $140k | 1,167 | $120 | $144 |
| Affiliate | $160k | 1,304 | $123 | $301 |
The dots are what matter. They sit at wildly different places on curves of different heights, and no summary statistic taken at a single dot tells you the slope there.
What the gap looks like
Same quarter, same $1,200,000 budget, both numbers computed for every channel.
| Channel | By average CPA | By marginal CPA | Change |
|---|---|---|---|
| Branded search | #1 | #5 | ↓ 4 worse |
| Non-brand search | #2 | #4 | ↓ 2 worse |
| Paid social | #4 | #2 | ↑ 2 better |
| Online video | #3 | #1 | ↑ 2 better |
| Affiliate | #5 | #3 | ↑ 2 better |
Branded search costs $88 per conversion on average and $787 at the margin. That is a factor of 9. It is simultaneously the most efficient line in the account and the most expensive place to add money.
Online video runs the other way. Its average of $120 is third best, which in most reviews reads as a reason to hold it flat. Its marginal cost of $144 is the best available.
What it is worth
Reallocating the same budget until the marginal return is equal everywhere:
| Channel | Now | Reallocated | Change |
|---|---|---|---|
| Branded search | $280k | $135k | − $145k out |
| Non-brand search | $380k | $300k | − $80k out |
| Affiliate | $160k | $130k | − $30k out |
| Paid social | $240k | $265k | + $25k in |
| Online video | $140k | $370k | + $230k in |
Total conversions rise from 10,935 to 11,555, a gain of 5.7%. Blended cost per acquisition falls from $110 to $104. No new budget, no new creative, no new channel.
A few percent is not a dramatic number, and that is worth sitting with. Real reallocation gains are usually in this range rather than the transformations promised by vendors. The case for doing it is that it recurs every quarter and costs nothing but the decision.
The rule, and the catch
The rule is short: move money until the next dollar buys the same amount everywhere. If one channel’s next dollar buys more than another’s, you are holding the wrong allocation, and the size of the gap is the size of the mistake.
The catch is larger. That rule needs the slope of each channel’s response curve at its current spend, and no reporting platform will tell you that. What platforms report is the average, which is the number that misleads.
Three ways to get at the slope, in ascending order of cost and credibility:
- Vary spend and watch. Move a channel’s budget up or down materially and measure what happens to total conversions. Crude, cheap, and much better than assuming.
- Test at two spend levels. Split geographies into a higher-spend and a lower-spend arm. This estimates the slope directly, in the region you care about, and is the design behind the geo holdout example.
- Fit a mix model calibrated to those experiments. A model gives you the whole curve rather than one slope, which is what you need to compare five channels at once. It is only trustworthy where experiments anchor it.
What this does not say
It does not say cut branded search. The channel is producing 3,200 conversions, and the reallocation above still funds it at $135k. Marginal thinking says the last dollars are unproductive, not that the first ones were.
It also does not resolve whether those conversions are incremental. Every number here is a conversion count, and if the underlying credit is wrong then the curves are drawn from the wrong data. That is the argument in Attribution Is Not Incrementality, and it comes first: marginal analysis on attributed conversions inherits every bias attribution has, then adds a calculus mistake on top.
Context
Best suited for
Any program running several channels at meaningfully different spend levels, where the budget is fixed and the question is how to split it.
Data requirements
- Conversions and spend by channel, at a consistent definition
- Enough historical variation in spend to say something about the curve
- Ideally an experiment at more than one spend level, since history alone rarely identifies a slope
- A conversion measure you believe, because everything here is downstream of it
What changes by context
- B2C ecommerce
- Curves bend quickly at scale and the promotional calendar confounds almost every naive before-and-after comparison. Branded search is usually the most saturated line and the hardest to cut politically.
- B2C subscription
- The outcome should be retained value rather than trial starts, because a channel can look marginally cheap while buying subscribers who churn in month two.
- B2B SaaS
- Long lags mean the curve you fit describes spend from two quarters ago. Pipeline rather than revenue is usually the only outcome that arrives in time to be modeled.
- Marketing-led
- The natural home for this, since channel mix is the main lever available and marketing controls both the spend and the measurement.
When it breaks down
- Channels with too little spend variation to identify a curve. Three years at the same budget tells you about one point, not a slope.
- Short-run comparisons where seasonality and promotions move conversions more than spend does.
- Channels that interact, where cutting one raises another. Branded search and organic are the standard case.
- Programs where the conversion measure is attributed rather than incremental, since the curves inherit that error before any of this applies.
What this does not establish
- That these curves are the right shape. Diminishing returns are assumed here rather than estimated, which is the whole reason the last section is about how you would measure them.
- That the reallocation gain would survive contact with reality. Channels interact, spend cannot always move freely, and an optimizer that ignores both will overstate what is available.
- That equalizing marginal return is always the objective. Under a growth target rather than a fixed budget, the rule changes to spending until marginal return falls to your value per conversion.
What to test next
The cheapest useful experiment is a spend-level test on your most saturated channel, which is usually the one with the best-looking average. Split geographies, run one arm at reduced spend for six weeks, and measure total conversions rather than that channel’s conversions. If total volume holds, you have found money.
That result is more persuasive than any model, because the objection to marginal reasoning is always that the curve is theoretical. A test at two spend levels makes it observable.
How the numbers were produced Code
Five channels on concave saturating curves,
conversions(s) = α·s / (s + k), with a fixed
$1,200,000 quarterly budget. Marginal return is the numerical
derivative at current spend; the reallocation hands out the budget in $5k
increments to whichever channel buys the most with the next one.
That greedy procedure is valid because the curves are concave. Real response curves often have an S-shaped shoulder at low spend, where a channel needs minimum scale before it does anything, and on an S-curve the same procedure fails quietly: it never invests enough to clear the shoulder and returns an allocation worse than the one it started from. An early version of this simulation did that, reporting a 6% loss from a supposedly optimal budget.
Regenerated from scripts/marginal_return.py, the script named
under each figure.