Tool
Break-Even ROAS Calculator
Find the exact ROAS below which you're losing money, using your own margin and costs, not a borrowed benchmark. Supports standard prepaid stores and COD stores where placed orders and collected orders are different numbers.
Time to use
Under 2 minutes
Requires
Your gross margin and per-order costs
Outcome
A defensible break-even ROAS and acquisition cost target
Two numbers, never one
Observed ROAS is attributed revenue divided by ad spend, on whichever revenue basis and attribution window you or your ad platform are using right now, a snapshot of what already happened. Break-even ROAS is the ratio at which a campaign generates exactly zero profit, calculated from your own gross margin and per-order costs, the number you check that snapshot against. This calculator keeps the two separate and shows both, because collapsing them into one number is how "good ROAS" advice goes wrong.
A worked example: COD break-even
This is a hypothetical, explicitly labeled as such, showing the COD math this calculator runs. A store books orders at a $100 average order value. Based on trailing history, it expects to actually collect around $70 of revenue per placed order, once failed and undelivered orders are accounted for. All expected non-ad costs, cost of goods, collection fees, shipping, returns, and failed-delivery handling, blended, come to $50 per placed order.
Contribution = $70 collected − $50 costs = $20 per placed order
Break-even acquisition cost = $20 per placed order
Break-even ROAS on booked revenue = $100 ÷ $20 = 5.0x
Break-even ROAS on collected revenue = $70 ÷ $20 = 3.5x
Both numbers describe the same business. A dashboard reporting booked revenue will show 5.0x as break-even; one reporting only collected revenue will show 3.5x. Both are correct for what they measure, and the gap between them is exactly the cost of failed deliveries. Use the calculator below with your own numbers.
This example doesn't need a collected-order rate, since it only compares revenue bases. If you also want break-even acquisition cost per collected order, enter your collected-order rate directly in the calculator; it's a separate order-count figure from the $70 collected revenue above, not derived from it.
Calculate your break-even ROAS
Everything you enter stays in your browser. Nothing is sent to Kluck or stored anywhere.
Average order value, or the revenue basis you want break-even measured against.
Revenue minus cost of goods sold, divided by revenue.
Payment fees, shipping, and returns allowance, per order.
Compare to your actual numbers
Optional. Enter a period's ad spend and the revenue you're attributing to it, on whichever attribution window you use. This does not verify Meta's attribution; you choose the window.
Enter ad spend and revenue to calculate your observed ROAS.
What this calculator does not do
- It does not read or verify your Meta ad account, attribution window, or Conversions API setup. The observed ROAS field is whatever you type in.
- It does not know your actual delivery, collection, or refund rates. In COD mode, you supply expected collected revenue and, optionally, your collected-order rate directly; the calculator does not estimate either from the other.
- It does not account for overhead, salaries, or one-time costs. Break-even here covers the order itself before ad spend; overhead sits outside that and can still leave the business unprofitable at break-even ROAS.
- It does not store, transmit, or send your inputs anywhere. Numbers stay local to your browser tab.
After you have your break-even number
- Read What Is a Good ROAS? for category benchmarks, the attribution trap, and how to set a profitable buffer above break-even.
- If your observed ROAS is below break-even, run the 30-Day ROAS Recovery Playbook to diagnose why before changing spend or creative.
- See Facebook Ads Automation for how Kluck reads your live Meta account against a target like the one you just calculated, with every change routed through your approval.
Frequently asked questions
What is break-even ROAS?
Break-even ROAS is the return on ad spend at which a campaign generates exactly zero profit, after cost of goods, payment or collection fees, shipping, and returns, but before overhead. Below it, every additional dollar of ad spend loses money before you account for anything else in the business. The formula is break-even ROAS equals revenue basis divided by break-even acquisition cost, where break-even acquisition cost is your expected pre-ad contribution per order.
What is the difference between observed ROAS and break-even ROAS?
Observed ROAS is attributed revenue divided by ad spend, reported by whichever platform and attribution window you're using, a record of what already happened. Break-even ROAS is a calculation from your own margin and costs, independent of any platform's reporting, the number you check that record against. Compare the two directly: observed ROAS above your break-even ROAS means that spend is profitable, however the ratio looks on its own.
How is break-even different for a COD (cash on delivery) store?
For COD, a placed order and a collected order carry different revenue. Some placed orders never get delivered or paid for, and that failed-delivery cost belongs in the math. This calculator's COD mode asks for booked AOV (what an order is worth if collected), expected collected revenue per placed order (after failed deliveries and refunds), and your total non-ad cost per placed order. It then reports break-even ROAS on both booked and collected revenue, because a dashboard using booked revenue and one using collected revenue will disagree, and both numbers are real.
Why does comparing my actual ROAS ask whether it's booked or collected revenue?
In COD mode, booked and collected break-even ROAS are different thresholds, in the worked example below they're 5.0x and 3.5x for the same business. If you enter an observed ROAS built on booked revenue but compare it against the collected-revenue break-even, or the other way around, the verdict can flip from profitable to unprofitable on a basis mismatch alone, not a real change in performance. Picking the basis explicitly keeps the comparison honest.
Why does per-collected-order CPA need a separate rate, instead of using my revenue numbers?
Expected collected revenue per placed order can fall below booked AOV for reasons that don't change how many orders get collected: partial refunds, discounts, and a mix of order values all lower revenue without losing an order. Dividing revenue by revenue would silently mix a revenue effect into what is meant to be an order-count rate. This calculator asks for the collected-order rate directly, as the share of placed orders you actually collect on, and leaves the per-collected-order CPA blank until you provide it.
Why does the calculator refuse to show a target when contribution is zero or negative?
If expected pre-ad contribution per order is zero or negative, there is no ROAS, however high, that makes that order profitable, because you are already losing money before spending a cent on ads. Showing a break-even ROAS number in that state would be fabricating a target that doesn't exist. Fix margin, non-ad costs, or your collection rate first.
Does Kluck verify my ROAS or attribution using this calculator?
No. This calculator runs entirely in your browser. It does not check your Meta attribution window, Conversions API setup, or ad account data, and the numbers you enter are not sent anywhere. If you want your reported ROAS diagnosed against your actual Meta account, including whether attribution is understating it, that's covered in the What Is a Good ROAS playbook's attribution section, and Kluck's live Meta connection can read that directly once you're connected.
Want this checked against your live Meta account?
Ask your Brand Manager to diagnose your real ROAS.
Open Kluck, connect Shopify and Meta, and ask for a ROAS diagnosis against the break-even number you just calculated.
Open Kluck