Table Of Contents

Table Of Contents

Table Of Contents

How to Calculate Break-Even ROAS and Stop Losing Money on Ads

Tell us your #1 roadblock to

earn more profit.

Tell us your #1 roadblock to

earning more profit.

Tell us your #1

roadblock to

earn more profit.

Share

How to Calculate Break-Even ROAS and Stop Losing Money on Ads

Learn how to calculate break-even ROAS for your Shopify store, the BEROAS formula for per-order and per-product shipping, and how to read it. With worked examples.

how to calculate breakeven roas

A campaign shows 4x ROAS in Meta. The dashboard is green. You scale it. And your bank balance still goes the wrong way at the end of the month.

That gap has a name. It is break-even ROAS (BEROAS), the lowest ROAS at which an ad actually pays for the product it sells. Beat it and you are making money. Sit below it and every sale loses money, no matter how good the platform number looks.

The reason platform ROAS can lie is simple: it counts revenue and ignores what your product cost you to source and ship. BEROAS starts from your real margin instead, so it tells you the floor each campaign has to clear before profit even begins.

Here is how to calculate it for your Shopify store, how to read it at the store and product level, and how to use it to decide what to scale and what to cut.

TL;DR

  • BEROAS is the lowest ROAS at which an ad pays for the product. Below it, every sale loses money.

  • The formula is the Selling price ÷ pre-ad margin. Per-order shipping uses CM1, per-product shipping uses CM2. Pick one and stay consistent.

  • Calculate it at two levels: store-level for budget planning, product-level for deciding which campaigns to scale or kill.

  • The bigger your COGS, the higher your BEROAS, and the harder profit gets. Lowering product and fulfillment cost is the most direct way to make ads work.

  • Platform-reported ROAS ignores your costs, so it can look healthy while you sit below break-even. Compare actual ROAS against BEROAS, not against zero.

What is Break-even ROAS (BEROAS)?

Break-even ROAS is the minimum return on ad spend at which an ad campaign covers the full costs of the product it sells, with zero profit left over. Spend $1 on ads and earn back exactly enough to cover the product and its variable costs, and you have hit your BEROAS. Earn less, and the ad is losing money on every order.

It is sometimes called target ROAS, because it sets the floor your campaigns have to clear. Anything above it is profit. Anything below it is a slow leak.

The key idea is that BEROAS is built from your margin, not from your revenue. Two stores can both run a campaign at 3x ROAS and have completely different outcomes, because one keeps 60% of each sale before ad spend and the other keeps 25%. Same ROAS, very different break-even points.

How is BEROAS Different From ROAS?

ROAS measures how much revenue an ad returns. BEROAS measures how much revenue an ad needs to return before it stops losing money. One is a result, the other is the target that the result has to beat.

ROAS = Total ad revenue ÷ Total ad spend. It tells you that a campaign brought back $4 for every $1 spent. What it does not tell you is whether $4 was enough, because it ignores what the product cost you to make and ship.

BEROAS answers the "enough" question. It folds in your product cost and variable costs first, then tells you the exact ROAS at which the campaign breaks even. A 4x ROAS on a product with a 4.4x BEROAS is a losing campaign, even though 4x sounds strong in a dashboard.

This is why two numbers that look identical can mean opposite things. ROAS is the speedometer. BEROAS is the speed limit. You need both on screen to know whether you are safe.

What Costs Go Into Your Break-even ROAS?

BEROAS is built from your pre-ad margin, which is your selling price minus every variable cost except ad spend. For most Shopify stores, those costs are product cost (COGS), payment transaction fees, and shipping and handling.

Here is the cost stack, in the order it eats into a sale:

  • Product cost (COGS): what you paid for the unit. The single biggest driver of BEROAS for most stores.

  • Transaction fees: the payment processor's cut, typically around 2% to 3% of the order value depending on your plan and gateway.

  • Shipping and handling: the real cost to pick, pack, and ship the order. This is the one that decides which formula you use.

The shipping decision matters more than it looks. If you track shipping per order (which most stores do, because the carrier charges per shipment, not per SKU), you cannot cleanly assign a fulfillment cost to a single product. So your product-level BEROAS is built on CM1, which is the selling price minus COGS, and you handle shipping at the store level. If you genuinely track fulfillment per product, you can build on CM2 and get a tighter target. Do not split an order-level shipping cost across products and call it precise. An estimate dressed up as a number will set a break-even target you cannot trust.

How to Calculate Break-even ROAS Step by Step

To calculate break-even ROAS, divide your selling price by your pre-ad margin in dollars. The pre-ad margin is what is left after you subtract every variable cost the product carries before ad spend. The result is the ROAS your ads must clear to break even on that product.

Here is the process:

  1. Start with the selling price. Use the actual price the customer pays, after any standard discount you run.

  2. Subtract your variable costs. Product cost, transaction fee, and (if you track it per product) fulfillment. What remains is your pre-ad margin in dollars.

  3. Divide the selling price by that margin. Selling price ÷ pre-ad margin = BEROAS.

A quick worked example. A product sells for $100. Product cost is $30, transaction fee is about $3, and you do not track fulfillment per product, so you stop at CM1.

  • Pre-ad margin (CM1, after transaction fee) = $100 − $30 − $3 = $67

  • BEROAS = $100 ÷ $67 = 1.5

So this product needs a ROAS above 1.5 for the ads to make money. At exactly 1.5, the ads pay for the product and nothing else. At 3x, you are clearing the bar with a healthy room to spend more.

If you would rather not run this by hand for every SKU, this is the kind of view Bloom builds automatically from your Shopify data, pulling real COGS, fees, and shipping into a per-product break-even target so you are not maintaining a spreadsheet. We will come back to that.

Store-level vs Product-level BEROAS

You can calculate BEROAS at two levels, and you need both. Store-level BEROAS is for budget planning and seeing the whole picture. Product-level BEROAS is for deciding which specific campaigns to scale, hold, or cut.

Store-level BEROAS rolls every product, fee, and shipping cost into one blended target for the whole store. It is the right tool for setting an overall ad budget and tracking month-to-month health. Because you know your real total shipping spend at the store level, you can build this on CM2.

Product-level BEROAS breaks the target down per SKU, where your actual margins live. This is where you find out that your best-selling product is barely clearing break-even while a quieter SKU has room to triple its spend. Store-level numbers hide this. Product-level numbers expose it.

The pattern most operators fall into is managing ads at the store level and wondering why a healthy blended ROAS is not turning into bank-balance profit. The answer is usually a couple of high-spend products sitting below their own break-even, dragging the average.

Store-Level: A Three-Month Example

Here is a store's ROAS over a quarter. Watch how the story changes once you add the break-even line.

Line item

June

July

August

Sales

$80,000

$90,000

$100,000

COGS

$20,000

$40,000

$52,000

Transaction fees (3%)

$2,400

$2,700

$3,000

Shipping & handling

$5,000

$5,500

$6,000

Pre-ad margin (CM2 base)

$52,600

$41,800

$39,000

Break-even ROAS

1.52

2.15

2.56

Ad spend

$20,000

$33,000

$40,000

Blended ROAS

4.0

2.7

2.5

Reading down the columns, June is a strong month. COGS is low, so the pre-ad margin is fat ($52,600 on $80K of sales), the break-even target is a comfortable 1.52, and the store is running at 4x. That is roughly 2.6 times the break-even line. Plenty of room.

By August, sales were at their highest, but COGS had climbed to $52,000. That pushes the break-even target up to 2.56. Actual ROAS has slipped to 2.5. The store is now running below break-even on its blended ads, even though revenue is at a quarterly high and the 2.5x ROAS still looks fine in a platform dashboard.

The numbers reconcile cleanly. For August: $100,000 ÷ ($100,000 − $52,000 − $3,000 − $6,000) = $100,000 ÷ $39,000 = 2.56. That is the line the 2.5x ROAS fails to clear.

The lesson the store-level view teaches is blunt: your COGS sets your break-even target. The higher your product cost climbs, the higher your ads have to perform just to stay even, and there is a point where the target gets impractical to hit. Rising sales did not save August. Rising COGS sank it.

Product-Level: Where the Real Decisions Happen

Store-level tells you something is wrong in August. It does not tell you which product. For that you go to the SKU level, where each product carries its own cost structure.

Line item

Product 1

Product 2

Product 3

Selling price

$100

$80

$120

Product cost

$30

$47

$80

Transaction fee (3%)

$3

$2.40

$3.60

Pre-ad margin (CM1)

$67

$30.60

$36.40

Break-even ROAS

1.49

2.61

3.30

Ad spend

$30

$20

$50

Product ROAS

3.3

4.0

2.4

Three products, three completely different situations:

Product 1 is the workhorse. It was sourced cheaply ($30 on a $100 price), so the break-even target is a low 1.49 and the product is running at 3.3x. That is more than double break-even. This is where you push more budget.

Product 2 looks healthy at 4.0x ROAS, and it is clearing its 2.61 break-even, but the high product cost ($47) means the margin is thin. It is profitable, but there is less headroom than the raw 4x suggests. Scale it carefully.

Product 3 is the trap. The 2.4x ROAS would pass a casual glance, but its break-even is 3.30 because the product costs $80 to source. It is losing money on every order at the current spend, and at $50 in ad spend it is the highest-spend product of the three. Left alone, a product like this quietly drags down the whole store. This is exactly the kind of product that reads as "fine" on a platform dashboard and shows up as a leak only when you put the break-even line next to it.

Put the two tables together and August's mystery solves itself. The blended ROAS dipped below break-even because spend was concentrated on products like #3, where the real margin could not support it.

How to Read BEROAS Once You Have It

Once you have a break-even target, comparing it against your actual ROAS gives you a clear verdict. There are only three outcomes, and each points to a different action.

  • ROAS > BEROAS: You are profitable on this product or campaign. You have room to scale, and the bigger the gap, the more room you have.

  • ROAS = BEROAS: You are breaking even. No profit, no loss. This is a hold-and-watch zone, or a signal to tighten targeting before you spend more.

  • ROAS < BEROAS: You are losing money on every conversion. Cut spend, fix the cost structure, or pause the campaign.

One caution that applies even when you are above break-even: clearing BEROAS means the ad paid for the product, not that the business made money. You still have operating expenses (software, labor, rent) waiting after the variable costs. A product can beat its BEROAS and still leave too little to cover overhead if you spend right up to the line. The healthy move is to keep a margin buffer above break-even, not to spend until ROAS and BEROAS touch.

This is also the cleanest reason to stop trusting platform ROAS as a profit signal. Meta and Google report ROAS from revenue, with no idea what your product cost or shipping run to. The platform will happily call a 4x campaign a winner while it sits below a 4.4x break-even. The number is not lying about revenue. It is just silent about cost, and cost is the whole game.

BEROAS for Shopify Stores: Where the Numbers Come from

For a Shopify store, every input BEROAS needs already lives in your data, just scattered across places that do not talk to each other. Order revenue and product prices sit in Shopify. Real COGS sit in your product cost fields or a supplier sheet. Ad spend sits in Meta, Google, and TikTok. Shipping cost sits with your carrier or 3PL.

Calculating BEROAS by hand means pulling all of that into a spreadsheet, refreshing it constantly, and redoing the math every time costs change. For one product it is manageable. For a full catalog across three ad platforms, it falls apart fast, and the spreadsheet is usually out of date by the time you act on it.

This is the problem Bloom was built for. Bloom, a profit and attribution app for Shopify stores, pulls real COGS, transaction fees, shipping, and ad spend into one view and calculates break-even ROAS per product automatically. Instead of maintaining a sheet, you see which SKUs are clearing their break-even target and which are sitting below it, with the gap spelled out for each one. The Product 3 situation above stops being something you discover at month-end and becomes something flagged the moment it happens.

It also surfaces the platform-vs-real gap directly, so you can see where a campaign's reported ROAS is sitting above the BEROAS your margins actually require, and where it is not.

Lower Your BEROAS, Protect Your Profit

The single most useful thing the BEROAS lens teaches is that your break-even target is not fixed. It is set by your costs, and costs are something you can work on.

Every dollar you take out of product cost lowers your break-even target and widens the gap between BEROAS and the ROAS you are already getting. A product that needs 3.3x to break even becomes a product that needs 2.5x if you renegotiate sourcing, and suddenly campaigns that were losing money are profitable without changing a single ad. The same goes for shipping and fees, though COGS is usually the biggest lever.

So the playbook is straightforward. Calculate BEROAS before you set budgets, not after. Watch it at the product level, not just the store level. Keep a buffer above break-even so operating costs have somewhere to come from. And keep pressure on the costs that set the target in the first place. Get those right, and every profitable conversion is an edge your competitors running on raw ROAS do not have.

If you want to see your real break-even target by product without building a spreadsheet, Bloom has a free trial that installs on Shopify in a couple of minutes. If you would rather have someone walk through your store's numbers with you first, the consultation call is free too.

Break Even ROAS by Product

Frequently Asked Questions

What Is A Good Break-Even ROAS? 

There is no universal "good" number, because BEROAS is set by your margins, not by a benchmark. A store with low product costs might have a healthy BEROAS of 1.5, while a store with expensive sourcing could sit at 4 or higher. The goal is not a low BEROAS for its own sake. It is keeping your actual ROAS comfortably above whatever your BEROAS happens to be.

Is Break-Even ROAS The Same As Target ROAS? 

They are often used interchangeably, and the math is the same. BEROAS is the point of zero profit, the absolute floor. "Target ROAS" sometimes refers to that floor and sometimes to a goal set above it, where you have built in a profit buffer. If someone gives you a target ROAS, ask whether it is the break-even point or a profit target above it, because the two lead to very different spending decisions.

Should I Calculate Beroas at the Store Level Or the Product Level? 

Both, for different jobs. Store-level BEROAS is for overall budget planning and tracking month-to-month health. Product-level BEROAS is for deciding which specific campaigns to scale or cut, because each product carries its own margin. A healthy store-level ROAS can hide individual products losing money, so the product level is where the real spending decisions get made.

Does A High ROAS Mean I Am Profitable?

 Not necessarily. A high ROAS only means the ad returned a lot of revenue, not that the revenue covered your costs. A 5x ROAS on a product with a 6x break-even target is still a loss on every sale. Profitability depends on whether your ROAS clears your BEROAS, and on leaving enough margin afterward to cover operating expenses like software, labor, and rent.

Know Your Real Profit And
The Ads That Actually Sell.

No need to spend. Just try it on your store.