Truth be told, it is almost completely pointless to run ads if you don’t track your conversions properly. Without a steady conversion tracking setup on Shopify, you cannot optimize your ad campaigns, or spending, rendering the entire endeavor useless.

We have prepared this guide to let Shopify merchants have an accurate Google Ads Conversion tracking setup in Shopify with the best practices applied. We have covered the following topics:

  • How to set up Google Ads Conversions on Shopify
  • What is Google Ads Enhanced Conversions and how you can set up
  • Best practices & toolset on Google Ads & Shopify connection
  • Primary & Secondary conversions
  • Common conversion tracking problems and solutions
Elevate Your Google Ads Performance!

Count more conversions with enhanced data. Expert audit & validation included.

What is Ads Google Ads Conversion Tracking?

Google Ads conversion tracking enables you to monitor the actions taken by visitors on your website subsequent to clicking on your ads. For instance, by implementing Google Ads conversion tracking, you can analyze which specific advertisement from your Google Ads campaign generates the highest number of sales on your online store.

There are several ways to track Google Ads conversions for your Shopify store. We recommend two effective methods to set up Google Ads conversion tracking:

  1. Manual Ads implementation without an app.
  2. Analyzify’s Ads Conversion tracking with GTM.

Chapter 1

How to Set Up Google Ads Conversion Tracking on Shopify

Shopify Conversion Tracking Chapter 1

Without question, the best possible way is to use modern dataLayers and Google Tag Manager. In this way, there will be many checkpoints to make sure the data is 100% accurate. Analyzify does this for you within minutes of launching. You simply need to create Google Ads Conversions in your account and then provide it to your Analyzify app. Of course, we will make sure to include all of these details in your GTM set up and send the data to Google Ads.

Within the last 12 months, as a worldwide trusted analytics partner of Shopify merchants, we have executed over 1000 data analytics setups. Here’s what we recommend on setting up Shopify for Google Ads:

Analyzify’s Google Tag Manager Setup (for Conversion Tracking):

Google Tag Manager renders conversion tracking significantly better than the other techniques. We strongly advise you to use Analyzify’s Conversion Tracking (through GTM) as your primary conversion source.

Manual Google Ads Enhanced Conversion Setup:

Considering the fact that Enhanced Conversions is a new feature, we do NOT recommend utilizing it as the primary conversion. For this new feature, it would be wise for you to establish a new secondary conversion and set it up manually using this guide.

Google Analytics & Google Ads Integration (as a backup):

Having a backup is always a good idea. As a backup to your Google Ads conversion tracking, we strongly advise exploiting Google Analytics 4 purchase tracking. Make sure you set these conversions as secondary conversions.

To set up Google Ads conversion tracking, you should follow these steps:

1- Create a conversion action in Google Ads.

2- Install the global site tag in your Shopify theme.

3- Add the event snippet to your checkout page.

4- Edit conversion values of the purchases (for purchase tracking).

Now, we will explain each step in detail within two setup methods.

First and foremost, regardless of the conversion tracking method you choose, you must begin by creating conversions.


How to create conversions on Google Ads

If you don’t have any conversion created on your Google Ads account yet – we have you covered. Follow the quick guide below and create a new conversion in Google Ads. Creating the conversion is not enough, later on, you will need to connect it with Shopify.

Log in to your Google Ads, click Tools & Settings > Conversions from the top menu

Click New Conversion Action from the right top corner.

Choose Website, and then Conversion Type and name. Choose Purchase, if you are creating a conversion for Purchase

Value: Use different values for each conversion, Count: Every, Add your average value order for the orders that don’t have conversion value.

Choose your attribution model (suggested: Position-Based, and Data-Driven which is going to be the default attribution model soon)

Create and Continue. You have now created the conversion on Google Ads. Follow the next steps to set it up properly on your Shopify store.

Method 1: Basic Conversion Setup (without an app)

It’s the most basic Google Ads conversion setup method for Shopify merchants. We do not recommend this method because it only sends order ID, total purchase amount, and currency metrics. Further methods are better because they include more data.

However, if you prefer setting up conversions manually (by yourself), here is a guide for you:

Go to Google Ads > Conversions and then click the “Purchase conversion” you want to add to your Shopify store. The conversion name can be different from our screenshot. The conversion type should be “website”. If you don’t see any conversion like this, you can create a conversion using the steps in the previous section.

Once you are on the conversion page, click “Tag Setup” and then choose “Google Tag Manager”. It will show you your conversion label ID. Copy both of them. Note: We are not setting up the conversion through Google Tag Manager on this tutorial. But this is the easiest way to get the conversion ID and label.

Step 3: Google Ads Conversion code

Copy the code below. We will update the conversion ID and label in the next step.

gtag('event', 'conversion', {
    'send_to': AW-123456789/pasteconversionlabelhere,
    'value': {{ checkout.subtotal_price | divided_by: 100.0 }},
    'currency': '{{ currency }}',
    'transaction_id': '{{ order_number }}',

Replace the related section with your conversion ID label. The orange highlighted section should be your conversion ID. Don’t delete the AW-, just replace the number.

The green highlighted section is your conversion label.

Visit your Shopify Store Admin > Settings > Checkout > Additional Scripts and paste your code there. It should look like in the screenshot. Make sure to have the trailing slash - forward slash (“/”) - between your conversion ID and label.

Step 6: Validate your setup

Use our complete Google Ads conversion validation guide and make sure your conversion tracking is working properly.

Method 2: Complete Ads Conversion Setup with Analyzify

Analyzify integrates Shopify and Google Ads Conversion via Google Tag Manager (GTM). The best part is that you do not need to be an expert to set up and validate Google Ads Conversions using Analyzify. Here are the tags and events involved:

Google Tag Manager simplifies Google Ads Conversion Tracking. Analyzify’s GTM container already includes the tags; all you need to do is double-check and add your ID and label via GTM.

Primary & Secondary Conversion on Google Ads

Google has brought a concept to conversion tracking called Primary & Secondary Conversion Actions.

To put it simply, this setting allows you to separate the conversions that should take a role on Ads Optimizations from the ones that are there just for reporting purposes.

Chapter 2

Google Ads Enhanced Conversions

Shopify Conversion Tracking Chapter 2


Now we will show you how to set up Google Ads Enhanced Conversions on your Shopify store step-by-step.

We do have a specific guideline and step-by-step tutorial on this topic if you are interested in a more detailed way: Google Ads Enhanced Conversion Setup on Shopify

Before diving into the steps, let’s briefly explain what enhanced conversions are and how they are used.

What is Google Ads Enhanced Conversions

Enhanced conversions uses customer data to help Google Ads attribute more conversions.

When you set properly, Google Ads receives the conversion tag and the relevant customer data (such as name, email, phone, and address).

To utilize enhanced conversions, firstly, you need to activate enhanced conversions within Google Ads. Don’t worry; it only requires a couple of clicks to turn it on. In most cases, we use an existing conversion for this purpose, but you can also create another conversion specifically for enhanced measurement if you prefer.

However, simply activating enhanced conversions within Google Ads is not enough; you must also make additional settings either through GTM (Google Tag Manager) or via the Global Site Tag. 

To complete your enhanced conversion setup on Shopify, you have two options:

  1. Set up with Analyzify through GTM
  2. Set up with Global Site Tag

If you are an Analyzify user, you must proceed through the GTM method. As for the second option, you do not need to be an Analyzify client to utilize this method. We’ll cover both methods below.

How to Set Up Enhanced Conversions

Enhanced Conversion Setup with Analyzify

As a first and reliable option, you can let Analyzify take care of everything for you. Analyzify includes all the necessary variables, triggers, and tags to set up Google Ads enhanced conversions on Shopify using GTM.

Therefore, you don’t need to take any action on GTM to enable enhanced conversions. Our setup accurately captures all the data for you and seamlessly pushes it to Google Ads. Here, we have detailed documentation on Google Ads Enhanced Conversions Setup with Analyzify.

In this scenario, we must remind you that you can only have one enhanced-enabled purchase conversion and no regular (un-enhanced) conversions.

Enhanced Conversion with Global Site Tag

If you’re not an Analyzify client, don’t worry! We’ve got you covered with an open-source, step-by-step tutorial on how to set up enhanced conversions. Follow this comprehensive guide.

Let’s get started.

Click on your “Conversion” and see there is the “Enhanced Conversion” section. If yes, you can continue with the setup

We recommend creating a new conversion as a secondary conversion, and setting up enhanced conversion with that one - to prevent potential problems.

After you activate the enhanced conversion (preferable on a new conversion), choose set up with Global Site Tag option. Type your website and move on.

Choose event snippet and move on.

Stay on the same page, the easiest way is to scroll up and choose Google Tag Manager. It will directly show your conversion ID and label. Save them somewhere. You will need it in the next steps.

Go to your Shopify Admin > Settings > Checkout > Additional Scripts.After > Copy the whole code you see there - just for safety reasons.

You can remove this code block if you are using the same Google Ads Conversion and Label for the enhanced conversions as well. You should leave it as it is if you have created a new conversion for the enhanced.

You most probably have a conversion script there. If you can't see in the first place; you can try searching "AW-" - and search should lead you.

Step 6: Get Analyzify Shopify Enhanced Conversion Code

Copy the long code block you see below. You will need to edit the top section with your own parameters.

     {% comment %}
Analyzify - Enhanced Conversions Tag V1.4
Add your relevant values here. Detailed guideline:
{% endcomment %}
const analyzify = {
  ads_conversion_id: “AW-111111111”,
  ads_conversion_label: “conversionlabelhere”,
  product_id_format: “product_id-variant_id”, // options: product_id-variant_id, variant_id, sku, product_id
  ads_merchant_id: “222222222",
  ads_feed_country: “US”,
  ads_feed_language: “EN”,
  product_id_prefix: “shopify”,
  divider: “_”,
  user_provided_data: ‘email’, // options: all, email, email-phone
  debug: false, // options: true, false
{% comment %}
{% endcomment %}
<!-- Global site tag (gtag.js) - Google Analytics -->
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag(‘js’, new Date());
gtag(‘config’, analyzify.ads_conversion_id, { ‘allow_enhanced_conversions’: true });
<!-- START Google Ads Enhanced Conversions -->
const checkOrderPage = {% if first_time_accessed %}true{% else %}false{% endif %} || window.location.href.indexOf(‘thank_you’) > -1 || analyzify.debug;
if (checkOrderPage) {
    const userProvidedData = {
        email: ‘{{ }}‘,
        phone: ‘{{ }}’ !== ‘’ ? ‘{{ }}’ : ‘{{ }}‘,
        address: {
            first_name: ‘{{ billing_address.first_name }}’ !== ‘’ ? ‘{{ billing_address.first_name }}’ : ‘{{ shipping_address.first_name }}‘,
            last_name: ‘{{ billing_address.last_name }}’ !== ‘’ ? ‘{{ billing_address.last_name }}’ : ‘{{ shipping_address.last_name }}‘,
            street: ‘{{ billing_address.street }}’ !== ‘’ ? ‘{{ billing_address.street }}’ : ‘{{ shipping_address.street }}‘,
            city: ‘{{ }}’ !== ‘’ ? ‘{{ }}’ : ‘{{ }}‘,
            region: ‘{{ billing_address.province_code }}’ !== ‘’ ? ‘{{ billing_address.province_code }}’ : ‘{{ shipping_address.province_code }}‘,
            postal_code: ‘{{ }}’ !== ‘’ ? ‘{{ }}’ : ‘{{ }}‘,
            country: ‘{{ billing_address.country_code }}’ !== ‘’ ? ‘{{ billing_address.country_code }}’ : ‘{{ shipping_address.country_code }}’,
    let userData = {};
    if (analyzify.user_provided_data === ‘all’) {
        userData = userProvidedData;
    } else if (analyzify.user_provided_data === ‘email’) {
        userData = { email: };
    } else if (analyzify.user_provided_data === ‘email-phone’) {
        userData = { email:, phone: };
    gtag(‘set’, ‘user_data’, userData);
    const set_id_format = function(format){
        // Set product id format
        if (format === ‘product_id-variant_id’) {
            return function(item){
            return `${analyzify.product_id_prefix}${analyzify.divider}${analyzify.ads_feed_country}${analyzify.divider}${item.product_id}${analyzify.divider}${item.variant_id}`;
        } else if (format === ‘variant_id’) {
            return function(item){
            return item.variant_id;
        } else if (format === ‘sku’) {
            return function(item){
            return item.sku;
        } else {
            return function(item){
            return item.product_id;
    gtag(‘event’, ‘purchase’, {
        send_to: analyzify.ads_conversion_id + ‘/’ + analyzify.ads_conversion_label,
        transaction_id: ‘{{ order.order_number }}’ || ‘{{ checkout.order_id }}’ || ‘{{ }}’,
        value: Number(Shopify.checkout.total_price_set.presentment_money.amount),
        currency: Shopify.checkout.total_price_set.presentment_money.currency_code,
        discount: == null ? 0 :,
        aw_merchant_id: analyzify.ads_merchant_id,
        aw_feed_country: analyzify.ads_feed_country,
        aw_feed_language: analyzify.ads_feed_language,
        items: => ({
            id: set_id_format(analyzify.product_id_format)(item),
            quantity: Number(item.quantity),
            price: Number(item.line_price),
            google_business_vertical: ‘retail’,
<!-- END Cart Data -->
{% comment %}
END Analyzify - Enhanced Conversions Tag V1.3 Detailed guideline:
{% endcomment %}
Update your parameters

You will need to update the code block with your Shopify store & product feed & merchant center information. You should only update the marked section and not touch the rest of the code.

After adding your own parameters, you should paste this whole code block into the Additional Scripts section that we showed above.

Chapter 3

Common Google Ads
Conversion Tracking Errors

Shopify Conversion Tracking Chapter 3

During the well-over-700 setups we’ve executed, we’ve noticed a long list of mistakes made by either Shopify merchants or their developers. Here are some of the most popular ones:

1. Wrong Conversion Data:

It is not only the setup itself but the correct setup that really matters. Over the years, we frequently hear from our clients that their conversion tracking is active, but counting the conversions wrongly. For example, Google Ads shows 10 sales and $1000 revenue when there are actually 12 sales and $500 revenue. There is no need to discuss these disastrous implications.

Wrong data is even worse than no data as it will mislead your optimization efforts and also Google Ads AI. This is almost always due to a poor set-up — an easy and incredibly costly mistake that has the potential to ruin your business.

You can run our Google Ads Conversion Tracking validation guide to detect & fix the problems you should have.

2. Missing or Duplicated Conversion Tracking:

To avoid having your conversions counted twice, it’s very important for you to have one primary conversion along with proper conversion tracking in place. Visit the “Primary Conversions” section above to see the detailed and screenshot.

3. Not Connecting Google Analytics with Google Ads:

For the best results, connect your Google Analytics 4 Analytics account with Google Ads. Also, don’t forget to import purchase tracking as a secondary conversion. You can check out this guide to see how: Import Conversions from Google Analytics.

4. Wrong Attribution Model:

The majority of Shopify merchants are not familiar with how the various attribution models work, and they stick with the default “Last Click” option. You can have a look at this guide on Google Ads Attribution Models get more information and tips on how to choose the ideal model for your store.

5. Conflict Between Native Integrations & GTM Tags:

Don’t use the GTM tags with the native integrations for the same tags. Google Ads remarketing tags, for example, should not be active on GTM if you’re opting for the official Google App for remarketing events.

For additional insights, take a look at the article called Discrepancy Between Google Ads Conversions and Shopify Orders. You will learn about the common problem that causes Shopify merchants to misinterpret their data, as well as potential solutions.

Chapter 4

What Analyzify can do


Analyzify offers advanced data layers, a full GTM Container, and a solid setup & validation support to let you have a well-working connection between Shopify and Google Tag Manager.

Please keep in mind that Analyzify’s setup includes Google Ads Conversion Tracking & Remarketing Setup. If you happen to experience any problems with our integrations, our support team would be happy to help you right away.

Accurate Conversion Tracking
Advanced conversion tracking setup (through GTM) that works seamlessly & collects more data compared to other integration methods.

Dynamic Remarketing Setup
In-depth dynamic remarketing setup with all events and precise data. A premium, fully-customizable alternative to the official Google app.

Enhanced Conversions and more
The latest enhanced conversion setup which includes remarkably larger data than all other integration methods.

Chapter 5

FAQ on Google Ads Conversion Tracking

Shopify Conversion Tracking Chapter FAQ

Definitely yes! Analyzify’s advanced data layers and Google Tag Manager setup increases the accuracy on your Google Ads tracking. We do send more data to Google Ads to increase the performance in general.

If your ad conversion tracking is not working, you might have a problem due to insufficient or missing setup. But no worries; we have several documents for you to fix problems with your conversion tracking. Here are our troubleshooting guides:

1- Google Ads Conversion Tracking Validation

2- Google Ads – Conversion Health Check

We strongly recommend using the official Facebook App for your product feed, Facebook Pixel, and Facebook Conversion API setup. The native integration works quite well when the setup is done properly.

For Shopify Plus stores, we additionally recommend Analyzify’s Facebook Conversion API connection, as we are able to send more data compared to the native integration.

For regular Shopify stores, the native connection is the best solution at the moment.

Global Site Tag (aka. GTag) is responsible for sending data from your website to Google Ads for remarketing and performance enhancement purposes. This error happens when you don’t have a proper remarketing setup on your website. Follow our Google Ads – Shopify playbook to make sure your settings are correct. You can also contact Analyzify’s support team if you are an existing client.

Events can take up to 48 hours to appear. Also, after publishing your GTM container, it will take up to 48 hours for Google Ads to verify your enhanced conversion. Please be patient and wait for at least two days.