Legacy Implementation through GTM

This manual describes how to implement Roivenue Measurement in your web that does use Google Tag Manager.

If you are using Google Tag Manager on your website, this is the fastest way to implement Roivenue Measurement.

Your implementation will differ depending on the system you use for consent collection. If you use the default mechanism in Google Tag Manager for consent management, follow the steps here. If you are using a custom consent management system, click here.

Prerequisites

  • Property ID - You will need this to set up your script correctly. Contact your account manager to obtain it.

Initial Setup

  1. Download the GTM container here.

  2. Go to your GTM (at https://tagmanager.google.com/ )

  3. Go to Admin tab select “Import container”, select the container file you have downloaded. Select the workspace you want to import to and set “merge” option - as on the picture bellow.

Always set the import to Merge!
  1. Go to section “Variables”

  2. Click on roivenue.tracking.config and change the values in the JSON object:

    1. property_id - Insert a Property Id provided by your account manager

    2. api_url - Check that "https://tr.roivenue.com” is filled in.

    3. currency_code - the default currency code that will be used for tracking purchases used in case that the currency is not specified in purchase object

    4. event_types - leave this blank unless otherwise agreed with your Account Manager.

Fill in all the needed information

Setting up Triggers

In this step, you are setting up when Roivenue Measurement script should run. By default it runs with every page view.

  1. Navigate to Tags section.

  2. Select roivenue.tracking code.

  3. Go to the section “Triggering” and add all triggers when you want Roivenue Measurement script to run

  4. that fire on all your conversion types and all events indicating a change in consent.

Add all necessary triggers

Setting up Consents and Anonymous Tracking

Roivenue Anonymous Tracking can be used to track users without using any cookies and to tracks users in a limited scope.

  1. Continue the configuration of roivenue.tracking tag in the tag section.

  2. Change consent settings to “Not set“.

The default settings requires analytics_storage permission to be given and tracks users only if this permission was given. If you change it to "Not set", Roivenue Measurement will measure in the following way:

  • when analytics_storage is granted, cookies are used for tracking the user.

  • when analytics_storage is not granted, all user data is stored in sessionStorage of the browser. It means that cookieless tracking is enabled.

Setting up Conversions Tracking

If you already have ecommerce.purchase event in dataLayer, you do not need to implement anything because we will use the following fields to track a purchase conversion.

  • value - the conversion value

  • tax - the tax

  • currency - three letter ISO-4217 code of currency

  • transaction_id - the transaction ID

And we save them into these variables in Roivenue:

  • conversionType: 'purchase'

  • conversionId: transaction_id

  • conversionValue: value - tax

  • currencyCode: currency

This is how the event in your dataLayer should look like.

window.dataLayer.push({
	event: 'purchase',
	ecommerce: {
		transaction_id: "T_12345",
		value: 25.42,
		tax: 4.90,
		shipping: 5.99,
		currency: "USD"
	}
});

In case you would like to track more conversions than just a purchase or you are sending purchases to your dataLayer in a format which is different from the example above, you can.

It is possible to track any number of conversions by pushing conversionevent int the dataLayer.

  1. If you want to send additional conversion, these are the parameters you need to send in the conversion event:

  • conversionType - What type of conversion it is.

  • converisonValue - the value without tax in specified currency

  • currencyCode - Three letter ISO-4217 code of currency

  • conversionId - an optional parameter which we recommend using in case you want to identify unique conversions later.

dataLayer.push({
  'event' : 'conversion', 
  'conversionId': 'T_12345', // optional
  'conversionType': 'goal1', 
  'conversionValue' : 123, 
  'currencyCode' : 'CZK'
});

Any other event you track can be also set to be treated as a conversion but it needs to be set up in Roivenue app as well as in the roivenue.tracking.config variable so please contact your Account Manager if you would like to use this option.

Extra Step for Single Page Applications ONLY

  1. If you have a single page website you need to inform us about page views by pushing page_view event into the dataLayer.

Other Information

If ‘user’ object is set in any event item in dataLayer, we use the user.id as the unique user identifier. This is then used for identifying users and connecting their path across multiple devices. Eg:

dataLayer.push({'user' : {'id':123}});

Prerequisites

  • Property ID - You will need this to set up your script correctly. Contact your account manager to obtain it.

Initial Setup

  1. Download the GTM container here.

  2. Go to your GTM (at https://tagmanager.google.com/ )

  3. Go to Admin tab select “Import container”, select the container file you have downloaded. Select the workspace you want to import to and set “merge” option - as on the picture bellow.

Always set the import to Merge!
  1. Go to section “Variables”

  2. Click on roivenue.tracking.config and change the values in the JSON object:

    1. property_id - Insert a Property Id provided by your account manager

    2. api_url - Check that "https://tr.roivenue.com” is filled in.

    3. currency_code - the default currency code that will be used for tracking purchases used in case that the currency is not specified in purchase object

    4. event_types - leave this blank unless otherwise agreed with your Account Manager.

Fill in all the needed information

Setting up Triggers

In this step, you are setting up when Roivenue Measurement script should run. By default it runs with every page view.

  1. Navigate to Tags section.

  2. Select roivenue.tracking code.

  3. Go to the section “Triggering” and add all triggers when you want Roivenue Measurement script to run

  4. that fire on all your conversion types and all events indicating a change in consent.

Add all necessary triggers

Setting up Consents and Anonymous Tracking

Roivenue Anonymous Tracking can be used to track users without using any cookies and to tracks users in a limited scope.

  1. Go to Variables.

  2. Open the roivenue.tracking.enabled

  3. Set up the variable in a way that it will return “True” in case the visitor should be tracked (either in a cookie mode or anonymous mode, this will be set up later). In a case you want to completely exclude user from tracking, this variable should return “False”

  4. Open the roivenue.tracking.persistence variable.

  5. Set it up in a way it returns localStorage+cookie in case you want to measure a user using cookies. If you want to measure this user in an anonymous mode, this variable should return sessionStorage.

  6. When a user changes his consent, you should reflect this change in the value returned by roivenue.tracking.persistence and potentially also in the roivenue.tracking.enabled depending on your implementation.

Setting up Conversions Tracking

If you already have ecommerce.purchase event in dataLayer, you do not need to implement anything because we will use the following fields to track a purchase conversion.

  • value - the conversion value

  • tax - the tax

  • currency - three letter ISO-4217 code of currency

  • transaction_id - the transaction ID

And we save them into these variables in Roivenue:

  • conversionType: 'purchase'

  • conversionId: transaction_id

  • conversionValue: value - tax

  • currencyCode: currency

This is how the event in your dataLayer should look like.

window.dataLayer.push({
	event: 'purchase',
	ecommerce: {
		transaction_id: "T_12345",
		value: 25.42,
		tax: 4.90,
		shipping: 5.99,
		currency: "USD"
	}
});

In case you would like to track more conversions than just a purchase or you are sending purchases to your dataLayer in a format which is different from the example above, you can.

It is possible to track any number of conversions by pushing conversionevent int the dataLayer.

  1. If you want to send additional conversion, these are the parameters you need to send in the conversion event:

  • conversionType - What type of conversion it is.

  • converisonValue - the value without tax in specified currency

  • currencyCode - Three letter ISO-4217 code of currency

  • conversionId - an optional parameter which we recommend using in case you want to identify unique conversions later.

dataLayer.push({
  'event' : 'conversion', 
  'conversionId': 'T_12345', // optional
  'conversionType': 'goal1', 
  'conversionValue' : 123, 
  'currencyCode' : 'CZK'
});

Any other event you track can be also set to be treated as a conversion but it needs to be set up in Roivenue app as well as in the roivenue.tracking.config variable so please contact your Account Manager if you would like to use this option.

Extra Step for Single Page Applications ONLY

  1. If you have a single page website you need to inform us about page views by pushing page_view event into the dataLayer.

Other Information

If ‘user’ object is set in any event item in dataLayer, we use the user.id as the unique user identifier. This is then used for identifying users and connecting their path across multiple devices. Eg:

dataLayer.push({'user' : {'id':123}});

Last updated

Was this helpful?