Marek Boratyński
Client had problem with few things.
Once of those were not tracked subscriptions products (biggest and most scalable product in the store).
Other were poor (standard shopify so well average would be better) attribution on facebook ads
There were number of problems with tracking on google ads side (huge double tracking since more or less one year - really bad situation if you ask me)
And number of smaller issues.
After meeting with client (big US based brand beautybyearth) we decided for maxed out solution - so dedicated server side tracking with all enhancements possible in shopify plus.
I used mix of google cloud in manual setup (for flexibility of keeping data on server), GTMs (server and browser side), manual liquid code, customer events code, custom javascript and shopify api code.
Results:
Meta/Facebook
1. 25% increase in attribution
2. TikTok - 20% increase in attribution of manual tracked additional event
3. Google Ads tracking - there was slowly increase in attribution which reached at the end around 30% some days on average being around 20%
4. Refunds tracking in GA4, Facebook
5. Subscription recurring orders tracking and attribution in google and facebook/meta, tiktok
6. General increase of data quality.
Solution:
I decided for mix of native + manual tracking
3 most important channels have native tracking covering Online Store events with CAPI for TikTok and Facebook/META. To increase matching, I'm saving additional parameters used for matching orders later on server side webhooks in the order object.
On purchase, I fired basic code with all IDs and matching and deduplicating data for all channels. (Additionally Donate on Facebook, Place Order on TikTok, secondary purchase on Google Ads) Using Shopify event ID (to make sure deduplication is at 100%)
Every time we have enhancing information, we push it to google ads using custom retargeting code built up on top of native tracking and signal event for Facebook.
On TikTok, an additional event - PlaceAnOrder - was set up manually to double-check and deliver source of truth for PPC specialists.
Google Ads
Here I set up main purchase (primary in name) and secondary purchase that will gradually work better and better once more hook based conversions (server side) will have more matching data saved in it.
The rest of secondary goals was set up to push optimization in the right direction, of course.
Tracking is simple - native with Shopify transaction ID + we use the same transaction id in double check on webhooks. We save browser information into order object (with other matching data too) - and then return it to webhook and use that + transaction_id for deduplication (I do that for all matching data for Facebook and Google Ads and ga4 and TikTok by the way).
On Facebook and ga4 you have refund tracking - which seems to work perfectly :)
Overall tracking was based on webhooks, manual pushes from website, GTM to GTM pushes, customer events and liquid code. I used Google cloud and kept data in Shopify order object and on server (encoded) so every time user is returning to website - we use all existing historically collected data to increase matching - on average - 20% to 30% better attribution. Based on my few years experience - that maxed out Shopify solution. You want it? Simply reach out to me!