Skip to main content

Marketing ROI Calculator

Revenue attributed to marketing, the margin on it, and what you spent. The tool reports ROI the way finance will recompute it.

Free toolsUnit EconomicsReviewed September 2026

Revenue, margin, and spend

Revenue from customers or orders your attribution credits to this campaign or programme.

Revenue left after cost of goods or cost of service.

Media, production, agency, and any other cost you want in the denominator.

IncrementalOptional. Strips out revenue that would have arrived anyway.

Revenue that would have happened without the campaign, from a holdout, geo test, or prior run rate.

ROMI on gross profit

–

(Revenue × margin − spend) ÷ spend

ROI on revenue
–
(Revenue − spend) ÷ spend
Incremental ROMI
–
Needs baseline
Gross profit
–
Revenue × margin
Profit contribution
–
Gross profit − spend
Break-even revenue
–
Spend ÷ margin
Revenue per $1 spent
–
Revenue ÷ spend

Runs entirely in your browser. Nothing you enter is stored or sent anywhere. Last reviewed September 2026.

Marketing ROI the way finance computes it

Revenue is not return. Gross profit is. The ROI most marketing dashboards show divides revenue minus spend by spend, which treats every dollar of revenue as if it were profit. Finance doesn't. They take the revenue marketing produced, apply the gross margin, subtract the marketing spend, and divide by the spend. That is return on marketing investment, and it is the number that survives a CFO review. At 60% margin, $500,000 of attributed revenue on $120,000 of spend is a 317% ROI on revenue but a 150% ROMI. Both are arithmetically true. Only one tells you what the campaign earned.

The incremental version goes one step further. Some of the revenue attributed to a campaign would have arrived anyway, from customers who were already going to buy. If you can estimate that baseline, from a holdout group, a geo test, or last period's run rate, enter it and the tool computes ROMI on the incremental revenue alone. This is the strictest version, and the one to use when arguing for more budget, because it's the one the argument will be tested against.

Break-even revenue is a useful planning number: spend divided by margin. It's the revenue a campaign must produce before it contributes anything, and it grows fast as margin falls. A $120,000 campaign at 60% margin needs $200,000 to break even; at 30% margin it needs $400,000. Know that figure before launch, not after.

Formulas

ROI on revenue
= (Revenue − Spend) ÷ Spend
Gross profit
= Revenue × Gross margin
ROMI
= (Gross profit − Spend) ÷ Spend
Incremental ROMI
= ((Revenue − Baseline) × Gross margin − Spend) ÷ Spend
Profit contribution
= Gross profit − Spend
Break-even revenue
= Spend ÷ Gross margin

Frequently asked questions

What is the difference between marketing ROI and ROMI?

In practice the terms are used loosely, but the useful distinction is what sits in the numerator. Revenue-based ROI takes attributed revenue, subtracts spend, and divides by spend. ROMI, return on marketing investment, applies gross margin to the revenue first, so it measures the profit the spend produced rather than the sales it touched. Finance computes it the second way. If your dashboard shows the first, expect the number to shrink when it reaches the CFO.

What is a good marketing ROI?

A widely repeated rule of thumb calls 5:1 revenue to spend solid and 10:1 exceptional, but those are revenue ratios and they mean very different things at different margins. At 20% gross margin a 5:1 revenue ratio is a loss after cost of goods. Judge ROMI on gross profit instead, and compare it against your own cost of capital and the alternatives for the same money. Results vary widely by channel, category, and how conservative the attribution is.

Should salaries and agency fees count as marketing spend?

For a campaign-level ROI, media and the direct production costs of that campaign are usually enough. For a programme or annual figure, include salaries, agency retainers, tools, and content, because that is the number finance will use. The important thing is to be explicit about which version you are showing. A campaign ROI that quietly excludes the team that ran it is not comparable to a fully loaded one.

More free tools

Browse all free tools →