Ads Conversions Not Matching Shopify Sales (Attribution)
Introduction
Your Facebook Ads show 220 conversions. Google Ads says 170.
Shopify says you made 300 sales.
Which one is telling the truth?
If your store makes between $500K and $5M/year, you’ve probably seen this exact scenario. And if you’re the founder, the problem is worse — because no one on your team can explain why the numbers don’t line up.
This post breaks down how attribution works, why every platform reports differently, and what we do to make GA4 your reliable source of truth — so you can finally trust what’s working and scale with confidence.
What Is Attribution? (And Why Everyone Measures It Differently)
Imagine this:
A customer sees your Facebook ad on Monday.
They click and browse, but don’t buy.
On Wednesday, they Google your brand.
They click a Google ad, add to cart, but still don’t check out.
On Friday, they come back via direct visit and make a purchase.
So… who gets the credit?
Here’s how it plays out:
- Facebook Ads will claim the sale — it was the first touch.
- Google Ads might claim the sale — they brought the user closest to purchase.
- Shopify credits the last non-direct click — usually Google.
- GA4? Depends on your attribution model.
That’s attribution: the logic each platform uses to decide who deserves credit for a sale.
And that logic varies:
- Last Click: The last touchpoint gets 100% of the credit.
- First Click: The first ad that brought them in gets all the credit.
- Linear, Position-Based, Time Decay: Split the credit across steps.
- Data-Driven Attribution (DDA): Uses machine learning to assign credit based on real observed conversions across sessions and channels.
By default, GA4 (Google Analytics 4) uses DDA across channels, which is why we prefer it — it mimics how actual buying journeys unfold. Meta and Google Ads, on the other hand, use platform-specific click windows and claim conversions in silos.
So when the same customer touches multiple platforms, each one claims the win — even if only one actually closed the sale.
The result? Conflicting reports, broken trust, and a founder who’s flying blind.
Why Kodanik Uses GA4 + GTM as the Source of Truth
At Kodanik, we define the source of truth using GA4 connected through GTM (Google Tag Manager) — for three simple reasons:
- Cross-platform logic: GA4 models full journeys across multiple channels, unlike Meta or Google Ads, which measure in isolation.
- Stable configuration: GTM allows us to fire clean, non-overlapping events — no duplication, no inflated ROAS, no ghost conversions.
- Consistent attribution: When Shopify sends clean purchase events via GTM into GA4, and your UTM tags persist, your source of truth stays intact.
If you’re relying on Shopify alone (last click) or Ads Manager (channel-biased), your decisions are only as good as your blind spots.
What’s Breaking the Attribution
These are the most common failures we fix during audits:
1. Overlapping platform attribution
Both Facebook and Google Ads claim the same conversion. Shopify credits the last click. GA4 splits the credit. Result? Three different numbers for one purchase.
2. Missing UTM parameters
UTMs (Urchin Tracking Modules) are small tags added to your URLs — like ?utm_source=facebook&utm_campaign=spring-sale. They tell GA4 where the visitor came from. If UTMs aren’t preserved through the Shopify checkout, GA4 sees the sale as “Direct.” That means the sale gets no channel credit — and you can’t track what actually worked.
3. Event misfires in GTM
A misfire is when the event doesn’t trigger as expected — or triggers incorrectly.
A double fire is when the same event (like a purchase) fires more than once. We’ve seen stores where GA4 logs the same purchase three times — inflating revenue and breaking ROAS (Return on Ad Spend).
This usually happens when multiple developers or marketers install their own GTM containers without removing old ones. Result:
- Multiple GTM scripts running simultaneously
- Duplicate GA4 tags or conflicting settings
- Slower websites and broken tracking logic
4. Absent purchase data
Sometimes GA4 receives a purchase event — but without the essential fields: transaction_id, value, or currency.
If those are missing, you can’t deduplicate conversions or report revenue. GA4 shows the event happened, but can’t connect it to actual sales.
These issues are invisible if you only check Shopify or Ads Manager reports. You’ll keep tweaking campaigns based on false signals — and the real issue is in your setup.
Still unsure which source to trust?
Read: Shopify vs GA4 – Which Data Can You Trust
How to Align Shopify and Ad Platform Tracking
To fix the attribution gap, here’s what a clean setup looks like:
- Step 1 – Use Shopify’s Custom Pixel and Web Pixel API to send accurate purchase data.
- Step 2 – Implement all tags through GTM, avoiding direct installs from apps.
- Step 3 – Store UTMs in localStorage or cookies, then pass them into GA4 as custom parameters.
- Step 4 – Match attribution windows across Meta, Google Ads, and GA4 where possible.
- Step 5 – Validate everything in GA4 DebugView and use real-time test orders.
Once configured, this lets you map any purchase back to its true journey.
When a customer clicks a Facebook ad, browses, and later buys via Google, your setup should:
- Let GA4 assign fractional credit to both Meta and Google
- Send real purchase values, IDs, and source data
- Match Shopify’s revenue with GA4’s
Now your reports agree — and you stop second-guessing what worked.
Already aligned and ready to scale?
Read: Broken Data Holding You Back? Regain Confidence to Scale
Conclusion
When attribution breaks, performance dies in the dark.
Your Meta team claims growth.
Your Google team blames Meta.
Shopify shows sales, but nobody agrees why.
Fixing the numbers isn’t a luxury — it’s a prerequisite to scale.
Audit your attribution:
- Use GA4 with Data-Driven Attribution
- Fire events via GTM
- Store UTMs across sessions
- Align platforms around a single version of truth
Once attribution is clean, you stop asking “What’s working?” — because the data tells you.
Tired of guessing what’s driving your sales?
Schedule a quick review call — we’ll audit your tracking, fix the attribution, and get your reporting aligned for real growth.