Article by Anjali Khera, Digital Analytics Enterprise Architect at Loop Horizon

When it comes to customisation & improvisation of tracking configurations via tag managers, “Mapping Tables” in Adobe Launch AND “Lookup Tables” along with “Regex Tables” in Google Tag Manager can do wonders. 

These should be seen as one of the most useful and powerful features from the either of the Tag Managers. We used it for the practical application listed over this page and are amazed with the way it simplified our life in dealing with these codes on daily basis. 

The benefits include but are not limited to:  

  1. Reducing number of tags/rules in Tag Manager console 
  1. Organizing innumerable code snippets & their requirements in a well-structured way 
  1. Collating & organizing data parameters required by multiple vendors over customer’s different touch points 

This will be focussed on one of the practical applications of these tables in which we feel is very much important for every organization struggling with management of third-party pixels code but yet does not have any other choice to conquer. 

What are Mapping Tables in Adobe Launch? 

Mapping Tables are versatile Data Elements* which get enabled via installation of “Mapping Table” Extension. The Mapping Table variable in Adobe Launch allows you to read the value of an input and, if this value matches certain requirements, it will return some output on runtime. 

This supports regex, exact matches, case insensitive matches, starts with and contains. The output of the mapping table-based data element can be static or another data element to offer even more flexibility 

*Data Elements is standard term of Adobe Launch which refers to building block of data dictionary. These are basically variables which can be referenced to retrieve the values from JS objects, cookies, URLs, Query strings & so on 

What are Lookup Tables in Google Tag Manager? 

Like “Mapping Tables” from Adobe Launch, A “lookup table” in Google Tag Manager is a variable that has the value of another variable as input (key). Variables, according to Google’s definition, are “name-value pairs for which the value is populated during runtime”. This check for exact match key and return values accordingly. 

What are RegEx Tables in Google Tag Manager? 

As we understood above, the Lookup Table does exactly what it promises: lookups. These are exact match operations, which are extremely inexpensive to perform, because they can only have a binary result: either the match exists, or it doesn’t. 

While RegEx Tables perform exactly similar function along with providing option of regular expression-based input value check functionality. 

Some practical applications of Mapping , Lookup & Regex Tables 

  1. Rename the page names/source channel names etc 
  1. Track the important exit or social links by using table’s output as custom values 
  1. Dynamically select the Report suite (AA)/ Property ID (GA) based on site domain (etc.) 
  1. Track different traffic sources basis on referrer or page URLs 
  1. Terrifically lower down number of rules in your tag manger by managing different marketing pixels trigger conditions & actions vis single tag/rule  
  1. Manage product purchase funnel events and commerce data capture via single tag/rule 

Though the practical application can be any depending on your need and customizations, We will try to explain applications listed in #5 & #6 in detail (#5 & #6 from Adobe Launch interface perspective AND #5 from GTM interface) and how it worked out amazingly well in building an organized property.  

Note : Similar strategy can be followed in GTM to achieve other goals with Lookup Or Regex tables depending on use case 

Wonder 1:  

Terrifically lower down number of rules in your tag manger by managing different marketing pixels trigger conditions & actions vis single tag/rule 

Note: Take example of DoubleClick /flood light tag here where you usually get request to place the script on different pages. Their base script remains the same, however the parameters (page event, page ID, tag category) differs.  

Follow below requirement: – 

  • To implement DoubleClick /Floodlight tag on below pages 
  • Home Page 
  • Category Page 
  • Product Listing Page (PLP) 
  • Product Detail Page (PDP) 
  • Basket Page  
  • Checkout Page 
  • Transaction confirmation Page 

Additionally, there are different events, event types, category IDs expected as part of DoubleClick script for each individual page defined. 

Solutioning: 

Legacy Or more general approach to implement this requirement is to have rules/tags created in Tag manager interface specific to each page type encapsulating the page’s individual script.  

OR  

A person who understands code might create a rule with custom coded conditions to trigger page specific script. 

Using Adobe Launch:- 

When using Mapping tables in Adobe Launch to implement this: – 

  • It tremendously reduced number of rules AND/OR also reduced the repetitive codes usage in tag manager making it more organized. 
  • Amazingly, It started looking very good to eyes. 

Following the solution below. 

    When you get requirement to implement DoubleClick tag, there will be two types of code. 

Note: Here Mysite is used to denote site domain & Account ID is masked with XXXXX 

Type 1: Global snippet tag which might look like below 

Text Box

Type 2: Page specific tag (here reference is from PDP page), which might look like below 

Text Box

You will also receive many “Type 2” tags individually for requirement listed pages which will differ on parameters as highlighted and listed in below table 

Table

Description automatically generated

Now, follow the below steps to perform this task of DoubleClick implementation with Mapping tables. 

Step 1: Create “Mapping table” based Data elements in Adobe Launch  

Graphical user interface, text, application, email, Teams

Description automatically generated

Notice what is inside these Data Elements: – 

Here input to Mapping table becomes page template, while output becomes page ID as required by Doubleclick 

Follow another one for Standard Vs Items Sold. Likewise create data elements for other parameters as requested by DoubleClick which are page specific. 

Graphical user interface, application, Teams

Description automatically generated

Step 2: Now you are all set, create a single rule in Adobe Launch which triggers on all pages.  

Graphical user interface, application

Description automatically generated

Using Google Tag Manager:- 

In GTM, it needs a bit of initial thinking to decide whether to choose a Lookup table or a Regex table. 

In case the input key value needs to be checked against regular expression – Go for Regex Table. However, if you feel that the map table will have straight forward (exact valued) key-value pairs, you should opt for Lookup table. Please keep in mind that rest of the functionality and working remains same. 

Now, the requirement is the same to implement DoubleClick tag on various pages. The “page template” which becomes the input variable for the table has few values which are NOT exact case & needs to be checked against “contains” operator – Our selection of Map table here would be “RegEx Table.” 

Note: Had it been the case where exact match values needed, I would have selected “Lookup Table” instead. 

Step 1:  In the GTM console, create a new User-Defined variable of configuration type Regex Table 

Like we used input variable as “page template” to identify the type of page, same condition will be applied here using different variable for identifying page template here. Build the RegEx table as required: – 

Here, notice the Advanced settings check “Full Matches Only”. This will ensure that whole value of input is checked against the key parameters and should be found with exact match (if regular expressions included- then they are taken care as per regex definitions). 

Similarly, create regEx table based variables for other parameters – category Id, event type & standard vs itemSold 

Graphical user interface, application

Description automatically generated

Note: We are trying to use single tag here hence option of custom coding is selected. If we do not select option of custom code, then we should create a tag by selecting Tag type as “Floodlight Counter” or “Floodlight Sales” which defines its event type as “conversion” or “purchase” respectively. 

Now, create a tag with trigger of all pages & type as custom HTML. Reference the variables as appropriate. 

Wonder 2:  

Manage product purchase funnel events and commerce data capture via single tag/rule 

As part of eCommerce funnel tracking, we need to: – 

>Track “Product” & it’s related meta data on every step 

>Associate unique event (Custom or Standard) to desired steps 

Using Adobe Launch: – 

Like the way we have collated all required Doubleclick tags in single rule via Doubleclick example, we can also collate all funnel events & product data in single rule/tag. Follow the below steps:- 

Step 1: Create a mapping table Data element for event selection 

Graphical user interface, application

Description automatically generated

Step 2: Create a single rule to be triggered on all funnel pages. Here, 

>You can use “AA Product String Builder” extension to trigger Product & meta data information  

>Adobe Analytics set variables to associate relevant event 

2.1 Screen grab -What’s inside the rule created 

Graphical user interface, text, application, website

Description automatically generated

2.2 Screen grab -What’s inside Adobe Analytics Set Variables 

Graphical user interface, text, application

Description automatically generated

Note : I have taken reference from Adobe Launch only for this case. But you can perform similar steps in GTM as described above. 

Hope you found this article useful. Article explains the use case scenarios using Mapping table from Adobe Launch side, however similar approach can be taken to utilize Lookup & Regex tables in GTM. 

Once you start working with Mapping tables, Lookup or RegEx tables you will realise how much time they save you and how much fun it is to quickly set up things that would have taken more than an hour before. 

Feel free to drop us a message in case of any query!