You check Shopify: 50 orders yesterday. You check Meta: 80 conversions. Google Ads: 35. TikTok: 22. None of them agree, and none match the number you trust most.
This is not a bug. Every platform measures differently because every platform has a different definition of what counts as a conversion, when to count it, and who gets credit. Once you understand those differences, the numbers start making sense. More importantly, you learn which number to trust for which decision.
The 6 Reasons Numbers Never Match
Six structural reasons guarantee that Shopify, Meta, Google, and TikTok will never report the same number.
1. Attribution windows
Each platform defines its own window for claiming credit. Meta defaults to 7-day click, 1-day view. Google Ads defaults to 30-day click. TikTok uses 7-day click, 1-day view. Shopify does not use attribution windows at all. It simply records orders as they happen.
A customer clicks a Meta ad on Monday, a Google ad on Wednesday, and purchases on Friday. Both Meta and Google claim the sale. Shopify records one order. This is not double counting. Each platform is answering a different question: "Did my ads contribute to this sale?"
2. View-through attribution
Meta and TikTok count view-through conversions by default. If a customer saw your ad but never clicked, then purchased within 24 hours, it counts as a conversion. Shopify and Google do not measure this way.
This is the single biggest reason Meta reports more conversions than Shopify.
3. iOS privacy restrictions
Since iOS 14.5, roughly 75-85% of iOS users opt out of cross-app tracking. When they do, click IDs (Meta's fbc, Google's gclid) get stripped from URLs. Shopify still records the order, but the ad platform may not see it through browser-side tracking, or it models the conversion statistically.
4. Cookie consent and ad blockers
When visitors decline cookie consent, client-side pixels cannot fire. Ad blockers produce the same result. The order happens in Shopify. The ad platform never receives the event.
5. Cross-device journeys
A customer sees your Instagram ad on their phone, then purchases on their laptop that evening. Shopify records a direct visit. Meta may or may not connect the sessions, depending on whether the user is logged into Facebook on both devices.
6. Refund and cancellation timing
Shopify updates revenue when refunds are processed. TrackBee captures order data at the moment of purchase and does not retroactively adjust. Ad platforms similarly keep refunded orders in their conversion counts.
Shopify vs Meta: Why Meta Shows More
This is the most common discrepancy. Advertisers expect Meta to undercount given the iOS/privacy narrative, but Meta frequently reports more conversions than Shopify attributes to paid social.
View-through conversions.
With 1-day view attribution, every customer who saw your ad and purchased within 24 hours counts, even without a click. This can add 20-50% more conversions compared to click-only measurement.
Modeled conversions.
When Meta cannot directly observe a conversion (opted-out user, ad blocker, stripped click ID), it estimates using statistical models based on patterns from consenting users. These modeled conversions appear alongside directly measured ones in your dashboard.
Multi-touch journeys.
A customer clicks three different ads over two weeks before purchasing. Meta counts one conversion (correctly deduplicated). But Shopify might attribute the purchase to a direct visit or email link.
Meta showing more is expected behavior. It is measuring with a broader definition that includes view-through, modeled, and cross-device conversions that Shopify's session-based model does not capture.
For a deeper breakdown, see Why Meta conversions don't match Shopify.
Shopify vs Google Ads: Why Google Shows Less
While Meta often overcounts relative to Shopify, Google Ads frequently undercounts.
Stricter attribution defaults.
Google relies heavily on click-based attribution. Without a gclid, gbraid, or wbraid attached to the session, Google cannot attribute the conversion. iOS strips these identifiers for a large portion of mobile traffic.
Consent Mode gaps.
Google Consent Mode V2 respects user consent choices. When visitors decline, Google models conversions rather than measuring them directly, and those models tend to be conservative.
Enhanced Conversions coverage.
Google's Enhanced Conversions uses hashed first-party data (email, phone, address) to recover otherwise lost conversions. Without it, Google's coverage drops significantly. Stores with Enhanced Conversions typically see 15-20% more measured conversions.
Conversion action configuration.
If your primary action uses "one per click" counting, repeat purchases get collapsed. If you use data-driven attribution rather than last-click, credit distributes differently than Shopify's straightforward order count.
The fix is often data quality, not campaign structure. See how to fix underreported conversions on Shopify.
Shopify vs TikTok: The Click Attribution Gap
TikTok has a unique challenge. Its content format encourages watching, not clicking. Users see your ad, maybe watch it multiple times, then search for your brand later. The ad drove the sale, but there is no click to prove it.
View-through makes up a larger share.
Because TikTok users click less, a higher percentage of reported conversions come from view-through attribution. If you only look at click-attributed sales, TikTok appears to dramatically underperform.
ttclid stripping on iOS.
TikTok's click identifier (ttclid) faces the same iOS restrictions as Meta's fbc. When stripped, TikTok loses the ability to directly match clicks to purchases.
Newer algorithm, more data-hungry.
TikTok's optimization algorithm is younger than Meta's, making it more sensitive to data gaps. Missing events have a proportionally larger impact on performance.
Server-side tracking helps significantly here. TrackBee customers typically see 19% more captured events and 15% CPA improvement after connecting TikTok server-side.
Why "Which Is Right?" Is the Wrong Question
Each platform is answering a different question with different methodology.
Shopify
answers: "How many orders did I receive?" This is your financial truth.
Meta
answers: "How many conversions were influenced by people seeing or clicking our ads?" This includes view-through, modeled, and cross-device conversions.
answers: "How many conversions can we attribute to ad clicks with reasonable confidence?"
TikTok
answers: "How many conversions were driven by ad views or clicks within our attribution window?"
Trying to reconcile these into a single "true" number is like asking whether a kilometer or a mile is the "correct" unit of distance. The right question is: which number do I use for which decision?
Which Number for Which Decision
Financial reporting: Shopify
Your Shopify revenue (adjusted for refunds) is your financial source of truth. This goes in your P&L and investor reports. No ad platform's revenue number should be used for financial reporting.
Campaign optimization: the ad platform itself
When deciding whether to increase Meta budget or pause a Google campaign, use each platform's own data. The algorithm optimizes based on its own measurement. Overriding Meta's optimization with Shopify attribution means fighting the algorithm instead of working with it.
Budget allocation across channels: a neutral source
When comparing performance across platforms to decide where to shift budget, you need consistent measurement applied to all channels. TrackBee's Accuracy page uses the same last-click attribution logic with verified click IDs across all platforms, giving you an apples-to-apples comparison.
See why consistent data across channels is essential.
Forecasting: blended metrics
Use blended ROAS: total Shopify revenue divided by total ad spend. If you spent $10,000 and generated $50,000 in revenue, blended ROAS is 5x. It ignores organic contribution, but it is consistent and impossible to game.
Diagnosing tracking issues: compare the gaps
When Shopify shows dramatically more orders than all platforms combined, that signals tracking data loss. A sudden drop from one platform points to a platform-specific issue (broken pixel, expired token, consent change). The gap itself is a diagnostic signal.
How Server-Side Tracking Reduces Discrepancies
Client-side tracking is the primary source of data loss. When a pixel cannot fire due to iOS, ad blockers, or consent, the conversion disappears from the ad platform's view.
Server-side tracking sends events directly from your server to each platform's API, bypassing the browser. This means:
Ad blockers do not apply.
The event is server-to-server. No JavaScript to block, no cookie to delete.
Click ID recovery improves.
Server-side systems capture and store click identifiers (fbc, gclid, ttclid, epik) at the session level, even when iOS strips them. The stored click ID gets attached to the conversion event when the customer purchases.
Data enrichment fills gaps.
Events are enriched with hashed customer identifiers (email, phone, address) that client-side pixels cannot access. On Meta, this improves Event Match Quality (EMQ). On Google, it powers Enhanced Conversions.
The gap between Shopify and ad platforms shrinks. Not to zero, because attribution windows and view-through conversions always create some difference. But the data-loss-driven portion gets significantly smaller.
For a full explanation, see what is server-side tracking and how to install it for Shopify.
How to Read TrackBee's Accuracy Page
TrackBee's Accuracy page gives you a neutral view of which orders have click IDs attached and which platform gets credit under last-click attribution.
What it shows.
Every order from your Shopify store, along with captured click IDs. An order with a Meta fbc means the customer arrived via a Meta ad click. A Google gclid means a Google ad click. No click ID means organic, direct, email, or a lost identifier.
What it does not show.
View-through conversions, modeled conversions, or anything not directly tied to a click. This is intentional. The Accuracy page is your ground truth for directly measurable, click-attributed orders.
Interpreting differences with Meta.
If Meta reports 80 conversions and Accuracy shows 50 orders with a Meta click ID, the 30 difference is not "missing." It is view-through conversions, modeled conversions, and cross-device matches. Both numbers are correct for their purpose.
Channel Accuracy view.
This breaks down orders by ad platform using identical methodology for each: did this order have a click ID from that platform? This removes each platform's built-in reporting bias and gives you the cleanest cross-channel comparison available.
Practical takeaway.
Use Accuracy to verify tracking is working, compare channels fairly, and spot data loss (sudden drops in click ID attachment rate). Do not use it to dispute what Meta or Google reports, because those dashboards measure something different.
Frequently Asked Questions
My Meta conversions are double what Shopify shows. Is Meta lying?
No. Meta counts view-through conversions, modeled conversions, and cross-device matches. The difference is a measurement methodology gap, not an accuracy problem.
Google shows far fewer conversions than expected. What should I check?
Verify Enhanced Conversions is active. Check your consent banner configuration. Confirm your conversion action counts "every" conversion rather than "one per click." Learn more about fixing underreported conversions.
Should I change Meta's attribution window to match Shopify?
Changing the window (e.g., to 1-day click only) reduces the reported number but does not change how Meta optimizes. The algorithm uses the full signal regardless of your reporting window. Keep the default and learn to interpret it correctly.
Why does revenue differ between Shopify and TrackBee?
TrackBee captures at the moment of purchase. Shopify adjusts for refunds and cancellations over time. Neither is wrong. They measure at different points in the order lifecycle.
Which attribution model should I use?
There is no single best model. Last-click (TrackBee, Shopify) is simple and verifiable. Data-driven (Google, Meta) distributes credit more broadly but is a black box. Use each for its strengths. See data-driven attribution explained.
Will server-side tracking make all numbers match?
No. It reduces the data-loss portion but attribution windows and view-through conversions always create some gap. The goal is not perfect alignment. The goal is minimizing unexplained gaps so each platform can optimize effectively.
How long should I wait before comparing numbers?
At least 72 hours. Meta takes up to 48 hours to process events. Google and Pinterest can take 72 hours. Comparing Shopify's real-time count with a still-processing platform always shows a temporary gap.



.png)
