Search code examples
google-analyticsanalyticscustom-dimensions

gtag multiple custom dimensions


I searched the web for the solution to send multiple custom dimensions to google analytics.

the old tag ga was easy to configure like so :

ga('create', 'UA-ID', 'auto');

    ga('set', 'dimension1', value1);
    ga('set', 'dimension2', value2);
    ga('set', 'dimension3', value3);
    ga('send', 'pageview');

this would send all of the 3 custom dimensions.

the problem occurs with the new gtag.js I tried lots of ways to configure multiple custom dimensions. the documentation shows how to configure 1 custom dimension as so :

gtag('config', 'UA-ID', {
 'custom_map': {'dimension1': 'value'}
});
gtag('event','eventname', {'valuename':value});

This works [for 1 dimension] but I can't figure out how to send multiple custom dimensions.

[tried sending the object with 2 fields of dimension , tried to duplicate the config custom map with different dimensions - it didn't work]

Any ideas ?


Solution

  • You can still use the Legacy version of the code but you have to send it inside a JSON instead, as the example

    --Option I-- 
    -- Set Option -- 
    
    gtag( 'set' , {'dimension1' : "yxz"} );                      // Set a Single Element
    gtag( 'set' , {'dimension2' : "abc",'dimension3' : "123"} ); // Set multiple Elements
    gtag('config', 'UA-1-1');                             // Pageview with 3 cd
    
    --Option II--
    -- Map Function--
    
    
    gtag('config', 'UA-ID', {
     'custom_map': {'dimension1': 'value',
                    'dimension2': 'value2',
                    'dimension3': 'value3'}
    });
    gtag('event','eventname', {'value1':"1",'value2':"2",'value3':"3"});