Your options for Shopify server-side tracking
There are roughly four ways to get server events out of a Shopify store:
- Shopify's sales channel apps. The Facebook & Instagram app can send Conversions API events at higher data-sharing levels; Google and TikTok have their own apps. Free and simple, one platform at a time.
- Server-side Google Tag Manager, hosted by a service like Stape. Very flexible, but you'll need someone who knows GTM.
- A full analytics or data-layer platform. Strong for large brands, usually priced by orders or revenue.
- A focused server-side tracking app like Settl. Flat monthly price, set up without code, built around getting purchases to the ad platforms and showing ROAS per ad.
Why the order data matters
The strongest signal in Shopify server-side tracking is the order itself. When Shopify marks an order as paid, that's a confirmed sale with a value, a currency, an email and often a phone number. No pixel needs to see the thank-you page for it to exist.
Settl receives that moment straight from Shopify and runs an hourly check for anything missed. That's how purchases from buyers who closed the tab, paid with an accelerated checkout or blocked scripts still reach Meta, TikTok and Google.
Linking the order back to the ad
A paid order is only useful to the ad platform if it can be linked to an ad. Settl does that by saving the click id on your own store the moment a visitor lands from an ad, and keeping it for 90 days. When that visitor buys, even weeks later, the saved click goes along with the purchase.
Hashed email and phone are added too. They help platforms recognise returning buyers and people who switched devices between the click and the purchase.
The browser side still matters. Page views, product views, add to cart and checkout are sent from the browser and from our server with the same event id. The platform keeps one copy of each, and your retargeting audiences fill up with the full picture of who looked at what.
What you see once it runs
Per order, the Settl dashboard shows where the buyer came from, which platforms received the purchase and when. If a platform rejects an event, it's retried automatically and you see that as well.
That delivery log is more useful than it sounds. When Ads Manager reports fewer purchases than you expect, you can check straight away whether the sale was sent and accepted. If it was, the gap is in the platform's matching or attribution window, not in your tracking, and you can stop hunting for a broken pixel.
With your ad accounts connected, you also get spend, sales and ROAS per ad, and advice on which ads to scale and which to switch off. A live map shows who's on your store right now.
When Shopify's free apps are enough
If you only advertise on Meta, spend modestly, and the numbers in Ads Manager are close to your Shopify orders, the Facebook & Instagram app with maximum data sharing may do the job. Shopify server-side tracking through a dedicated app pays off when you run several platforms, see a clear gap between Shopify and your ads manager, or want ROAS per ad in one view.
Common setup mistakes on Shopify
Most problems with server-side tracking on Shopify come from a few avoidable mistakes:
- Two tools sending server purchases for the same pixel, for example the Facebook & Instagram app at maximum data sharing and a tracking app. Pick one server source per platform.
- The same browser pixel loaded by an app and by a custom pixel under Customer events.
- An access token pasted for the wrong pixel or ad account, so events arrive somewhere you're not looking.
- Judging results after one or two days, before late purchases and the algorithm have caught up.
- Forgetting Google, Snapchat or Pinterest: if you spend there, they need purchase data too.