Step by Step: Adding a Second GA Property via Google Tag Manager

Placing more than one analytics property ID on your website can be very beneficial. This gives you the ability to send analytics data to more than one property in Google Analytics and can be used to analyze different segments of traffic, control access for different groups of stakeholders, link additional features to a particular property, and many many more reasons. Each business will have their own reasoning for sending data to multiple properties – what’s yours? Leave your reasons in the comments section, I’d love to hear!
The days of double tagging a website via code on your page are gone… Well, not really, you can still do it, but I wouldn’t recommend it. In fact, it’s never been a highly recommended practice for a many reasons, here are a couple:
  • Multiple instances of the classic GA tag (ga.js) can result in inaccurate data collection, processing, or reporting. If not setup properly multiple tags can cause competing calls to the cookie, causing the visitor ID to reset with every action on a page (this will 2x, 3x, or more over count you site data)
  • It’s harder to maintain because it’s 2 separate code blocks
What’s the solution then? Google Tag Manager! It’s actually really easy to setup GTM to fire to two analytics properties at the same time. Here’s how to do it in a few quick steps:
Step 1: Create a new gaProperty variable
Assuming you already have the second property created in Google Analytics (if not, this is easy to do under Admin -> Property -> Click the drop down -> Click ‘Create new property’), the first step to setting up a second GA property in GTM is to create a new Constant String Variable for the second GA property. Why use a variable? See this post on the benefits of putting your tracking ID into a constant string variable.
To do this, navigate to Variables -> User Defined -> New and select the type ‘Constant’. Name it something that will you know which property it is reference. In this case, the property number I’m using is -2, so I’m going to name it gaProperty -2. Then add your tracking ID in the value box for Configure Variable and save the variable.
Step 2: Copy your original GA Pageview tag
To do this, open up your GA Pageview tag, scroll to the bottom, and select ‘Copy’ in the bottom right hand corner. Change the name the new Pageview tag to something that will help you understand the difference between this new one and your original. I’m going to name it GA – Pageview -2 to keep with the convention of naming it after the property I’m using.
Step 3: Change the Tracking ID
Next, in the ‘Configure Tag’ section, clear out the current field entry for tracking ID. Then click the + icon and select the new variable you created in Step 1, in this case, {{gaProperty -2}}. Then save the tag.
Step 4: Preview & Debug 
Finally, preview & debug the tag to ensure both Pageview tags are firing as expected on your site. Once you are confident that everything is working as intended, go ahead and publish! It’s that easy!
It’s important to note that you’ll want to go through this same process for all of your current tags (ex. event tags) that are sending data to Google Analytics to ensure that you are getting all of the same relevant data into the new property (if the goal is to have the same data in both places, otherwise just copy the tags you need to send to the new property).
This is the easiest, most straight forward way of sending data to multiple properties, but of course there are work arounds to do this in a bit more of a tech savvy way. If you’re up for getting creative and digging into the code a bit more, check out my friend Simo Ahava’s blog to see his solution for this.
Happy Tagging!

Leave a Reply


  1. thank you for this post! I just saw this in an email sent this morning from Google Analytics, unfortunately in the email the “learn more” button linked to some other unrelated article and not yours. I googled the title and found this. Adding a second property is something I’ve wanted to do for a long time, but I remember hearing that it could cause issues. Do you know what about universal analytics & tag manager allows you to do this when you couldn’t with the classic analytics?


  2. Hi Krista!

    Thanks for such informative post, I was looking for it for long time. However its seems not working properly. For both of my test properties its showing different data. I have two questions:
    1. At the time of set-up User define variable (step 1), should the value will be only Property ID UA-XXXXXX-X or we should add it in some container?
    2. Should I do any Advance setting for new pageview tags (step 3) , for example “Tag firing priority” etc?

    • bloggerchica


      The value should be your property ID and no advanced settings necessary.


      • Thanks Krista! Its working perfectly! Actually there were some spam bot visits on one of the GA ID.

  3. Dan Haggerty

    Hi Krista!
    Thanks for the great post! Do you know if everything works okay if you deploy 2 Classic Analytics tags through the Google Tag Manager in this manner (both tags on the same page). I know, Universal is the future. 🙂 I’m just at a transition point in our migration to UA where I need my two tags to remain “Classic” for a bit longer.

    Any advice you can provide is much appreciated!

    • Krista

      You can definitely deploy 2 classic tags, but note that all GA tracking is now Universal on the backend, so you’ll need to update your front end to Universal Analytics soon.


      • Thanks Krista!!!
        That is a huge help. Yeah, we are in the process of moving everything to Universal ASAP. Fortunately moving everything in to Google Tag Manager sets us up nicely for that.
        Really, really appreciate your help.


  4. Hi Krista,

    Here you have created 2 tags and allotted 2 different property ID to them to fire the pageview tag for 2 different properties.
    Is there any way to send the data to 2 different properties without using 2 tags. I have a lot of tags on my site and so not wish to create multiple tags.


    • Krista

      Hi Pallav,

      Unfortunately there isn’t a good way of doing this without creating duplicate tags right now.


    • Chris

      Is it not possible to achieve this by using a lookup table?

Next ArticleI'm a Woman in Tech: How it Helps Me and Hurts my Gender