This is your complete guide to transition your Shopify Plus store to using our Google Tag Manager app by Elevar.
Non-Plus Shopify Store User? Use this guide instead.
Here are the required steps for the full implementation:
- Install Our Shopify App & Update GTM ID
- Remove Existing GTM Code
- Update Checkout Thank You Page Snippet
- Import GTM Container
- Enable Google Adwords/Remarketing gtag (optional)
- QA Website in Preview Mode
- Create Test Google Analytics Property
- Update Required GTM Variables
- Publish GTM Container!
- QA & Monitor
Step 1: Install Our Shopify App & Update GTM ID
Once you install our app (it's a one-time $99 purchase. NO recurring fees!), you can move on to the installation instructions where you need to input your GTM container ID.
You will need to grab this ID from your GTM account, input into your Shopify settings, and click Save & Update:
Once you save then we have inserted three snippets into your theme:
- elevar-head.liquid (this inserts GTM container code)
- elevar-body-end (this creates the full dataLayer)
- elevar-checkout-end (this contains GTM and dataLayer for checkout)
And then we've included these snippets in your:
Note: if you do not have access to your checkout.liquid theme file then you will need to contact your Shopify merchant success manager to enable this for you.
That's it! You now have GTM installed on your website through the app.
Step 2: Remove Existing GTM Code
Chances are you already have GTM setup on your website. If you don't then you can skip this step :).
If you do, you likely have it:
- Implemented (hard coded) into your theme.liquid file
- Or implemented via your Google Analytics additional scripts setting
Either way, now that you've installed our app you will need to remove this to prevent duplicate GTM containers on your website.
I show in full detail how to look for this in this related help article
Step 3: Update Checkout Thank You Page Snippet
This next step requires you to copy the script in the app settings found here:
And once you've copied then you can paste into the checkout script settings below.
Please note: don't delete your existing scripts in here without checking first! It's possible you have scripts in here that are for other tracking purposes
Once you're done click save!
Step 4: Import GTM Container
Now it's time to connect your new dataLayer data from your store to Google Tag Manager!
Before importing our pre-built container, perform a backup of your existing live container.
Go to GTM > Admin > Export Container and click to export your workspace (most of the time this is the “Default Workspace”). Save this file just in case!
Now in order to connect your Shopify data to Google Tag Manager we need to create all of the variables, triggers, and tags for these to map to.
Next, you’ll need to import this container into your GTM account.
Go to GTM > Admin > Import Container then follow the steps below. DO NOT SELECT OVERWRITE!
- Select the container you just downloaded above
- Select your preferred workspace (most times this is "Default Workspace")
- Select Merge Container
- Review the detailed changes - if anything doesn’t look correct please email us.
Once you're confident everything is good then click Confirm and you will see the tags, triggers, and variables imported in your Workspace Changes:
Step 5: Enable Google Adwords/Remarketing gtag (optional)
By default, all of the Google AdWords tags are paused. These are the tags required for:
- Global gtag.js script
- Pulling product data into the retail events for dynamic remarketing like shown below:
If you do want these enabled then there are two steps here:
- Update the AdWords - Account ID Variable in GTM. Please ensure your constant is something like AW-123456789 (no dashes in-between the #'s)
- Go to all Adwords - gtag - tags and click "Unpause" in the top right corner of the GTM Tag.
Here is where you find your AdWords variable:
Go to Tools > Audience Manager:
Then go to AdWords Tag > Details:
Then copy your the variable shown here:
Then go to GTM > Variables > UPDATE - AdWords Account > copy your value here:
That's it for the remarketing setup!
To implement AdWords conversion tracking, then follow these next steps as well.
Here is the Adwords Transaction tag that needs your specific AdWords values updated:
And here is where you can find these in Google AdWords. Under "Conversions", either create a new transaction tag or go to your existing:
Here are the AdWords gtags that were imported into GTM for you:
Once you've unpaused each tag you are ready to move on!
If you previously had AdWords scripts or remarketing tags setup then you will need to remove these to prevent duplicate tags from firing.
Step 6: QA Website in Preview Mode
Now you'll need to set GTM into Preview mode and walk through all of your major pages of your website.
You will want to verify the following tags fire on each page as shown below.
Additionally, if you have enabled the AdWords Remarketing tags, you can click into each gtag on each page to verify this data populates:
Homepage & Blog & CMS Pages
All of these pages should have these two pageviews firing:
You will have three tags fire on pageview:
You will also need to verify the dataLayer looks something like this with your product data to push impressions to Enhanced eCommerce:
And then you need to verify clicking a product on a collection page pushes a product click event. I usually do this by right clicking a product to open in a new tab.
Watch this video that shows the EE - Product List Click tag fire twice:
If everything is good then continue to do the same on your search result pages!
Here is an example of the search results tags:
Test all product page types if you have unique templates
On product pages you should see the following:
- UA Pageview
- AdWords gtag - product pages (if you have enabled)
- EE Event - Product Detail View
- IF you add to cart, EE Event - Add to Cart
Now something that we do different is push an additional product detail view hit when a user changes a variant which you can see in the video below.
Why? To account for an accurate % of add to cart by product SKU. Otherwise if we don't push this detail hit then your first default variant will have all of the product views while the additional options won't have any (or minimal). This causes add to cart % and cart to detail view % to be inaccurate
If you send users to a shopping cart then you should see these three tags below:
And we also push an impression list into the dataLayer for your merchandising list analysis which provides your positioning of products in the shopping cart.
In each step of the checkout pages, you should see the following tags fire:
- UA Pageview
- EE Event - Checkout Step
This will send pageview hits to Google Analytics along with the enhanced ecommerce checkout step data shown below:
In order to get the funnel tracking in Google Analytics, you will need to configure this in Google Analytics > View Settings > Enhanced Ecommerce:
Which will then populate the Checkout Behavior Analysis report in Google Analytics:
Checkout Thank You
This last page (the most important) you will want to see the following tags have fired successfully:
- UA Pageview
- EE Event - Transaction
- AdWords - gtag - Thank you (if you have this enabled)
Additionally if you click on the Data Layer tab in the GTM console, you will see all of the data available for your use in Google Analytics, marketing conversion tags, etc.
You'll notice some additional data like:
- Customer Order Count: total # of lifetime orders by the customer
- Customer Total Spent: total # of money paid in lifetime by customer
- Custom Email
- AdWords transaction tag
Personally Identifiable Information (PII)
If you have PII in your Google Analytics pageview hits (email addresses) then you can validate this new setup scrubs this data prior to the hit being sent to GA by doing one of the following:
1. Use the GA Debugger for Chrome, add a fake email to the end of your URL (something like firstname.lastname@example.org), and you should see something like this where the actual email is redacted from the hit:
2. Inside of your Google Analytics Real Time report, find yourself based on the city you are loading the site from and go to the content report which should look something like this:
Step 7: Modify Elevar App Snippets (if required)
If any of your QA tests don't pass from Step 7, then it's likely that you have customizations to your theme that we aren't able to detect with our automated triggers.
Here are a few common examples:
1. Product Detail Views Don't Work
If this happens then it's possible that your product template name has been modified and requires a small config update.
We look for product.liquid so if you have alternative template names then you will need to add additional logic to account for these in the elevar-body-end.liquid file:
2. Add to Carts on PDP not Firing
If this happens on your product detail pages then you will need to adjust the two lines of code shown below. If you need help updating this for your store please chat us.
If you have other issues with testing please don't hesitate to chat us.
Step 8: Update Required GTM Variables
Each container you import into GTM will have a folder called "UPDATE ON INSTALL". Variables found in this folder will be:
- Google Analytics UA account number (ex. UA-12456-12)
- AdWords account number (ex. AW-123-456-789)
If you are transitioning 100% to Google Analytics tracking via GTM instead of native Shopify then we recommend creating a test GA property first and setting this account # first to monitor for a few days.
This will allow you to compare traffic and revenue #'s between your pre-existing property and this new property that is setup via GTM so you feel confident in the data when fully transitioning.
Step 9: Publish GTM Container & Monitor
Once you are ready to go live it's time to publish!
Inside of Google Tag Manager, click the "Publish" button in the top right and confirm your deployment.
Once you've deployed then you can perform the same QA process in preview mode. Just be sure to click "Refresh" inside of GTM if you've made any changes: