ROI vs ROAS

Metricuno
May 20, 2026
5 min read
ROI vs ROAS — ROI vs ROAS explained for DTC operators: what each metric includes, when a 4x ROAS campaign still loses money, and which belongs on which dashboard.
Quick answer

ROAS measures revenue per ad euro; ROI measures profit per euro of total cost. Here's why the gap matters, and which metric belongs on the media dashboard versus the P&L review.

Definition
Marketing measurement

ROI vs ROAS

ROAS measures revenue per euro of ad spend; ROI measures profit per euro of total cost — they can point in opposite directions.

ROAS (Return on Ad Spend) divides campaign revenue by ad spend. It's a media-buying ratio: how much top-line revenue each euro of paid spend pulled in. ROI (Return on Investment) divides profit by total cost, where profit nets out COGS, shipping, payment fees, returns, and overhead, and total cost includes ad spend plus everything else attributable to the sale.

The two metrics share a numerator family but live in different worlds. A campaign at 4x ROAS sounds healthy until you net 55% COGS, 8% fulfilment, 3% payment fees, and a 12% return rate — at which point ROI can be negative on the same revenue. ROAS is the gas pedal; ROI is the bank balance.

Also known as
return on ad spend vs return on investment
ROAS vs ROI

The cleanest way to hold both metrics in your head: ROAS answers "is this channel pulling its weight on revenue?" and ROI answers "is this business making money?". You need the first to steer daily bids and the second to decide whether the quarter was actually profitable.

The trap is that ROAS is the metric ad platforms report by default, so it ends up on the executive dashboard by accident. Meta, Google, and TikTok all show ROAS because it's the number they can calculate without your margin data. Treating that number as profitability is how stores scale themselves into the ground.

Benchmark

Same revenue, very different ROI: how margin profile changes the answer

Store typeAd spendRevenueROASGross margin %ROI on ad spend
Apparel (mid-AOV)€10,000€40,0004.0x55%120%
Beauty (high-margin SKU)€10,000€30,0003.0x72%116%
Consumer electronics€10,000€40,0004.0x22%-12%
Supplements (subscription)€10,000€25,0002.5x68%70%
Furniture (high return rate)€10,000€50,0005.0x40%-3%

Look at the electronics row. A 4x ROAS reads as a winning campaign in the Meta dashboard, but a 22% gross margin means after netting product cost there's €8,800 of contribution against €10,000 of ad spend — the campaign loses money on the first-order economics before you even count overhead. The furniture row tells the same story through a different mechanism: 5x ROAS, but returns eat the margin.

When to put ROAS on the dashboard

ROAS earns its dashboard slot wherever decisions are made in hours, not weeks. Daily bid adjustments, creative rotation, audience exclusions, and pacing decisions all need a fast-feedback metric, and ROI's dependencies (margin, returns, fulfilment cost) settle too slowly to be useful at that cadence. For the buyer running campaigns Monday morning, ROAS is the right instrument.

It also works as a directional metric when your product mix is uniform — one SKU, one margin profile, one return rate. A single-product subscription brand can run on ROAS targets because the margin is locked in. Mixed catalogues with margins from 22% to 72% in the same campaign cannot, which is where POAS (Profit on Ad Spend) starts to replace it on serious dashboards.

The break-even ROAS trap

Your break-even ROAS depends entirely on your contribution margin. At 25% margin, you need 4x ROAS just to break even on ad spend — before overhead. At 70% margin, 1.5x ROAS is profitable. Setting one global ROAS target across all campaigns ignores this, and is the single most common reason DTC stores look profitable on the platform and unprofitable in the bank account.

When ROI is the only honest answer

ROI belongs anywhere the question is "should this business exist in its current shape?" — board reviews, channel-mix decisions, pricing reviews, and end-of-quarter retros. It's the metric that survives contact with COGS, payment fees, fulfilment, returns, discounts, and overhead, which means it's the metric that survives contact with reality.

The practical move for most stores in this revenue band is to run two dashboards. The media dashboard shows ROAS by campaign with a margin-adjusted break-even line drawn on it. The finance dashboard shows ROI (or its sibling POAS) at the channel and SKU level, refreshed weekly. The first drives spend; the second decides whether you change the offer, the product, or the channel. Both feed into broader ROI measurement, but they're not interchangeable.

Chart

Why a 4x ROAS doesn't tell you if you made money

-50%0%50%100%150%200%20% margin30% margin40% margin50% margin60% margin70% marginROI on ad spendGross margin tier
Frequently asked

ROI vs ROAS: common questions

ROAS divides campaign revenue by ad spend — a top-line ratio that ignores product cost and overhead. ROI divides profit (revenue minus COGS, fees, fulfilment, returns, and other costs) by total investment. ROAS tells you if a campaign generated revenue; ROI tells you if it generated money.

Yes, and it's common in low-margin categories. A 4x ROAS on a product with 22% gross margin loses money before overhead is counted: €40,000 revenue at 22% margin is €8,800 contribution against €10,000 ad spend. Furniture, electronics, and discounted apparel are the usual offenders.

Optimise daily bidding and creative on ROAS because it has fast, clean feedback. Set the ROAS target by computing your break-even ROAS from contribution margin, then add the profit cushion you need. Review ROI weekly to confirm the ROAS target is actually generating profit at the channel level.

There's no universal number — it depends on your contribution margin. A 70%-margin beauty brand can be profitable at 1.5x ROAS; a 25%-margin electronics store needs 4x+ just to break even on ad spend. Calculate your break-even ROAS as 1 / contribution margin, then aim above that.

POAS (Profit on Ad Spend) is the bridge metric: it has the speed of ROAS (per-campaign, near real-time) but uses gross profit as the numerator instead of revenue. For stores with mixed margins, POAS replaces ROAS as the primary dashboard metric because it stops treating a low-margin sale as equivalent to a high-margin one.

True ROI nets all attributable costs: COGS, payment processing, fulfilment, returns, discounts, and a share of overhead (tools, salaries, warehousing). Stores often report a simplified contribution-margin ROI that stops at variable costs, which is fine for channel decisions but overstates profitability at the company level.

Meta, Google, and TikTok don't know your margin, return rate, or overhead, so they can only compute revenue-based metrics. ROAS is what they can calculate from pixel data alone. Feeding margin data back into the platform (via enhanced conversions or value-based bidding) lets you move toward POAS-style optimisation.

Returns inflate ROAS and crush ROI. Ad platforms count the initial conversion as revenue and rarely back it out when a return happens 14 days later. For categories with 20%+ return rates (apparel, furniture, fashion accessories), use net revenue after returns when computing the true ROI of a channel.

For acquisition channels with strong repeat behaviour (subscriptions, consumables, beauty), use a 12-month LTV-based ROI to avoid under-investing in channels that look weak on first-order economics. For one-shot purchases (furniture, electronics), first-order ROI is the right denominator. Match the time horizon to the buying cycle.

Not practically. ROI updates too slowly for daily media decisions — you'd be steering with a one-week delay. Keep ROAS for the buying cadence with a margin-adjusted break-even line, and use ROI for weekly channel reviews and quarterly mix decisions. Two metrics, two cadences, two purposes.

Track CAC, channels, and funnel conversion in one place

Metricuno connects ad spend, funnel events, and revenue so you can see CAC by channel, cohort, and campaign — without stitching together five tools.