- Inside DTC Marketing Tech
- Posts
- If you're using Shop Pay, you're probably destroying your ROAS without knowing it
If you're using Shop Pay, you're probably destroying your ROAS without knowing it
If you've been wondering why your ad campaigns aren't scaling despite showing purchases in your dashboard, this could be why.I keep seeing the same critical issue destroying ROAS across Shopify stores - especially if your customers are using Shop Pay, Apple Pay, or PayPal.
Here's the problem most stores don't realize
When your customer uses Shop Pay or any express checkout, they jump from your site (yourbrand.com) to a different URL (shop.app/checkout).
A typical customer journey when using express checkout like Shop Pay
Customer clicks your FB/Google ad
Lands on yourbrand.com, browses products
Tries checking out with Shop Pay
Gets sent to Shop Pay’s checkout page aka shop.app/checkout
Completes purchase
Your tracking system sees this as TWO separate journeys because of the URL change:
Journey 1: Ad click → site visit (on yourbrand.com)
Journey 2: Random visit → purchase (on shop.app)


Result: Your ad platforms can't connect the purchase back to your ad. I've seen this affect up to 50% of purchases for stores using express checkout.
"But my Meta pixel shows purchases!"
Yes, you'll see the purchase event, but without the correct GCLID/FbCLID (the identifiers that connect purchases to ads), your ad platforms:
Can't attribute revenue correctly
Report lower ROAS than reality
Get poor data signals for optimization
The reality is that you now have 2 separate GCLID/FbCLIDs associated with the same purchase journey.
If you’re using GTM/GA4? They're likely missing these conversions too.

Quick check to see if you have this issue:
Look at your last 100 orders: What % of your customers used Shop Pay/PayPal/Apple Pay?
Check your attribution: Are you seeing lots of "unknown" or "direct" purchases?
Will every express checkout jump back to the original domain?
One of my clients improved their ROAS from 2x → 3x after fixing this.
They were getting 2x ROAS on paper but couldn't scale. Turned out 40% of their Shop Pay purchases weren't being attributed to ads. Once we resolved this tracking issue, their actual ROAS was 3x.
How you can get ahold of the situation:
A quick temp solution (that I don’t love)
Track how many purchases go through express checkout
Manually factor this into your ROAS calculations
Note: This helps with your own reporting but it does NOT fix the ads’ targeting algorithm training problem
Proper fix requires streamlined tracking that can
Preserve the GCLID/FbCLID through the domain change from yourbrand.com to shop.app/checkout, making sure they jump back to yourbrand.com after the purchase.
Link the purchase back to the original ad click, with the same GCLID/FbCLID
Feed the complete data picture back to your ad platforms
"What about subdomains?" If your checkout is on buy.yourbrand.com, you're fine. The problem only happens with complete domain changes like going to shop.app/checkout
"Any GTM/GA4 solutions?" GTM → GA4 alone won't fix this. You need something that specifically handles the GCLID/FbCLID preservation across domains.
You can either:
Build it yourself (2-3 week dev project)
Ensure your server-side tracking solution handles express checkout
I've helped implement this fix and release it for hundreds of our brands at Aimerce - happy to answer technical questions if you reply to this email.
✌️ Here to help you win,
Yiqi
P.S. If you're wondering whether this affects your store specifically, reply with your checkout setup and I can help you diagnose the issue.