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 Conversions setup 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 problems and solutions
Elevate Your Google Ads Performance!

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

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 previous 10 months, as a worldwide trusted analytics partner of Shopify merchants, we have executed over 500 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 both your Universal Analytics and Google Analytics 4 purchase tracking. Make sure you set these conversions as secondary 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)

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.

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 than 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.

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

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.

Primary & Secondary Conversion on Google Ads


Google has brought a new 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.

Before we start, we should make it clear that Enhanced Conversions is a new feature and it is not available for all Google Ads accounts yet.

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

Let’s get started.

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

As this is a new feature 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.3
	SECTION 1: ONLY EDIT HERE
	Add your relevant values here. Detailed guideline: https://analyzify.com/hub/google-ads-enhanced-conversion-setup-on-shopify/
	{% endcomment %}


	{% assign gads_aw_id = "AW-111111111" %}
	{% assign gads_send_to = "AW-111111111/conversionlabelhere" %}
	{% assign product_id = "product_id_variant-id" %}
	{% assign product_id_prefix = "shopify_us_" %}
	{% assign gads_merchant_id = "222222222" %}
	{% assign gads_feed_country = "US" %}
	{% assign gads_feed_language = "EN" %}


	{% comment %}
	SECTION 2: DO NOT EDIT BELOW - ONLY EDIT SECTION 1
	{% endcomment %}

	<!-- Global site tag (gtag.js) - Google Analytics -->
	<script>
	  window.dataLayer = window.dataLayer || [];
	  function gtag(){dataLayer.push(arguments);}
	  gtag('js', new Date());
	  gtag('config', '{{ gads_aw_id }}', { 'allow_enhanced_conversions': true });
	</script>
	{% if first_time_accessed %}

		<!-- START Google Ads Enhanced Conversions  V1.3-->
		<script>
		var enhanced_conversion_data = {
		{% unless checkout.email == blank %}"email": "{{ checkout.email }}",{% endunless %}
		{% unless billing_address.phone == blank %}"phone_number": "{{ billing_address.phone }}",{% endunless %}
		{% unless billing_address.first_name == blank %}"first_name": "{{ billing_address.first_name }}",{% endunless %}
		{% unless billing_address.last_name == blank %}"last_name": "{{ billing_address.last_name }}",{% endunless %}
		"home_address": {
			{% unless billing_address.street == blank %}"street": "{{ billing_address.street }}",{% endunless %}
			{% unless billing_address.city == blank %}"city": "{{ billing_address.city }}",{% endunless %}
			{% unless billing_address.province_code == blank %}"region": "{{ billing_address.province_code }}",{% endunless %}
			{% unless billing_address.zip == blank %}"postal_code": "{{ billing_address.zip }}",{% endunless %}
			{% unless billing_address.country_code == blank %}"country": "{{ billing_address.country_code }}"{% endunless %}
		}
		};
		</script>
		  <!-- END Google Ads Enhanced Conversions  V1.3-->

		<!-- START Cart data V1.3-->
		<script>
		gtag('event', 'purchase', {
			'send_to': '{{ gads_send_to }}',
			'transaction_id': '{{ order.order_number }}',
			'value': Shopify.checkout.total_price_set.presentment_money.amount,
			'currency': Shopify.checkout.total_price_set.presentment_money.currency_code,
			'discount': discount(),
			'aw_merchant_id': {{ gads_merchant_id }},
			'aw_feed_country': '{{ gads_feed_country }}',
			'aw_feed_language': '{{ gads_feed_language }}',
			'items': items()
		});
		
		function discount(){
			return (Shopify.checkout.discount == null) ? 0 : Shopify.checkout.discount.amount;
		}

		function items(){
			var jsonarray = [];
			for (var line_item_count = 0; line_item_count < Shopify.checkout.line_items.length; line_item_count++){
				jsonarray.push({
					id: {% if product_id == "product_id_variant-id" %}'{{ product_id_prefix }}' + Shopify.checkout.line_items[line_item_count].product_id + '_' + Shopify.checkout.line_items[line_item_count].variant_id{% elsif product_id == 'variant-id' %}Shopify.checkout.line_items[line_item_count].variant_id{% elsif product_id == 'sku' %}Shopify.checkout.line_items[line_item_count].sku{% endif %},
					quantity: Shopify.checkout.line_items[line_item_count].quantity,
					price: Shopify.checkout.line_items[line_item_count].line_price
				})
			}
			return jsonarray;
		}
		</script>
		<!-- END Cart data V1.3-->
	{% endif %}
	{% comment %}
	END Analyzify - Enhanced Conversions Tag V1.3 Detailed guideline: https://analyzify.com/hub/google-ads-enhanced-conversion-setup-on-shopify/
	{% 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 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 both your Google Analytics 4 and Universal Analytics accounts with Google Ads. Also, don’t forget to import purchase tracking as a secondary conversion. You can check out this guide to see how.

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 to 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.

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.

Don’t worry, we have prepared an in-depth, step-by-step tutorial to help you validate your Google Ads conversion tracking so that you can easily detect where the problem is.

Feel free to use our guide on Google Ads Conversion Tracking Validation – even if you are not an Analyzify client!

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.