Almost every founder I meet can calculate ROAS. Divide the revenue your ads brought in by what you spent. Every ad platform is happy to report that number.
Far fewer can tell me the number their ROAS has to beat. Yet that’s the number that matters. A 2.2 can be a great month for one brand and a slow bleed for another.
Here’s a scene I’ve watched play out many times. The Meta dashboard shows a 2.2 ROAS, and the team is happy. Then we work out break-even together, using the brand’s real shipping, payment and returns costs. It comes in at 2.6. Every order those ads bought lost money, and nobody could see it.
After 25 years in marketing and 12 running an agency, I’ve learned that most ROAS problems are margin problems in disguise. So here’s how to calculate ROAS properly for a Shopify brand. Then we’ll find your true break-even ROAS and set targets from contribution margin and repeat purchases, not an industry average.
How to calculate ROAS: the basic formula
The ROAS formula itself is simple. To calculate ROAS, divide the revenue your ads generated by what you spent on them:
ROAS = revenue from ads ÷ ad spend
For example, spend $1,000 on ads that bring in $3,000 of revenue, and your ROAS is 3.0. Some teams write that as 3:1 or 300%. All three mean the same thing: three dollars of revenue for every dollar of ad spend.
The format matters when you set bid targets, though. Meta Ads Manager reports ROAS as a ratio, such as 2.25. Google Ads sets target ROAS as a percentage, so a 500% target means $5 of conversion value for every $1 of spend.
Also, keep in mind that ROAS is not ROI. ROAS measures revenue per ad dollar, while ROI measures the profit left after costs. For instance, at a 3.0 ROAS and the 44.4% contribution margin we’ll work out below, each ad dollar brings back $1.33 of margin. That’s a 33% return on the ad spend, not 300%. The gap between those two numbers is what the rest of this post is about.
Calculate ROAS from the right revenue number
Before you calculate ROAS, decide which revenue goes on top of the fraction. The same month can produce three very different answers:
- Platform ROAS uses the revenue each ad platform credits to itself. It’s useful for steering campaigns inside that platform.
- Shopify-attributed ROAS uses the revenue Shopify credits to each channel. By default, Shopify’s marketing reports use a last non-direct click model.
- Blended ROAS, also called marketing efficiency ratio (MER), divides total Shopify net sales by total ad spend across every platform.
In most accounts I audit, the platforms together claim more revenue than Shopify recorded. That’s because each platform sees only its own touchpoints, so Meta and Google can both claim the same order. Shopify’s own guide makes the same point: two platforms can take credit for one sale, but your store records it once.
Meta’s numbers also shifted this year. In January, Meta dropped the 7-day and 28-day view windows from its Insights API. Then in March, it began limiting click-through conversions to link clicks. Conversions from likes, saves and shares moved into engage-through attribution, the renamed engaged-view category. Today, the default setting for website conversion ad sets is now 7-day click, 1-day engage-through and 1-day view. So if your Meta ROAS dipped this spring, check the definitions before you blame the ads.
One more check. Make sure your conversion value matches the revenue you use for break-even. Counting sales tax, for instance, inflates ROAS without adding a dollar of margin.
Why the gross margin shortcut sets break-even ROAS too low
Break-even ROAS is the point where an order’s margin exactly pays for the ads that bought it. Many calculators, and even Shopify’s guide, use a shortcut for it: 1 ÷ gross margin.
The problem is what gross margin leaves out. It subtracts only product cost. However, every order also pays for shipping, packaging, payment processing and returns. In the example below, those costs take more than 20 points of margin. That’s how the shortcut makes a losing campaign look profitable.
So use contribution margin instead. That’s your net revenue minus every cost that rises with each order, before ad spend.
How to calculate break-even ROAS for a Shopify brand
Here’s the four-step process we use. You’ll need about an hour and the last 90 days of your Shopify data.
Step 1: Pull net sales and product cost from Shopify
Start with product cost. Shopify only reports profit for items that had a cost per item recorded when they sold, so fill in that field for every variant first. Then open the Gross profit by product report. Because it calculates margin from net sales, discounts and refunds already come off the top.
Next, open the Profit margin by order report. It adds the shipping costs your store paid, which gets you closer to the real cost of an order. One caution, though: cost per item is a static field. If your landed costs rose this year, update them before you trust the margins.
Step 2: Add every cost that rises with each order
Now add the variable costs that gross margin skips. Leave out fixed costs like salaries and software subscriptions. They matter, but they belong in your profit target, not your break-even line.
- Shipping and fulfillment. Postage, pick and pack, boxes and inserts, minus any shipping the customer paid.
- Payment processing. For standard online cards, Shopify Payments charges 2.9% + 30¢ on Basic, 2.7% + 30¢ on Grow and 2.5% + 30¢ on Advanced. Premium and international cards cost more.
- Returns and refunds. Use your own refund rate. For context, the NRF and Happy Returns estimated that shoppers would return 19.3% of online sales in 2025, and rates vary widely by category.
- Per-order fees. These include 3PL fees, apps that bill per order and Shopify’s extra fee if you use a third-party payment provider.
Step 3: Calculate contribution margin per order
Next, subtract those costs from the order value. In other words, the contribution margin formula is order value minus every variable cost, before ad spend. Here’s an illustrative $80 order from a brand on the Grow plan:
| Per order | Amount | Share of order |
|---|---|---|
| Order value (after discounts) | $80.00 | 100% |
| Product cost | -$28.00 | 35.0% |
| Gross margin | $52.00 | 65.0% |
| Shipping and fulfillment | -$10.00 | 12.5% |
| Payment processing (2.7% + 30¢) | -$2.46 | 3.1% |
| Returns and refunds allowance (5%) | -$4.00 | 5.0% |
| Contribution margin before ads | $35.54 | 44.4% |
Illustrative only. Assumes free shipping, Shopify Payments on the Grow plan and a 5% refund allowance. Swap in your own numbers.
Step 4: Divide to calculate break-even ROAS
To calculate break-even ROAS, divide 1 by your contribution margin:
Break-even ROAS = 1 ÷ contribution margin %
You can also divide order value by contribution margin in dollars. For this order, that’s $80 ÷ $35.54, or about 2.25. By contrast, the gross margin shortcut says 1.54.
Now picture a campaign running at a 2.0 ROAS. Under the shortcut, it looks healthy, earning $12 per order after ads. In reality, each order spends $40 on ads to earn $35.54. So the brand loses $4.46 every time the campaign works.
The same math gives you a break-even cost per acquisition. Divide order value by break-even ROAS, and you get $35.54. That’s the most you can pay for the order without losing money.
Calculate target ROAS for the profit you want
Break-even is the floor, not the goal. Your ads also need to help cover fixed costs and leave a profit. To calculate target ROAS, subtract the profit you want from your contribution margin, then divide 1 by the result:
Target ROAS = 1 ÷ (contribution margin % minus target profit %)
Say you want 10% of revenue left after ads. With a 44.4% contribution margin, your target is 1 ÷ 0.344, or about 2.9. In Google Ads, that’s a 290% target ROAS.
You can use this table as a quick break-even ROAS calculator. Find your contribution margin, then read across:
| Contribution margin | Break-even ROAS | Target ROAS (10% profit) |
|---|---|---|
| 25% | 4.00 | 6.67 |
| 30% | 3.33 | 5.00 |
| 35% | 2.86 | 4.00 |
| 40% | 2.50 | 3.33 |
| 45% | 2.22 | 2.86 |
| 50% | 2.00 | 2.50 |
| 60% | 1.67 | 2.00 |
Break-even ROAS = 1 ÷ contribution margin. Target ROAS = 1 ÷ (contribution margin minus 10%).
Notice how fast the bar rises as margin falls. A brand at 30% contribution margin needs twice the ROAS of a brand at 60% just to break even.
Adjust break-even ROAS for repeat purchases
Everything so far treats the first order as the only order. For many Shopify brands, it isn’t. If new customers come back, you can afford to pay more for that first sale.
Shopify’s Customer cohort analysis report groups customers by when they placed their first order. Set the metric to amount spent per customer, and you’ll see what each cohort spends over time. Shopify can even project future spend from your store’s history.
Say your cohorts show that new customers place 0.4 more orders, on average, within 180 days. If each repeat order earns the same $35.54, a new customer is worth $49.76 in contribution over six months. Then calculate break-even ROAS on the first order with that bigger number. At $80 ÷ $49.76, your 180-day break-even drops to about 1.61.
Two cautions apply. First, only count repeat purchases your data has already proven. Second, a 180-day payback means you fund the gap in cash until those orders arrive. And notice that six months of repeat orders only gets this brand to 1.61. That’s still above the 1.54 the shortcut gives for the first order alone.
This is also why retention and acquisition belong in the same meeting. Every point of repeat rate your email and SMS flows add lowers the ROAS your ads need to hit.
Calculate ROAS for new customers separately
Blended ROAS mixes new buyers with returning customers who might have come back anyway. In my experience, retargeting and branded search are especially good at claiming credit for those returning buyers. That’s why I track new-customer ROAS on its own.
To calculate ROAS for new customers, take the net sales your newest customers generated in their first month. The cohort report shows that figure. Then divide it by total ad spend for that month, and compare the result with your repeat-adjusted break-even, which is 1.61 in our example. Even Shopify’s guide quotes a founder who made new-customer ROAS his top metric as his brand scaled.
What is a good ROAS for a Shopify brand?
A good ROAS is any ROAS above your target. That sounds glib, but it’s the only honest answer.
Benchmarks show why. Triple Whale’s latest data, covering August 2025 through July 2026, puts the median ROAS at 1.88 on Meta across more than 40,000 brands. On Google, the median is 3.27 across more than 21,000 brands. Neither number tells you whether those brands made money.
Google’s figure runs higher partly because search ads catch shoppers who are already looking. Meta usually has to create the demand. Meanwhile, a brand with a 40% contribution margin needs a 2.5 ROAS just to break even, well above the Meta median.
So don’t borrow a target from a benchmark report or a podcast. Instead, build it from your own margins, then judge every channel against it.
Calculate a separate break-even ROAS for Black Friday
Discounts change the math more than most teams expect. Run the same $80 order at 20% off, and it brings in $64, while product and shipping costs stay the same.
As a result, contribution margin falls to $20.77, or 32.5%. Break-even ROAS jumps from 2.25 to about 3.08. A campaign that cleared break-even in September can lose money on Black Friday, even if its ROAS holds steady.
So calculate a Black Friday break-even ROAS before you set budgets, and plan for more returns, too. Retailers expected 17% of holiday sales to come back last season, according to the NRF.
Then protect margin where you can. Gifts with purchase, free-shipping thresholds and bundles often cost less than a straight percentage off. Also, your existing customers can hear about the sale through email and SMS, which costs far less than paid traffic.
Check platform ROAS against MER every month
Platform dashboards are useful for steering campaigns. However, they can’t be your scorecard. Once a month, review these four numbers side by side:
| Metric | How to work it out | Compare it with |
|---|---|---|
| Platform ROAS | Each platform’s conversion value ÷ its spend | Your target ROAS, as a trend |
| Blended ROAS (MER) | Shopify net sales ÷ total ad spend | 1 ÷ contribution margin % |
| New-customer ROAS | First-month cohort net sales ÷ total ad spend | Your repeat-adjusted break-even |
| Contribution margin % | (Net sales minus variable costs) ÷ net sales | Last month and last year |
Then watch the gaps between them. If platform ROAS climbs while MER falls, the platforms are probably claiming sales that would have happened anyway. Even Meta calls incrementality experiments, such as its Conversion Lift studies, the gold standard for measuring what ads actually cause.
Finally, remember that the cheapest way to raise ROAS is usually a better conversion rate, not a new bid strategy. That’s why I’d run a store audit before raising any budget.
The bottom line
Anyone can calculate ROAS. The brands that scale profitably know what their ROAS has to beat, and why.
Build break-even from contribution margin, not gross margin. Set targets that cover your fixed costs, and adjust for repeat purchases only when your cohorts prove them out. Then check platform numbers against Shopify every month, and rerun the math before every major sale. Do that, and you’ll stop asking whether a 2.2 is good. You’ll already know.
Want a second set of eyes on your numbers before Q4 budgets go out? Our Fractional CMO & CTO team would be glad to walk through your margins, attribution and targets with you, and show you where we’d set your break-even line. You can book a time with our team here.
Sources
- Shopify. ROAS calculator guide (September 2, 2026)
- Google Ads Help. About Target ROAS bidding
- Shopify. Measure multichannel marketing with Campaigns (attribution models)
- PPC Land. Meta rewrites click attribution rules, finally aligning with Google Analytics (March 4, 2026)
- Jon Loomer Digital. How Meta Ads Attribution Works in 2026 (March 10, 2026)
- Shopify Help Center. Profit reports
- Shopify. Pricing (Shopify Payments rates by plan)
- National Retail Federation. Consumers expected to return nearly $850 billion in merchandise in 2025
- Shopify Help Center. Customers reports (Customer cohort analysis)
- Triple Whale. Facebook Ad Benchmarks by Industry (Updated 2026 Data)
- Triple Whale. Google Ads Benchmarks by Industry (Updated 2026 Data)

