ROAS calculator

ROAS (return on ad spend) is revenue divided by ad spend. Enter up to three campaigns below to compare them and see a blended total — nothing is saved or sent anywhere, it's all calculated in your browser.

ROAS calculator

CampaignAd spendRevenueROAS
$
$
—
$
$
—
$
$
—
—Blended ROAS

Blended ROAS sums spend and revenue across every row that has both fields filled in. Leave rows 2–3 blank to check just one campaign.

ROAS is revenue, not profit.

ROAS = Revenue ÷ Ad Spend. Spend $5,000 on Meta ads, generate $21,000 in revenue from those ads, and your ROAS is 4.2x — for every $1 spent, $4.20 came back in revenue. That's not $4.20 in profit; it's $4.20 before you subtract the cost of the goods, shipping, payment processing, and everything else that went into making that sale.

That distinction is why two brands can both report a "good" 4x ROAS and be in completely different financial positions. A brand with 70% gross margin is comfortably profitable at 4x. A brand with 20% margin is losing money at 4x, because it needs roughly 5x just to break even (see the table below, or use the break-even ROAS calculator to check your own margin). ROAS on its own doesn't tell you which one you are — you have to bring your margin into it.

There's no universal "good" ROAS.

Every commonly cited ROAS target (3x, 4x, "aim for 4-5x") is implicitly assuming a gross margin. Here's the same rule of thumb broken out by margin, so you can see which assumption it's making:

Gross marginBreak-even ROASRough comfortable range
20%5.0x6–7x
30%3.3x4–5x
40%2.5x3–4x
50%2.0x2.5–3x
60%1.7x2–2.5x

"Break-even ROAS" is 1 ÷ gross margin — the point where revenue covers cost of goods with nothing left over. The "comfortable range" column is a commonly cited buffer above that, not a precise target — it ignores fixed costs, returns and non-ad marketing spend, so treat it as a starting point. Run your own numbers in the break-even ROAS calculator.

Where ROAS quietly misleads people.

Platform-reported ROAS is usually optimistic. Meta and Google attribute a sale to an ad if someone clicked (or in some cases just viewed) it within their attribution window, even if they later found you again through a Google search or a friend's recommendation. Add up every platform's self-reported ROAS and it will typically overstate what your ads actually drove, because more than one platform can claim credit for the same sale.

It ignores everything after the ad click. Returns, discount codes, and payment processing fees all reduce what that revenue is actually worth, and ROAS doesn't know about any of them.

It's not comparable across channels with different margins. A 3x ROAS on a high-margin add-on product and a 3x ROAS on a low-margin loss leader are not equally good, even though the number is identical.

The window itself moves. On March 3, 2026 Meta announced that click-through attribution for website and in-store conversions would change to count only link clicks, moving shares, saves and other non-link interactions into a renamed "engage-through attribution", and lowering the video engaged-view threshold from 10 seconds to 5. Nothing about your ads changed on the day that rolled out, but the ROAS your reports showed did. If you're comparing this quarter's ROAS with last year's, check whether the number was measured the same way.

Because of the attribution problem specifically, a lot of DTC marketers track MER (total revenue ÷ total marketing spend) alongside or instead of platform ROAS — it can't be inflated by double-counted attribution, since it only looks at what actually came in and what actually went out.

The cheapest attribution audit is asking the customer.

A store owner selling tech hardware added one open-text question to their post-purchase page — "Where did you hear about us?" — and posted the result to r/shopify.

The results were immediately humbling. A surprising number of people said Reddit, word of mouth, or "a friend told me" channels we weren't tracking at all. Facebook barely showed up, even though it was eating most of our budget.

r/shopify · u/willzhong · Apr 2026

Worth reading with the same skepticism you'd apply to platform ROAS: a post-purchase survey only hears from people who bought, and it records what they remember rather than what they saw. The useful move is triangulation — platform ROAS above, a self-reported survey, and MER across the whole business. When all three disagree, the truth is usually that several channels touched the same sale.

Check the number a different way.

Questions about ROAS

Is ROAS the same as profit margin?
No. ROAS only compares revenue to ad spend — it says nothing about the cost of goods, shipping, payment fees or any other cost of doing business. A high ROAS can still be an unprofitable sale if margin is thin enough. Use the break-even ROAS calculator to translate your margin into the ROAS you actually need.
Why does my ad platform's ROAS not match my store's actual numbers?
Attribution windows are the usual cause. Platforms count a sale toward ROAS if someone clicked or viewed the ad within a set window (often 1-7 days), even if the actual purchase happened later through a different path, like a direct visit or a search. Running the same revenue and spend numbers from your store (rather than the ad platform) through this calculator gives you the real figure.
Should I use gross revenue or net revenue?
Most platforms report ROAS against gross revenue at the time of purchase, before returns or refunds are deducted. If you want a more conservative, realistic number, use net revenue (after estimated returns) in the revenue field instead — the formula doesn't change, only which number you feed it.
What ROAS should I be targeting?
It depends entirely on your gross margin — there's no single right answer. See the margin table above, or enter your own price and cost into the break-even ROAS calculator for an exact number instead of a rough band.
What's the difference between ROAS and MER?
ROAS is usually calculated per campaign or per platform, using that platform's own attributed revenue. MER (media efficiency ratio) is total store revenue divided by total marketing spend across every channel, so it isn't affected by attribution overlap between platforms — it's a good sanity check when different platforms' ROAS numbers don't add up.
  1. Meta for Business: updates to click attribution: Meta's March 3, 2026 announcement of link-click-only click attribution and engage-through attribution

See where your customers are really talking about you.

No credit card. 7-day free trial.