Attribution and ROAS metric

Marginal ROAS

The revenue you get back from the next rupee of ad spend, not the average rupee. It's the number that tells you whether adding budget will make money or just make revenue.

Source: Spend tests or MMMComputed: Per campaign or channelBetter when: Above break-even ROASAlso called: mROAS, incremental return on spend
Formula
Marginal ROAS =
Change in revenue
รท Change in spend

Measured between two spend levels held over comparable periods, or read off a response curve from a marketing mix model.

Updated November 2026 ยท 6 min read
01

What is marginal ROAS?

ROAS is an average. It divides all the revenue a campaign drove by all the money it spent. But the first โ‚น10,000 of a day's budget goes to the people most likely to buy, and each extra rupee reaches people a little less likely to. Returns fall as spend rises.

Marginal ROAS looks only at the last slice of spend. Because the average still includes all those cheap early sales, it can look healthy long after the last rupee has started losing money. When you're deciding whether to scale, the last rupee is the one that matters.

Average ROASTotal revenue รท total spend. How the campaign did overall.
Marginal ROASExtra revenue รท extra spend. What the next rupee will do.
Break-even ROASThe bar marginal ROAS has to clear for more spend to make sense.
02

How it's calculated

No ad platform reports marginal ROAS. You get it by comparing two spend levels, or by fitting a response curve to your spend and revenue history.

InputWhere it comes fromWhat it gives us
spendAd platform, average per day at each budget levelThe change in spend
attributed_revenueTrue (not platform) attribution, same window at each levelThe change in revenue for that campaign
response_curveMarketing mix model fitted on daily spend and salesSlope of revenue vs spend at any budget
Marginal ROAS(Revโ‚‚ โˆ’ Revโ‚) รท (Spendโ‚‚ โˆ’ Spendโ‚)Return on the spend you added between two levels.
Scaling headroomMarginal ROAS รท Break-even ROASAbove 1, the next rupee still makes money.
Why the average misleadsAverage ROAS falls slowly as you scale, because every new day still includes the cheap early sales. Marginal ROAS falls fast. A campaign can show a respectable average while its last โ‚น25,000 a day brings back barely โ‚น25,000.
03

How to measure it

There are two practical routes. Spend-step tests are simple and campaign-specific. A marketing mix model covers every channel at once but needs a longer history.

  1. 1Hold a baselineRun the campaign at its current budget for 5 to 7 days and record true ROAS.
  2. 2Step up onceRaise budget by 20 to 50% and hold it for another 5 to 7 days. Change nothing else.
  3. 3Divide the deltasExtra daily revenue รท extra daily spend is the marginal ROAS for that step.
  4. 4Repeat or modelKeep stepping while it clears break-even, or use MMM response curves to see every level at once.
Watch for things that move with youA sale, a festive week or a new creative launched mid-test will change revenue on its own. Compare like periods, and if something else changed, rerun the step.
04

Worked examples

Example 1: Scaling one campaign in steps

An illustrative prospecting campaign is stepped from โ‚น50,000 to โ‚น1,25,000 a day, one week per level. The brand's break-even ROAS is 2.0.

Daily spendDaily revenue
true attribution
Average ROASMarginal ROAS
โ‚น50,000โ‚น1,75,0003.50baseline
โ‚น75,000โ‚น2,40,0003.202.60
โ‚น1,00,000โ‚น2,85,0002.851.80
โ‚น1,25,000โ‚น3,10,0002.481.00
Average vs marginal ROAS as budget risesAverageMarginalBreak-even 2.0
โ‚น50,000/dayโ‚น75,000/dayโ‚น1,00,000/dayโ‚น1,25,000/day
  • โ‚น75,000The extra โ‚น25,000 brought back โ‚น65,000. Marginal ROAS of 2.6 clears break-even, so this step was worth it.
  • โ‚น1,00,000Average ROAS still reads 2.85, comfortably above 2.0. But the extra โ‚น25,000 returned only โ‚น45,000, a marginal ROAS of 1.8. That slice is losing money.
  • โ‚น1,25,000The last โ‚น25,000 brought back โ‚น25,000. The average of 2.48 still looks fine on a dashboard. The right budget for this campaign is around โ‚น75,000 a day.

Example 2: Two campaigns, same average, different headroom

Both illustrative campaigns show an average true ROAS of 3.0. You have โ‚น20,000 a day of extra budget to place.

Campaign A ยท Broad prospectingRoom to scale
Average ROAS3.00
Marginal ROAS2.80
The next rupee performs almost as well as the average. The audience isn't saturated yet, so this is where the extra budget should go.
Campaign B ยท Lookalike 1%Saturated
Average ROAS3.00
Marginal ROAS1.20
A narrow audience that's already been squeezed. Extra spend here buys mostly repeat impressions. Keep it where it is, or trim it.
05

Using marginal ROAS to decide

Compare marginal ROAS to your break-even ROAS, never to the campaign's own average. Use these bands as a starting point and tune them to how aggressively you want to grow.

Scale
You seeMarginal ROAS comfortably above break-even after the last step.
Do thisTake another step up and measure again.
At the edge
You seeMarginal ROAS close to break-even.
Do thisHold budget. New creatives or broader audiences can lift the curve before you scale again.
Overspent
You seeMarginal ROAS below break-even, even if the average looks fine.
Do thisStep budget back to the last level that cleared break-even. Move the difference to a campaign with headroom.
Rebalance
You seeMarginal ROAS differs a lot between campaigns or channels.
Do thisShift budget from low to high marginal ROAS until they roughly even out. That's the most efficient split.
06

Common mistakes

  • Scaling on average ROAS"ROAS is still 2.8, push more" is how campaigns end up overspent. Check the last step.
  • Testing over different weeksComparing a sale week to a normal week measures the sale, not the spend.
  • Using platform-reported revenuePlatforms claim more credit as spend grows. Use true attribution on both sides of the step.
  • Jumping too far at onceDoubling budget overnight resets learning and hides where returns started to drop.
07

Frequently asked questions

Is marginal ROAS the same as incremental ROAS?

No. Incremental ROAS asks whether sales would have happened without the ad at all. Marginal ROAS asks what the next rupee adds on top of what you already spend. You can have both: the incremental return of your next slice of budget.

Can I get marginal ROAS without running tests?

A marketing mix model can estimate it from your spend and sales history, as long as spend has varied enough over time for the model to see the curve.

Why does it fall as I spend more?

Ad platforms deliver to the people most likely to convert first. As budget grows, they reach further into less interested audiences and show ads more often to the same people, so each extra rupee does a bit less.

How long should each spend step run?

Long enough to cover your attribution window and a full week of weekday patterns. Five to seven days per step is a reasonable place to start.

Scale on the next rupee, not the average

BooleanMaths gives you true attribution to measure spend steps on, and marketing mix modelling to see response curves across channels.

Attribution and ROAS metric

Marginal ROAS

The revenue you get back from the next rupee of ad spend, not the average rupee. It's the number that tells you whether adding budget will make money or just make revenue.

Source: Spend tests or MMMComputed: Per campaign or channelBetter when: Above break-even ROASAlso called: mROAS, incremental return on spend
Formula
Marginal ROAS =
Change in revenue
รท Change in spend

Measured between two spend levels held over comparable periods, or read off a response curve from a marketing mix model.

Updated November 2026 ยท 6 min read
01

What is marginal ROAS?

ROAS is an average. It divides all the revenue a campaign drove by all the money it spent. But the first โ‚น10,000 of a day's budget goes to the people most likely to buy, and each extra rupee reaches people a little less likely to. Returns fall as spend rises.

Marginal ROAS looks only at the last slice of spend. Because the average still includes all those cheap early sales, it can look healthy long after the last rupee has started losing money. When you're deciding whether to scale, the last rupee is the one that matters.

Average ROASTotal revenue รท total spend. How the campaign did overall.
Marginal ROASExtra revenue รท extra spend. What the next rupee will do.
Break-even ROASThe bar marginal ROAS has to clear for more spend to make sense.
02

How it's calculated

No ad platform reports marginal ROAS. You get it by comparing two spend levels, or by fitting a response curve to your spend and revenue history.

InputWhere it comes fromWhat it gives us
spendAd platform, average per day at each budget levelThe change in spend
attributed_revenueTrue (not platform) attribution, same window at each levelThe change in revenue for that campaign
response_curveMarketing mix model fitted on daily spend and salesSlope of revenue vs spend at any budget
Marginal ROAS(Revโ‚‚ โˆ’ Revโ‚) รท (Spendโ‚‚ โˆ’ Spendโ‚)Return on the spend you added between two levels.
Scaling headroomMarginal ROAS รท Break-even ROASAbove 1, the next rupee still makes money.
Why the average misleadsAverage ROAS falls slowly as you scale, because every new day still includes the cheap early sales. Marginal ROAS falls fast. A campaign can show a respectable average while its last โ‚น25,000 a day brings back barely โ‚น25,000.
03

How to measure it

There are two practical routes. Spend-step tests are simple and campaign-specific. A marketing mix model covers every channel at once but needs a longer history.

  1. 1Hold a baselineRun the campaign at its current budget for 5 to 7 days and record true ROAS.
  2. 2Step up onceRaise budget by 20 to 50% and hold it for another 5 to 7 days. Change nothing else.
  3. 3Divide the deltasExtra daily revenue รท extra daily spend is the marginal ROAS for that step.
  4. 4Repeat or modelKeep stepping while it clears break-even, or use MMM response curves to see every level at once.
Watch for things that move with youA sale, a festive week or a new creative launched mid-test will change revenue on its own. Compare like periods, and if something else changed, rerun the step.
04

Worked examples

Example 1: Scaling one campaign in steps

An illustrative prospecting campaign is stepped from โ‚น50,000 to โ‚น1,25,000 a day, one week per level. The brand's break-even ROAS is 2.0.

Daily spendDaily revenue
true attribution
Average ROASMarginal ROAS
โ‚น50,000โ‚น1,75,0003.50baseline
โ‚น75,000โ‚น2,40,0003.202.60
โ‚น1,00,000โ‚น2,85,0002.851.80
โ‚น1,25,000โ‚น3,10,0002.481.00
Average vs marginal ROAS as budget risesAverageMarginalBreak-even 2.0
โ‚น50,000/dayโ‚น75,000/dayโ‚น1,00,000/dayโ‚น1,25,000/day
  • โ‚น75,000The extra โ‚น25,000 brought back โ‚น65,000. Marginal ROAS of 2.6 clears break-even, so this step was worth it.
  • โ‚น1,00,000Average ROAS still reads 2.85, comfortably above 2.0. But the extra โ‚น25,000 returned only โ‚น45,000, a marginal ROAS of 1.8. That slice is losing money.
  • โ‚น1,25,000The last โ‚น25,000 brought back โ‚น25,000. The average of 2.48 still looks fine on a dashboard. The right budget for this campaign is around โ‚น75,000 a day.

Example 2: Two campaigns, same average, different headroom

Both illustrative campaigns show an average true ROAS of 3.0. You have โ‚น20,000 a day of extra budget to place.

Campaign A ยท Broad prospectingRoom to scale
Average ROAS3.00
Marginal ROAS2.80
The next rupee performs almost as well as the average. The audience isn't saturated yet, so this is where the extra budget should go.
Campaign B ยท Lookalike 1%Saturated
Average ROAS3.00
Marginal ROAS1.20
A narrow audience that's already been squeezed. Extra spend here buys mostly repeat impressions. Keep it where it is, or trim it.
05

Using marginal ROAS to decide

Compare marginal ROAS to your break-even ROAS, never to the campaign's own average. Use these bands as a starting point and tune them to how aggressively you want to grow.

Scale
You seeMarginal ROAS comfortably above break-even after the last step.
Do thisTake another step up and measure again.
At the edge
You seeMarginal ROAS close to break-even.
Do thisHold budget. New creatives or broader audiences can lift the curve before you scale again.
Overspent
You seeMarginal ROAS below break-even, even if the average looks fine.
Do thisStep budget back to the last level that cleared break-even. Move the difference to a campaign with headroom.
Rebalance
You seeMarginal ROAS differs a lot between campaigns or channels.
Do thisShift budget from low to high marginal ROAS until they roughly even out. That's the most efficient split.
06

Common mistakes

  • Scaling on average ROAS"ROAS is still 2.8, push more" is how campaigns end up overspent. Check the last step.
  • Testing over different weeksComparing a sale week to a normal week measures the sale, not the spend.
  • Using platform-reported revenuePlatforms claim more credit as spend grows. Use true attribution on both sides of the step.
  • Jumping too far at onceDoubling budget overnight resets learning and hides where returns started to drop.
07

Frequently asked questions

Is marginal ROAS the same as incremental ROAS?

No. Incremental ROAS asks whether sales would have happened without the ad at all. Marginal ROAS asks what the next rupee adds on top of what you already spend. You can have both: the incremental return of your next slice of budget.

Can I get marginal ROAS without running tests?

A marketing mix model can estimate it from your spend and sales history, as long as spend has varied enough over time for the model to see the curve.

Why does it fall as I spend more?

Ad platforms deliver to the people most likely to convert first. As budget grows, they reach further into less interested audiences and show ads more often to the same people, so each extra rupee does a bit less.

How long should each spend step run?

Long enough to cover your attribution window and a full week of weekday patterns. Five to seven days per step is a reasonable place to start.

Scale on the next rupee, not the average

BooleanMaths gives you true attribution to measure spend steps on, and marketing mix modelling to see response curves across channels.