Stape hosted a webinar on Google Ads conversion tracking for Shopify! Join us as we walk you through the setup process and unveil industry best practices.
By the end of this webinar, you'll be equipped with the skills to set up Google Ads conversion tracking for your Shopify store. Plus, you'll learn how to leverage server-side tagging to ensure accurate data tracking, bypass ad blockers, tackle third-cookie limitations, and enhance your marketing performance.
For Whom: Shopify store owners, digital marketers, freelancers, and agencies familiar with client-side tracking and curious how to boost Google Ads performance with server-side tracking.
Speaker: Dan Murov, Data Tracking/Measurement Lead at Stape.io
If you will use Stape custom loader.
Requests are very unlikely to be blocked.
Please find more info here: https://stape.io/blog/avoiding-google-tag-manager-blocking-by-adblockers
Our Shopify app sends a webhook to the server GTM on a Purchase event, which cannot be blocked at all.
This topic is quite extensive, so we'll consider running another webinar to cover these questions, as there is no simple and quick answer. However, it is generally possible. Please take a look at these articles: https://stape.io/blog/google-ads-offline-conversion-using-server-gtm and https://stape.io/blog/what-are-webhooks-and-their-use-in-server-side-tracking.
When you insert the code snippet from the app into the custom pixel, you should select ‘not required’ for the consent section. This might help. The snippet itself does not set any cookies or send any data to third parties; you still control it in the GTM. The snippet only generates the dataLayer, so consent permission is not required.
Yes, you can add your own code for DataLayer. Push own events.
There is no deduplication for Google Ads conversion tracking; you can only report from either the client side or the server container. However, you can report to two different conversion actions. In our experience, if the transaction_id is sent from both the web and the server, Google Ads will deduplicate them. Please refer to this link: https://support.google.com/google-ads/answer/6386790?hl=en. We include transaction_id in both, and monitor the number of events, which never doubles. However, for conversions without a unique identifier like order ID, they will be duplicated. Generally, it is not recommended to report from both web and server to the same conversion action.
This feature should be available on all plans. Because Shopify is going to make thank_you page extensibility mandatory by 2025.
Yes, when configuring the settings in the custom pixel for inserting a code snippet that generates a dataLayer, you should set it to 'not required'. The snippet itself doesn't set any cookies or send data to third parties; you still have control over it in GTM.
Yes. For sure.
It depends on how your thank_you page is configured in the checkout section. Some people still use good old order status page script box, but some people already switched to checkout extensibility.
Native Google Ads server-side tag works only based on GA4 requests. It’s impossible to use data tag/data client for the native Google Ads tag. But you can use data tag/data client for Google Ads offline conversion tracking: https://stape.io/blog/google-ads-offline-conversion-using-server-gtm
Not mandatory. You may use one data stream for both domains, just make sure to configure cross domain in your settings.
Yes, it's in the configurations section at the top of the Checkout settings.
Yes. But we add our own because of feedback from customers, as the default one does not always work for some clients.
If you see this inside server GTM. Then that’s totally fine.
Sometimes debugger just freezes for some reason.
You can use automatic dataLayer parsing, but if you want to have a bit more control you can create separate variables (and it’s just easier to debug sometimes in this way). Generally, if you are sure that your dataLayer structure is correct - you may use automatic parsing.
Primary or secondary means whether this conversion action will be used for observation or optimization purposes. So it’s up to you to decide how to use it.
Because there's already a Conversion Linker, it does the same thing.
You may check the event data tab in the server containert preview - you should see your user data there. It will be parsed by the Google tags automatically. You may also check an outgoing hit that is sent from the sGTM and you should see user data there as well, but you should expect it to be hashed already.
You can use a Stape Data tag/Data client. Data tag was created to send data to sGTM and Data client retrieves this data in server GTM. The cool feature of the Data tag is that it can send all data layer information from the web to server GTM, plus a few more features.
Here's more information: https://stape.io/blog/sending-data-from-google-tag-manager-web-container-to-the-server-container
The idea behind tracking begin_checkout, add payment and add shipping events is absolutely identical.
Sandbox is an isolated environment, so you should push the data from the iframe to the top frame for the actual page to have access to it.
There is an endpoint to retrieve new_customer info from the web pixel API, but we’ve observed some bugs with it, hopefully Shopify will fix it soon.
Yes, there will be an error if you do not send any user data with this event. So if you want to have as clean dashboard as possible - enable enhanced conversions only for events where you always have user data, like purchase, lead etc.
It is without. But you can use Stape Data Tag. It can sha256 data before sending to server GTM. Please look here: https://help.stape.io/hc/en-us/articles/6093360291101-Data-Tag
You need to select the correct frame in the browser console. You should look for the one with the name “custom pixel” in it. There will be few ones, but one of them will have the datalayer for the custom pixel.
The process for them is almost identical to Google Ads.
So you can follow the same steps.
Yes, correctly. Server-side Google Ads tags will inherit information from the user data variable you’ve created in web GTM.
Yes, that’s correct. Web pixel API has an enpoint to obtain the real URLs that you see in your browser. And as long as you have correct UTMs - GA4 should read them and attribute properly.
If we understand your question correctly - the tag you are talking about is used to track offline conversions as part of the enhanced conversions for leads functionality.
Please take a look here: https://support.google.com/google-ads/answer/11347292?sjid=15092063564354025697-EU
As far as we know ad Blockers do not check this. It’s the same gtm.stape.io or ss.stape.io for adBlockers.
Cookie Keeper will restore the cookies that were deleted by Sarari ITP for example, using master cookie. Cookie extender will set the cookie from the server, so it’s more persistent than JS set one.
User data is hashed when sent to Google. Data Layer is an on-site object and is not subject to regulations directly.
You do need to add a snippet to 'customer events' section of Shopify, as the app suggests. Other than that - no additional action is needed.
Happy to hear that! Just click Try for free button and see all the options!