How to Calculate Your True ROAS on Shopify (Not the Inflated One)
“We’re getting 4x ROAS on Facebook.”
That’s what the dashboard says. But when you look at your bank account, the math doesn’t add up. You spent $5,000, Meta says you made $20,000 in attributed revenue, but your actual Shopify revenue for the same period is $15,000 — and that includes sales from email, organic, and other channels.
Your real ROAS isn’t 4x. It might be 2x. It might be less.
Platform-reported ROAS is one of the most misleading numbers in ecommerce. Here’s how to calculate the real number and make smarter spending decisions.
The ROAS Formula
ROAS (Return on Ad Spend) is simple:
ROAS = Revenue from Ads / Cost of Ads
If you spent $1,000 on ads and those ads generated $3,000 in revenue, your ROAS is 3.0 (or “3x”).
The tricky part isn’t the formula. It’s the numerator: which revenue actually came from those ads?
Why Platform-Reported ROAS Is Inflated
Problem 1: Generous Attribution Windows
Meta’s default attribution counts any purchase within 7 days of a click or 1 day of a view. Google Ads uses data-driven attribution that can credit clicks from weeks ago.
If a customer clicked your ad on Monday and bought through an email link on Saturday, Meta still claims that revenue. You see it as ad-driven ROAS. Your email platform also claims it. The same $100 order is being counted in two different channels’ ROAS calculations.
Problem 2: View-Through Conversions
Meta counts a sale if someone merely saw your ad (without clicking) and bought within 24 hours. If you run broad awareness campaigns with millions of impressions, statistically some of those people will buy from you. Meta claims all of them.
A store running Instagram Stories ads with 500,000 daily impressions might see Meta claiming dozens of view-through conversions that had nothing to do with the ad.
Problem 3: Statistical Modeling
Post-iOS 14, Meta can’t actually observe a large percentage of conversions. It uses machine learning to estimate what it can’t see. These modeled conversions inflate your ROAS because they’re adding estimated revenue to the numerator while your actual ad spend stays the same.
Problem 4: No Deduction for Returns
Meta counts revenue at the point of purchase. If a customer buys $200 worth of products and returns $150, Meta still shows $200 in attributed revenue. Your real revenue from that customer was $50, but your ROAS calculation includes $200.
How to Calculate True ROAS
Method 1: UTM-Based ROAS (Most Accurate)
This is the gold standard for Shopify merchants.
Step 1: Tag every ad with UTM parameters:
?utm_source=facebook&utm_medium=cpc&utm_campaign=your_campaign_name
Step 2: Capture UTMs on Shopify orders (using an app like Detectly or a custom solution)
Step 3: Export your orders and filter by UTM source
Step 4: Calculate:
True ROAS = Revenue from orders with utm_source=facebook / Facebook ad spend
Example:
- Facebook ad spend: $3,000
- Orders with
utm_source=facebook: 42 orders, $5,880 total revenue - True ROAS: $5,880 / $3,000 = 1.96x
- Meta’s reported ROAS: 3.4x
The gap between 1.96x and 3.4x is significant. At 3.4x, you’d aggressively scale. At 1.96x, you’d optimize first — very different decisions.
Important note: UTM-based ROAS only captures click-through conversions (people who actually clicked your ad). It doesn’t capture legitimate view-through influence. So your true ROAS is likely somewhere between the UTM number and Meta’s number — but much closer to the UTM number.
Method 2: Blended ROAS (Simplest)
If you’re not set up for UTM tracking yet, blended ROAS gives you a reality check.
Blended ROAS = Total Shopify Revenue / Total Ad Spend (all platforms)
Example:
- Total Shopify revenue this month: $45,000
- Total ad spend (Meta + Google + TikTok): $12,000
- Blended ROAS: $45,000 / $12,000 = 3.75x
This doesn’t tell you which platform is performing best, but it tells you whether your overall advertising is profitable. If your blended ROAS is below your break-even point, something is wrong — regardless of what individual platforms claim.
Method 3: Incrementality-Adjusted ROAS
This is more advanced but very powerful. The idea: some of your “ad-driven” sales would have happened anyway (through organic search, direct visits, word of mouth). True ROAS should only count the incremental revenue — the sales that wouldn’t have happened without the ads.
How to estimate it:
- Pick a test period (2 weeks minimum)
- Turn off ads for one geographic region or campaign
- Compare sales in the test group vs the control group
- The difference is your incremental revenue
Incremental ROAS = Incremental Revenue / Ad Spend
This is the most honest ROAS calculation, and it’s almost always lower than platform-reported numbers. But it tells you the true value of your advertising.
Most merchants find that their incremental ROAS is 40-60% of platform-reported ROAS. That’s a huge gap.
What’s a Good ROAS?
There’s no universal “good” ROAS because it depends entirely on your margins. Here’s how to think about it:
Calculate Your Break-Even ROAS
Break-Even ROAS = 1 / (Gross Margin %)
| Gross Margin | Break-Even ROAS |
|---|---|
| 70% | 1.43x |
| 60% | 1.67x |
| 50% | 2.0x |
| 40% | 2.5x |
| 30% | 3.33x |
If your gross margin is 60% and your true ROAS is 2.5x, you’re making money. If your true ROAS is 1.5x, you’re barely breaking even after accounting for other costs.
Account for Hidden Costs
Your break-even ROAS should also factor in:
- Shipping costs (if you offer free shipping)
- Transaction fees (Shopify Payments, PayPal)
- App costs (monthly SaaS fees)
- Returns rate (industry average is 20-30% for apparel)
- Operating costs (your time, team, tools)
Many merchants who think they’re profitable on a 2x ROAS realize they’re actually losing money when they account for all costs.
Practical ROAS Tracking Setup
Weekly ROAS Dashboard
Create a simple spreadsheet with these columns:
| Week | Platform | Ad Spend | Platform ROAS | UTM Revenue | True ROAS | Blended ROAS |
|---|---|---|---|---|---|---|
| W1 | Meta | $2,000 | 3.8x | $4,200 | 2.1x | — |
| W1 | $1,000 | 4.2x | $3,100 | 3.1x | — | |
| W1 | Total | $3,000 | — | — | — | 3.5x |
Track this weekly and you’ll quickly see:
- Which platforms consistently over-report
- Which campaigns have the biggest gap between reported and true ROAS
- Whether your overall ad spend is actually profitable
Campaign-Level Analysis
Don’t just look at platform-level ROAS. Drill into campaigns:
Campaign A (Prospecting): Spend $1,500, UTM Revenue $2,100, True ROAS 1.4x
Campaign B (Retargeting): Spend $500, UTM Revenue $2,800, True ROAS 5.6x
Campaign C (Lookalike): Spend $1,000, UTM Revenue $1,050, True ROAS 1.05x
In this example, Campaign C is barely breaking even. Platform ROAS might show it at 2.5x, making it look healthy. True ROAS reveals it needs optimization or should be cut.
Account for Customer Lifetime Value
ROAS calculated on the first purchase only tells part of the story. If you know your average customer buys 2.5 times over their lifetime, a first-purchase ROAS of 1.5x might actually be very profitable when you factor in repeat purchases.
LTV-Adjusted ROAS = (First Purchase Revenue × Average Purchase Frequency) / Ad Spend
This is particularly relevant for consumable products, subscription businesses, or stores with strong email/SMS retention programs.
Common ROAS Mistakes
Mistake 1: Trusting Platform ROAS Without Verification
This is the most common and most expensive mistake. Always verify with your own first-party data.
Mistake 2: Comparing ROAS Across Platforms
A 3x ROAS on Meta and a 3x ROAS on Google are not equivalent because they use different attribution models. Compare platforms using the same methodology (UTM-based ROAS for both).
Mistake 3: Optimizing for ROAS Instead of Profit
A campaign with 5x ROAS spending $100/day generates $500 in revenue and $400 in gross profit. A campaign with 2.5x ROAS spending $2,000/day generates $5,000 in revenue and $3,000 in gross profit. The “worse” ROAS campaign makes 7.5x more profit.
Scale based on total profit, not ROAS alone.
Mistake 4: Ignoring Time Lag
If your typical customer takes 5 days from first click to purchase, evaluating ROAS after 1 day is meaningless. Give campaigns enough time for the full conversion window before making decisions.
Mistake 5: Not Accounting for New vs Returning Customers
A retargeting campaign with 6x ROAS looks amazing. But if those customers would have bought anyway (through email, direct visit, etc.), the incremental value is much lower. Separate your ROAS analysis for prospecting vs retargeting campaigns.
Start Measuring Real ROAS Today
You don’t need a fancy analytics platform. Start here:
- Calculate your break-even ROAS using your actual margins and costs
- Add UTM parameters to your highest-spend campaigns
- Set up order-level UTM capture on your Shopify store
- Track weekly in a simple spreadsheet
- Compare platform-reported ROAS to your UTM-based ROAS
The gap between what ad platforms tell you and reality can be the difference between growing profitably and slowly bleeding money. The sooner you know your true numbers, the sooner you can make confident decisions about where to invest your ad budget.
Ready to see your true ROAS?
Detectly tracks every UTM, attributes every Shopify order, and shows you which channels actually drive revenue.