DTCSKILLS

Break-Even ROAS Calculator for Shopify Brands (and the Math the Free Tools Skip)

Jake Ballard·
Interactive calculator
The order
$

Before any discount

1 for a single, 2 for a two-pack

%

Off list price

% of revenue

Sets your target ROAS. Fixed costs come out of this.

What each order costs you
$
$

Per order. 0 if the customer pays it all.

$

Per order

%

Your 90-day rate

%

Shopify Payments: 2.9 Basic, 2.7 Grow, 2.5 Advanced

$

Per transaction, usually 0.30

Break-even ROAS
2.10x

Revenue per $1 of ads, to lose nothing

Break-even CPA
$22.89

Most you can pay per order and lose nothing

Target ROAS
3.06x

Leaves 15% of revenue after ads

Allowable CPA
$15.69

What to type into a cost cap

Revenue / order$48.00
Contribution margin47.7%
Break-even ACoS47.7%
Cost lineAmountContribution leftBreak-even ROAS
Revenue per order$48.00$48.001.00x
COGSwhere most stop-$14.00$34.001.41x
Shipping you pay-$6.00$28.001.71x
Pick, pack, packaging-$1.50$26.501.81x
Card fees-$1.69$24.811.93x
Refund allowancereal floor-$1.92$22.892.10x

A COGS-only calculator says 1.41x. Your floor is 2.10x. The gap is 49% of money that leaves on every order whether you count it or not.

DiscountPrice, 1 unitContributionMarginBreak-even ROAS2-pack break-even
Full pricecurrent$48.00$22.8947.7%2.10x1.79x
10% off$43.20$18.4242.6%2.35x1.94x
15% off$40.80$16.1839.7%2.52x2.03x
20% off$38.40$13.9536.3%2.75x2.15x
25% off$36.00$11.7232.5%3.07x2.31x
30% off$33.60$9.4828.2%3.54x2.51x
40% off$28.80$5.0117.4%5.75x3.23x

The 2-pack column assumes both units ship in one box, so shipping, pick/pack, and the fixed card fee are split across two units. That is why a bundle at the same discount usually has a lower floor than a single, and why offer structure beats discount depth in a Black Friday plan.

Take the math with you

Copies the spreadsheet formulas with your numbers filled in. Paste into Google Sheets or Excel.

The bottom line

You need 2.10x to lose nothing and 3.06x to keep 15% after ads. If the account runs below that, fix the offer first, then the creative. Scaling budget makes the same loss bigger.

Email me these numbers

Your floor, target, cost waterfall, discount table, and the sheet formulas, in one email.

Youll also get the Operators Brief, our newsletter for $1M-$50M Shopify brands. Unsubscribe any time.

Break-even ROAS is the return on ad spend where a sale stops losing money and hasn't started making any. For most Shopify brands the real number sits between 2x and 3x, not the 1.3x to 1.5x the free calculators hand you, because the free calculators leave out shipping, payment fees, refunds, and the discount you're about to run. Below is the full math, a worked example you can paste into a spreadsheet, and the discount table that should change how you plan Black Friday.

The interactive calculator above runs exactly this math. It also lives at dtcskills.com/tools/break-even-roas if you want to send it to someone.

This is for operators running paid traffic to a Shopify store. If you sell a $997 course with no COGS and no shipping, your break-even ROAS is about 1.04 and you can stop reading. Physical products are where the number gets interesting, because every line item you forget moves it.

What break-even ROAS actually is

Two formulas, same answer. Use whichever matches the data you have.

The margin version: break-even ROAS = 1 / contribution margin. If you keep 40 cents of every revenue dollar after variable costs, you need $2.50 of revenue per $1 of ad spend to break even. 1 / 0.40 = 2.5.

The per-order version: break-even ROAS = price / (price - variable cost per order). A $48 order carrying $25.11 of variable cost leaves $22.89 of contribution. $48 / $22.89 = 2.10. Same brand, same answer as the margin version, because $22.89 / $48 is a 47.7% contribution margin and 1 / 0.477 is 2.10.

The difference between those formulas and what most people compute is one word: variable. Break-even ROAS uses every cost that scales with an order. It excludes every cost that doesn't (salaries, software, rent, your agency retainer). Those fixed costs belong in your target ROAS, not your break-even. We'll get there.

The inputs the free calculators skip

Here is a worked example. A $48 product, numbers chosen to be typical for a consumable DTC brand rather than pulled from any one client. Watch what each line does to the answer.

Cost line Amount Contribution left Break-even ROAS
Price $48.00
COGS $14.00 $34.00 1.41
Shipping you pay (free-shipping offer) $6.00 $28.00 1.71
Pick, pack, packaging $1.50 $26.50 1.81
Card fees (2.9% + $0.30) $1.69 $24.81 1.93
Refund allowance (4% of price) $1.92 $22.89 2.10

COGS-only break-even: 1.41. Real break-even: 2.10. That's a 49% gap, and every one of those lines is money that leaves your account on every order whether or not you put it in the calculator.

A few notes on the lines, because this is where operators argue with me:

Shipping. If you offer free shipping, the label is your cost and it goes in. If the customer pays shipping, leave it out, or include only the part you subsidize. If you use a threshold ("free over $75"), your blended shipping cost per order is somewhere in between, and your Shopify shipping report will tell you the real average.

Card fees. Shopify Payments charges 2.9% + 30 cents per online card transaction on the Basic plan, 2.7% + 30 cents on Grow, 2.5% + 30 cents on Advanced, per Shopify's own breakdown of processing fees. Third-party gateways add a transaction fee on top. PayPal and installment providers have their own schedules. Use your statement, not a guess.

Refunds. I'm simplifying here. A refund costs you the revenue, sometimes the product, and usually the shipping both ways. The clean way to model it is a refund rate times price, plus a partial write-off on the unit. The shortcut is a refund rate times price and nothing else. The shortcut understates the cost, which is fine as long as you know it does. Use your actual 90-day refund rate. Consumables tend to run low single digits; apparel and footwear run several times that.

What to leave out. Salaries, Klaviyo, Gorgias, your agency, your office. Anything that doesn't change when order 1,001 comes in. Put those in the target, not the floor.

The calculator, on paper

Paste this into a sheet. Column A is inputs, column B is formulas.

A1  Price (after any discount)          48.00
A2  COGS per unit                        14.00
A3  Shipping you pay                      6.00
A4  Pick, pack, packaging                 1.50
A5  Card fee %                            2.9%
A6  Card fee fixed                        0.30
A7  Refund rate                           4.0%
A8  Target profit (% of revenue)         15.0%

B1  Card fees            = A1*A5 + A6
B2  Refund allowance     = A1*A7
B3  Variable cost/order  = A2 + A3 + A4 + B1 + B2
B4  Contribution/order   = A1 - B3
B5  Contribution %       = B4 / A1
B6  Break-even ROAS      = A1 / B4          (equals 1 / B5)
B7  Break-even CPA       = B4
B8  Target ROAS          = 1 / (B5 - A8)
B9  Allowable CPA        = B4 - A1*A8

For the $48 example that returns: break-even ROAS 2.10, break-even CPA $22.89, target ROAS 3.06, allowable CPA $15.69.

Two of those numbers matter more than the ROAS. Break-even CPA is the most you can pay to acquire an order and not lose money on it. Allowable CPA is the most you can pay and still hit your profit target. If you run cost caps or target-CPA bidding, those are the numbers you type in. ROAS is the same information expressed in a way that makes people feel better about it.

Break-even is the floor. Target ROAS is the number you run to

A brand that runs at exactly break-even ROAS all year has paid its suppliers, its carrier, and its payment processor, and nobody else. Payroll comes out of the contribution that's left after ads. So you need a target.

The formula is the same shape: target ROAS = 1 / (contribution margin - target profit margin). Our example brand keeps 47.7% after variable costs and wants 15% of revenue left after ads. 1 / (0.477 - 0.15) = 3.06.

Here's why this matters more than it looks. If your target is 3.1 and Meta shows 2.8 for the month, you didn't almost make it. You acquired every one of those customers at a loss on the first order, and the only question left is whether their second order pays you back. Some brands have the repeat rate to make that a smart trade. Most brands making that trade haven't checked.

Platform ROAS is not the number. MER is

Meta counts its conversions. Google counts its conversions. Add them up and you routinely get more revenue than Shopify actually recorded, because both platforms claim the customer who saw an ad on one and searched on the other. Platform ROAS also blends in returning customers who were going to buy anyway, which makes a mediocre prospecting campaign look profitable.

The number that can't be inflated is MER, marketing efficiency ratio: total store revenue divided by total marketing spend. Shopify's MER guide covers the basics. The version I care about is break-even MER, which is 1 divided by your blended contribution margin across everything you sold. Same 47.7% margin, same 2.10 floor, but now it's measured against real revenue.

Run the two numbers against each other every month:

  • MER above break-even, platform ROAS below it: attribution is undercounting you. Don't cut spend on the platform's say-so.
  • MER below break-even, platform ROAS looks fine: the platforms are taking credit for customers you'd have gotten anyway. The account is losing money and the dashboard is hiding it.
  • Both below: you have a margin problem or a creative problem, and you'll find out which in the next section.

The better version splits new customers from returning ones, so you compare new-customer acquisition cost to break-even CPA directly. Shopify alone won't give you that cleanly. Polar and Kleio will, which is why the DTC Stack reads attribution through them instead of through the ad platforms, and why the Customer Intelligence Engine refreshes blended CAC and MER weekly rather than at the end of the quarter.

Black Friday: what discount can you actually afford

This is the table I wish someone had shown me before my first BFCM. Same $48 product. COGS, shipping, and packaging don't move when you discount. Fees and refunds scale with the price. Break-even ROAS is measured on the discounted revenue, which is what the ad platform will report.

Offer Price Contribution/order Contribution % Break-even ROAS
Full price $48.00 $22.89 47.7% 2.10
15% off $40.80 $16.18 39.7% 2.52
25% off $36.00 $11.72 32.5% 3.07
40% off $28.80 $5.01 17.4% 5.75
2-pack at 25% off, one box $72.00 $31.23 43.4% 2.31

Read the 40% row twice. A 40% sitewide discount on this product needs a 5.75x ROAS to break even. In late November, when CPMs are at their highest of the year. Almost nobody hits that. They hit 3x, call the weekend a win on revenue, and find out in January.

Now read the last row. A two-pack at 25% off has a lower break-even ROAS (2.31) than a 15% discount on a single unit (2.52), and it's far below the 25% single (3.07). The shipping label, the packaging, and the 30-cent card fee get spread across two units in one box. The customer sees a bigger discount. You keep more margin per order.

The offer decision is a margin decision first and a marketing decision second. Build the table for your own catalog before you write a single subject line.

Below break-even? Pull the levers in this order

When an account is running under its floor, the order you fix things in matters, because the first two levers are fast and the last one is slow.

  1. Offer and AOV. Bundles, quantity breaks, and a free-shipping threshold change the denominator in every formula above. This is the fastest way to move break-even ROAS, and it doesn't require the ad platform's cooperation.
  2. Creative. Click-through rate and cost per click are where most below-break-even accounts are actually bleeding. Diagnose before you replace: creative fatigue, awareness mismatch, and audience saturation look identical in a ROAS column and need different fixes. The Ad Creative System's diagnostic mode runs eight decision trees against the account for exactly this, and the Monday ad op is the weekly version.
  3. Landing page and PDP conversion. If the click is cheap and the sale still doesn't happen, the page is the problem. Start with the 12-leak CRO audit and fix the product page before you touch the campaign.
  4. Margin. Renegotiating COGS, changing the shipping policy, or cutting the refund rate moves the floor permanently. It also takes months. Start the conversation now and don't wait on it.

Notice what isn't on the list. Scaling budget doesn't fix a below-break-even account. It makes the same loss bigger, faster.

Break-even ACoS, for the Amazon side

Amazon reports ACoS, which is spend divided by revenue, the inverse of ROAS. Break-even ACoS is simply your contribution margin. Our example brand's 47.7% margin means a 47.7% break-even ACoS on the DTC cost stack. On Amazon, recompute the margin first: the referral fee (15% in most categories) and FBA fulfillment replace your shipping and card fee lines, and your contribution margin will land in a different place. Same formula, different inputs.

Frequently Asked Questions

What is a good ROAS?

There is no good ROAS without a margin next to it. A 4x ROAS on a 20% contribution margin loses money (break-even is 5x). A 2x ROAS on a 60% margin is comfortably profitable (break-even is 1.67x). "Good" means above your target ROAS, which is 1 / (contribution margin - target profit margin), not an industry benchmark.

How do you calculate break-even ROAS for Facebook ads?

The same way as any channel: price divided by contribution per order, where contribution is price minus COGS, shipping, packaging, card fees, and a refund allowance. The Facebook-specific problem is measurement, not math. Meta's reported ROAS includes returning customers and view-through conversions, so compare Meta's number to your break-even with skepticism and check it against MER.

What is the break-even ROAS formula?

Break-even ROAS = 1 / contribution margin, or equivalently price / (price - variable cost per order). Both give the same answer. Variable cost includes COGS, shipping you pay, pick and pack, payment processing, and refunds. It excludes fixed costs like salaries and software.

What is the difference between ROAS and ROI?

ROAS is revenue divided by ad spend. ROI is profit divided by ad spend. At break-even ROAS, ROI is zero. A campaign can show a 2.1x ROAS and a 0% ROI at the same time, which is exactly what break-even means.

How do I improve ROAS when it's below break-even?

In order: raise AOV with bundles or thresholds, then diagnose and replace creative, then fix landing page and product page conversion, then work on margin. Increasing budget is not an improvement lever; it scales the loss.

Does a discount change my break-even ROAS?

Yes, and by more than the discount percentage suggests. A 25% discount on a product with a 2.10 break-even ROAS pushes it to 3.07, because COGS and shipping stay fixed while the revenue shrinks. Bundling at the same discount often produces a lower break-even than discounting a single unit, since shipping and fixed fees are spread across more units.

What is break-even ACoS?

Break-even ACoS equals your contribution margin, because ACoS is the inverse of ROAS. A product with a 40% contribution margin after Amazon's fees has a 40% break-even ACoS. Recompute the margin with Amazon's referral and fulfillment fees before using it.


The math above is the layer under every ad decision, and it's the layer most ad tools skip because it lives in your P&L, not in their dashboard. The DTC Stack's ad skills assume you know your break-even CPA before they write a hook, and the free AI Visibility Audit will tell you where your store is losing the traffic you're paying for. If you want the calculator to read your real Shopify and attribution numbers instead of a form, that's what the Operator Finance skill is being built to do. Until then, the sheet works.

JB
Jake Ballard

Builds AI marketing systems for DTC and Shopify brands doing $1M-$50M. Creator of The DTC Stack.

Free Brand Voice File

Make AI sound like your brand, not a bot.

Answer 7 questions, get a custom Brand Voice file you can paste into Claude, Cursor, or any AI tool for instantly better output. It's one piece of the 49-file Brand Brain - free.

Build My Brand Voice - Free

Just want the playbooks? The Operator's Brief - new skill drops and AI workflows for $1M-$50M Shopify brands. No fluff, no spam.

Build your Brand Brain. Ship on-brand content in minutes.

The DTC Stack is a Brand Brain + 20 AI execution skills for product pages, emails, ads, SEO, and more. One purchase, lifetime access. Works with Claude, Cursor, Copilot, and 30+ AI tools.

One-time purchase. Instant access. Lifetime updates.