Skip to main content
Back to Blog Attribution

Why Shopify Brands Can't Trust Meta's ROAS Numbers

Meta reports a 5x ROAS but your Shopify revenue tells a different story. Learn exactly why Meta attribution inflates your numbers and what to do about it.

Sholto McNeilage

Sholto McNeilage

Founder & Director of Marketing Intelligence

7 min read

Meta says your ROAS is 5x. You do the maths: $20,000 in ad spend should mean $100,000 in revenue. But Shopify shows $65,000 in total sales, from all channels. Something doesn’t add up, and it’s not your maths. Meta’s attribution system is structurally designed to over-credit its own platform, and understanding exactly how it does this is the first step to making better budget decisions.

The Attribution Window Problem

Meta’s default attribution setting is a 7-day click, 1-day view window. This means Meta claims credit for:

  • Any purchase within 7 days of someone clicking your ad
  • Any purchase within 1 day of someone seeing your ad (without clicking)

Think about what this means in practice. A customer sees your Meta ad on Monday morning while scrolling Instagram. They don’t click it, they keep scrolling. That evening, they Google your brand name because they remembered it from a friend’s recommendation last week. They click a Google Shopping ad. They purchase.

Meta counts this as a Meta conversion. Google counts it as a Google conversion. Your Shopify store records one order.

View-Through Conversions: The Hidden Inflator

The 1-day view-through window is where the biggest inflation happens. Meta serves billions of ad impressions daily. Statistically, many people who see your ad would have purchased anyway. They were already in your target audience, already aware of your brand, already planning to buy.

Meta can’t distinguish between:

  • “Saw ad, was influenced, purchased” (genuine attribution)
  • “Saw ad, was already going to buy, purchased” (coincidental attribution)

For stores with strong brand recognition or repeat purchase patterns, view-through conversions can inflate Meta’s reported ROAS by 30-50%.

Key insight: Meta isn’t lying about the data. Every conversion it reports really did happen within the attribution window. The question is whether the ad caused the conversion or merely preceded it, and Meta has no incentive to help you answer that.

The Cross-Platform Double-Counting Problem

Most Shopify stores advertise across multiple platforms. This is what that looks like in attribution reports:

PlatformReported ConversionsRevenue Claimed
Meta Ads180$54,000
Google Ads160$48,000
TikTok Ads40$12,000
Email (Klaviyo)90$27,000
Total Claimed470$141,000
Actual Shopify Orders200$62,000

The platforms collectively claim 2.3x more conversions than actually occurred. This isn’t fraud. It’s each platform using its own attribution window to claim credit for the same purchase.

The customer who saw a Meta ad, clicked a Google ad, received an abandoned cart email, and then purchased gets counted by all three platforms. You paid for three “conversions” but got one order.

The Incentive Misalignment

The uncomfortable truth: Meta’s business model depends on you believing your ads are working. Every feature of their attribution system (the generous windows, the view-through counting, the modelled conversions) is designed to make your ROAS look as high as possible.

This isn’t a conspiracy. It’s rational business behaviour. Meta makes money when you spend more on ads. A higher reported ROAS encourages higher spend. The system works exactly as intended, for Meta.

What Meta’s ROAS Actually Tells You

Meta’s ROAS isn’t useless. It’s just not what you think it is.

What Meta ROAS measures: “Among people who saw or clicked our ads, how much did they spend?”

What you probably want to know: “How much additional revenue did Meta ads generate that wouldn’t have happened otherwise?”

The gap between these two questions is the gap between reported ROAS and actual incremental ROAS. For most Shopify stores, it’s substantial.

The Incrementality Question

The real question isn’t “did people who saw my Meta ads buy things?” (Of course they did. You targeted them because they’re likely buyers.) The real question is “would they have bought anyway without seeing the ad?”

This is called incrementality, and it’s the gold standard of attribution measurement. There are a few ways to measure it:

Lift tests (geo-tests): Turn off Meta ads in specific regions and compare conversion rates. Meta offers this through their Conversion Lift tool, but you need significant spend to get statistically valid results.

Multi-touch attribution: Model all channels together and calculate each channel’s marginal contribution. This is more accessible for most Shopify stores and provides continuous measurement, not just periodic tests.

Marketing mix modelling (MMM): Statistical analysis of spend and revenue data over time. Best for large budgets ($100K+/month) where you have enough data for regression analysis.

The iOS 14+ Elephant in the Room

Since Apple’s App Tracking Transparency launched in 2021, Meta’s attribution data has become even less reliable:

  • Delayed reporting: Conversions can take up to 72 hours to appear, making real-time optimisation impossible
  • Modelled conversions: Meta estimates conversions it can’t directly measure, using statistical models rather than observed data. In some accounts, 30-50% of reported conversions are modelled
  • Reduced event data: The 8-event limit per domain means Meta can’t track the full conversion funnel for complex Shopify stores
  • Audience degradation: Lookalike audiences and retargeting pools are smaller and less precise

Meta has invested heavily in solutions: Conversions API (CAPI), server-side tracking, and their own machine learning models. These help, but they don’t solve the core attribution problem. Meta is still grading its own homework.

Key insight: Even with CAPI server-side tracking properly configured, Meta’s reported ROAS remains inflated because the core issue (generous attribution windows and cross-platform double-counting) is built into the measurement methodology, not the data collection.

What to Do About It

Stopping Meta ads isn’t the answer. For most Shopify stores, Meta is genuinely one of the most effective channels for customer acquisition. The problem isn’t that Meta ads don’t work. It’s that Meta’s reported numbers make them look more effective than they actually are.

Here’s how to get closer to the truth:

1. Compare Meta’s Numbers Against Independent Attribution

Run a dedicated attribution platform alongside Meta’s reporting. When Meta says ROAS is 5x and independent attribution says 3.2x, you know the truth is closer to 3.2x. That’s still profitable. It just means you should set budgets based on 3.2x, not 5x.

2. Watch the Blended Metrics

The simplest sanity check: divide total revenue by total ad spend across all platforms. This is your blended ROAS or Marketing Efficiency Ratio (MER).

MER = Total Revenue / Total Ad Spend

If Meta reports 5x ROAS but your blended MER is 2.5x, something is off. Track MER over time. When you increase Meta spend, does MER go up proportionally? If not, Meta’s incremental value is lower than reported.

3. Run Channel-Off Tests

The most direct way to measure incrementality: turn a channel off and see what happens. But do it carefully:

  • Don’t turn off everything at once. Test one channel at a time in specific regions or audience segments
  • Wait long enough. Allow 2-4 weeks for the effect to stabilise
  • Measure revenue, not ROAS. Did total revenue drop by the amount Meta claimed, or by less?

Most stores that run these tests find that turning off Meta reduces revenue by 50-70% of what Meta claims, meaning Meta’s true incremental value is 50-70% of reported ROAS.

4. Use Multi-Touch Attribution for Budget Allocation

Instead of trusting any single platform’s self-reported numbers, use an independent attribution platform that evaluates all channels together. Models like Shapley values calculate true incremental contribution by analysing what happens to conversions when each channel is added to or removed from the marketing mix.

This doesn’t just correct Meta’s numbers. It shows you the optimal budget allocation across all channels, factoring in synergies and diminishing returns that no single platform can see.

The Honest Numbers Are Still Good

Even after correcting for Meta’s inflation, most Shopify stores find that Meta ads are still highly profitable. A true ROAS of 2.5-3.5x is excellent. The problem isn’t that Meta ads don’t work. It’s that decisions based on inflated numbers lead to suboptimal budgets.

When you know the real numbers:

  • You stop over-investing in channels with diminishing returns
  • You start funding upper-funnel channels that Meta’s own reporting under-credits
  • You make budget decisions based on total business impact, not platform-reported vanity metrics
  • You build resilience against platform changes (the next iOS update, the next algorithm shift)

The stores that thrive long-term are the ones that see their marketing clearly, not through any single platform’s lens, but through an independent view of the complete customer journey.

Frequently Asked Questions

Why is Meta ROAS higher than actual revenue?

Meta uses a generous attribution window (7-day click, 1-day view) and counts conversions that other channels also claim. A customer who saw a Meta ad and then purchased through a Google search gets counted by both platforms. Meta also includes view-through conversions (purchases by people who saw but didn’t click your ad).

How much does Meta over-report ROAS?

The gap varies by business, but independent studies consistently find Meta over-reports by 20-50% compared to actual incremental revenue. For stores running multiple channels, the over-reporting can be even higher due to cross-platform double-counting.

Should I stop advertising on Meta based on inflated ROAS?

No. Meta ads are genuinely effective for most Shopify stores, but the platform over-reports their impact. The goal is not to stop spending. It’s to understand Meta’s true incremental value so you can set budgets based on reality rather than inflated numbers.

How can I get accurate Meta ROAS for my Shopify store?

Use an independent attribution platform that evaluates all channels together. Multi-touch attribution models like Shapley values calculate each channel’s true incremental contribution by analysing what happens to conversions when a channel is added or removed from the marketing mix.

meta-ads roas shopify facebook-ads attribution

See Your Real Attribution Data

Start your 14-day free trial. No credit card required. See what knowledge graph-based attribution reveals about your marketing.