Question

In Google Tag Manager, I have some data layer variables set up. How can I test that the data is coming in through these variables as I expect? So, I want to verify that the data is getting collected in the dataLayer object (which can be done with Firebug, etc), but more importantly, I want to know that GTM is receiving the data, that the macros and rules are executing as expected, etc.

So, on the website, I have some code like this:

dataLayer = [];

dataLayer.push({
    'city': 'city name',
    'state': 'state name',
    'subtotalCost': 'subtotal $',
    'salesTax': 'sales tax $'
});

And then after this, I have the GTM code that loads gtm.js. This seems to be implemented correctly, however, I want to test that the values for the data layer variables are coming through as expected. Where can I check this at?

Was it helpful?

Solution

The console is your friend. What I would do is type dataLayer into the console after dataLayer.push, then click on the last object in the array and you'll see your values.

For instance, I put the dataLayer.push on an onclick event and ran dataLayer and was able to see this come through. Granted they are static values, but you get the idea.

enter image description here

UPDATE:

Google Tag Manager has updated their debugger, allowing you to see both Names or Values being passed into GTM.

enter image description here

OTHER TIPS

There is a Chrome extension called Google Tag Assistant that allows you to check if tags are getting fired as well as inspecting data coming through the dataLayer.

I had already been using this extension, but did not see my custom data layer variables. However, if you drill down through the tags, in Google Tag Assistant, you can see this other information (custom variables, etc). Note that, you need to ensure the tag is getting fired first.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top