When Shopify retired checkout.liquid and the old "Additional scripts" box, a lot of merchants assumed their ad tracking died with it. Some of it did. The part that survived is the part running through the official channel apps, and knowing which is which will save you a panicked afternoon in Events Manager.
Here's where each major platform stands, and what's still yours to handle.
First, check what's actually installed
Open Settings → Customer events. Every pixel on your store is listed there: app pixels registered by your installed apps, and any custom pixels you've added. If you've read our custom pixel guide, you know the rule that matters here: one path per destination, or you double-count.
Meta (Facebook and Instagram)
The Facebook & Instagram app registers an app pixel that covers the standard funnel: page views, view content, add to cart, begin checkout, purchase. It also handles the Conversions API server-side, with event deduplication between the browser pixel and CAPI. That deduplication is the reason to prefer the app over hand-rolling: doing event_id matching yourself inside a custom pixel is fiddly and easy to get subtly wrong.
Still yours to handle: confirming the pixel and dataset are connected in the app's settings after any migration, and checking Events Manager's test events tool against a real add-to-cart. If you ran custom Meta code in checkout.liquid for things like custom audiences on specific URLs, rebuild that logic as audience rules in Meta, not as checkout code.
Google (GA4 and Google Ads)
The Google & YouTube app links your GA4 property and Google Ads account, and sends the ecommerce funnel through its app pixel. For most stores that's enough, and it's maintained by Google and Shopify rather than by you.
The common reason to add a custom pixel anyway: a second GA4 property (an agency property next to the merchant's own, or a staging property), or event parameters the app doesn't send. Our analytics.subscribe reference has the full GA4 wiring if you go that route. Send the duplicate stream to a different property ID, never the same one the app feeds.
TikTok
Same pattern: the TikTok app registers an app pixel plus its Events API server-side, with deduplication handled for you. Connect the pixel in the app settings, verify with TikTok's Pixel Helper or the Events test tool, and resist the urge to also paste TikTok's generic pixel snippet into a custom pixel. That snippet was written for ordinary websites; on Shopify it means every purchase arrives twice.
What genuinely needs a custom pixel now
After the channel apps are doing their jobs, the honest remainder is short:
- Trackers without a Shopify app. Affiliate networks, niche analytics tools, ad platforms outside the big three.
- A second analytics property you control separately from the merchant's primary.
- Custom events the apps don't know about, like quiz completions or size-guide opens, published from theme code with
Shopify.analytics.publishand forwarded by your pixel.
For everything else, the migration is mostly an uninstall job: find the dead snippets from the checkout.liquid era and delete them, because dead code that half-fires is worse than no code. The migration guide covers that cleanup step by step, and Shopify's pixels documentation covers the admin side.
If your setup doesn't fit this shape (server-side tagging, headless, a tangle of legacy pixels nobody remembers installing), get in touch. Untangling tracking is a big part of what we do.

Comments
Every comment here comes from a verified email. Write yours, confirm from your inbox, and it's live.
Loading comments…