All things Shopify and commerce
Hello everyone,
I would like to report a bug related to Web pixel extension API, and more precisely to "Custom web pixels".
The problem is that Google Ads conversion exports are not working in the "Custom web pixels" environment.
Here's an example code snippet that loads gtag.js script and exports a single Google Ads conversion:
// Load gtag.js script.
const script = document.createElement('script'); script.src='https://www.googletagmanager.com/gtag/js?id=AW-587263117'; script.async = true; document.head.appendChild(script);
// Configure gtag.js script. window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'AW-587263117');
// Export Google Ads single conversion. gtag('event', 'conversion', { 'send_to': 'AW-587263117/vEM1COuix84YEI3Zg5gC', 'value': 1.0, 'currency': 'DKK' });
When this script is used within "Custom web pixels" feature, the gtag.js script is loaded, but the conversion is NOT exported.
When this script is used within a theme, the gtag.js script is loaded and the conversion is successfully exported.
It means that the sandbox environment used by "Custom web pixels" feature prevents the gtag.js script from exporting Google Ads conversions. This is a critical issue, since Google Ads is the most popular marketing platform and "Custom web pixels" feature is here to faciliate integrations with marketing platforms.
I would like to report this issue to the Shopify support team. In order to make debugging this problem easier, I created two test stores that illustrate this problem:
1. https://reaktionteststore.myshopify.com/ (password: admin123)
This store uses the above code snippet in theme.liquid file. The conversion is successfully exported.
2. https://reaktion86.myshopify.com/ (password: admin123)
This store uses the above code snippet in "Custom web pixels" feature. The conversion is NOT exported.
Best regards,
Patryk Tucki
I have the same issue, the Shopify Pixel is not working.
We are having the same issue.
Did you guys find the solution?
Sadly not yet
I'm having the same issue as well.
How did you end up working around this issue? Did you just scrap the custom pixels for now and go back to the old way of doing it? (installing in the theme code & addtional scripts for checkout)
This is what we did for now 😞
We are also experiencing this. I reported it to Shopify Plus customer report and they asked me to reach out to Google instead. I did this and, as you would expect, they basically said that it's a Shopify issue.
I've tried implementing the conversion as both a GTM "Google Ads Conversion Tracking" tag as well as an HTML tag, like in the original post.
What is confounding to me about this issue is that I don't see any errors in the console from either tag approach though I do see the tags being rendered in the DOM. Instead, there is just a lack of the expected network requests to googleadservices.com and doubleclick.net.
Like @pashadev, we're also going to workaround by implementing through Additional Scripts.
You can't load gtag.js within a pixel event. It's trying to get it through googletagmanager.com, and it's hitting a cross-domain restriction within the sandbox environment.
One way to do it is to send the data to the main window using postMessage, catch that, then trigger your event within the theme itself. The top window doesn't have this restriction in place. Small guide to do that here: https://jpallard.com/en/using-shopify-customer-events-for-analytics/
There are other ways to do it if you use server GTM, but that's the quick and dirty way!
Hi, Google shipped a fix for this last week.
The Ads tag code was attempting to read the document location from the top level window because it's not correctly detecting that the iframe it's within is sandboxed.
You should be seeing conversion captured on the ads side now.
Thanks for the update @Dave232! I can confirm that we're seeing conversions again now.
How did you manage to connect Google ads conversion scripts inside Custom Pixel? If possible, please share an example of your code
I'm using the "Google Ads Conversion Tracking" GTM tag. And I'm loading GTM via a Custom Pixel similar to what's described here: https://help.shopify.com/en/manual/promoting-marketing/pixels/custom-pixels/gtm-tutorial
Hi @Dave232
Great news!!
Thank you very much for the update.
Google events tracking is working inside the custom pixel now.
It looks like there is a new issue. We are now seeing the following error in the Google Ads custom web pixel we've been using for conversion tracking:
Uncaught (in promise) DOMException: Failed to execute 'joinAdInterestGroup' on 'Navigator': May only joinAdInterestGroup from an https origin.
at https://td.doubleclick.net
Is anyone else seeing the same thing? From Googles documentation it seems like running this in a sandbox is unsupported.
User | RANK |
---|---|
44 | |
41 | |
40 | |
28 | |
21 |
On our Shopify Expert Marketplace, you can find many trusted third party developers and fr...
By Arno Nov 27, 2023You've downloaded the Search & Discovery app from the Shopify App store, and as you're ...
By Skye Nov 8, 2023The year-end shopping season is just around the corner. Is a flash sale on your radar? Are...
By Jasonh Nov 6, 2023