How to send Client ID to Google Analytics via Google Tag Manager

Google Analytics identify a user as unique through a combination of unique random number and the first time stamp (i.e. the time of first visit).

This combination is called the ‘Client ID’.

Client ID is created and assigned by Google Analytics cookie _ga.

_ga cookie is made up of following 4 fields:

The third and fourth field together make, what we called the client ID:

Google Analytics cookie can exist only on the device and browser where it has been set up.

Since client ID is stored in a GA cookie, the client ID can exist only on the device and browser where it has been set up.

Because of this reason, by default, Google Analytics can not identify unique users across different web browsers and devices.

In GA reports, ‘client id’ is available as a primary dimension only in the ‘User Explorer’ report:

The user explorer report, show website usage data (sessions, average session duration, bounce rate, revenue etc) for each user, via the ‘Client IDdimension :

Since the ‘Client ID’ dimension is available only in the ‘user explorer’ report, you can not use this dimension in any another GA report.

That makes analyzing website usage data at the user level quite difficult.

The only solution to this problem is to collect client id data through your own efforts and send it to GA as a custom dimension.

Since ‘client id’ is completely anonymous, it can not be used to personally identify a person (unless you choose to combine it with personally identifiable data).

Follow the steps below to send client ID to GA as a custom dimension via GTM:

Step-1: Navigate to your GA property and create a new custom dimension with user level scope:

Step-2: Note down the index number of your custom dimension:

We will use this index number later while setting up custom dimension in GTM.

Step-3: Navigate to your GTM account and create a new JavaScript variable with following code:


try {

   var tracker = ga.getAll()[0];

   return tracker.get(‘clientId’);

 } catch(e) {

   return false;



This variable returns client ID if there is no error. Otherwise it returns false.

The ‘try’ JavaScript statement is used to test a block of code for errors.

The ‘catch’ JavaScript statement is used to handle the error.

Step-4: Create a new event tag which fires on window load event. We are going to use this tag to send client ID as custom dimension to GA:

Note: Here {{GA Default Settings}} is a Google Analytics Settings Variable, I use. It returns the property ID.

Now you may ask, why I am not using the pageview tag (used to send GA data) to send the custom dimension.

The ‘Return Client ID’ javascript variable does not seem to resolve on pageview event:

It seems to resolve on window load event:

In order to send client ID as custom dimension via pageview tag, I would have to fire GA pageview tag on window load event and this is something, I don’t want to do.

Because if I fire GA pageview tag on window load event then it will delay the firing of the tag and can create tracking issues, in case some event fire before the pageview.

So in order to avoid this problem, I am sending client ID as custom dimension via event tag.

I do not want this event tag to impact bounce rate that is why I have set the event, as non-interaction event:

I do not want the event tag to fire, in case the client ID is not successfully retrieved.

That is why, I set the following condition, while creating the window trigger:

Step-5: Preview and publish your GTM container.

You can now use the client ID as primary dimension in GA custom reports:

You can now use the client ID as secondary dimension in GA standard reports:

You can also see client ID data in ‘Top Events’ report under (Behavior > Events):

Do you want to Learn and Master Web Analytics in 8 Weeks?

I get dozens of emails every week from people asking for career advice in web analytics.

The questions range from ‘where do I start?’, ‘which books should I read?’, ‘how do I prepare for GAIQ?’ to how do I become a good analyst?

So I thought why not dedicate a whole video on answering these burning questions.

Here is what we are going to cover, in the next few minutes, in this video lesson:

#1 Who am I? What’s my story and why you should listen to me?

#2 The number 1 reason, why most marketers and business owners are not able to scale their advertising and maximize sales for themselves and/or for their clients.

#3 How in just couple of years, I went from a complete novice in web analytics to the author of three best selling books on web analytics? And how you can achieve the same transformation in your career and that too in much shorter time frame.

#4 What is the difference between web analytics and Google Analytics?

Join the Course

Take your analytics knowledge to the next level. Check out my best selling books on Amazon

Attribution Modelling in Google Ads and Facebook NEW
This book has been written to help you implement attribution modelling in Google Ads (Google AdWords) and Facebook. Learn how to leverage the knowledge of attribution modelling, understand the customer purchasing journey and determine the most effective marketing channels for investment.

Maths and Stats for Web Analytics and Conversion Optimization
This expert guide will teach you how to leverage the knowledge of maths and statistics in order to accurately interpret data and take actions, which can quickly improve the bottom-line of your online business.

Master the Essentials of Email Marketing Analytics
This book focuses solely on the ‘analytics’ that power your email marketing optimization program and will help you dramatically reduce your cost per acquisition and increase marketing ROI by tracking the performance of the various KPIs and metrics used for email marketing.

Attribution Modelling in Google Analytics and Beyond
Attribution modelling is the process of determining the most effective marketing channels for investment. This book has been written to help you implement attribution modelling. It will teach you how to leverage the knowledge of attribution modelling in order to allocate marketing budget and understand buying behaviour.

Himanshu Sharma

Certified web analyst and founder of

My name is Himanshu Sharma and I help businesses find and fix their Google Analytics and conversion issues. If you have any questions or comments please contact me.

  • Over twelve years' experience in SEO, PPC and web analytics
  • Google Analytics certified
  • Google AdWords certified
  • Nominated for Digital Analytics Association Award for Excellence
  • Bachelors degree in Internet Science
  • Founder of and

I am also the author of four books:

error: Alert: Content is protected !!