Archivo de la categoría: EN – Implementations – Tagging

Analytics mapping using Signal

This is the second blog post about the tagging solution Signal Click here to read the introduction
Now, let´s talk about mapping and how we send the data to an analytics tool, like Adobe or Google Analytics.

In every analytics implementation, we should start defining the variables that we need to fire with every page load and (key) user interaction. And the values they should take.

For example, with every page load we may need to collect:
– Page name
– Primary Category
– Sub categoría



In a later step, we will need to transale the variables defined above into the language of the tool we use, like custom dimensions in GA or eVars o Props in Adobe Analytics.

Thus, in Signal we should be:
● Creating a Data Element for each of the defined variables
● Making sure each Data Element has the same amount of inputs and outputs
● Making sure that within each Data Element, each input matches with an output

1) Creating a Data Element for every defined variable.

Just need to click  “Add Data Element” in the Data Dictionary, introduce the name and hte description, and finally click on“Create”



: I recomend that names will follow and consitent “naming convencion”  and including a descritpion, for us and potentially for someone else in the future.

2) Making sure that every Data Element has the same number of inputs than Outputs





Otherwise, there´s a problem that has two types:

More inputs than outputs > We are duplicating data
We have at least two Inputs poiting out to the same Output

-Problem: Every time we fired these inputs, we are sending data to Adobe Analytics (or GA etc.)  It means that in Adobe Analytics, we will not be able to know which is actually the one that has been fired, and the reason we have collected these data.

-Consecuence: If we don´t know what has triggered the data we have, then these data have very low quality in our Analytics tool. Or we can even say they are just useless.

More outputs than inputs > We are not collecting some data (that we believe we are collecting)
We have at least one input not poiting out to any output.

-Problem: Every time we fired the inputs without outputs, these inputs are not sending anything because Signal is not telling it to do so.

-Consecuence: Data that we are supposed to collect are not being collected. They will never come to our Analytics tool and if we discover it, it will probably be too late.

3) Making sure that for each Data Element, the input corresponds with the output

It´s not enought knowing we have the same amount of inputs and outputs for each Data Element. It could be that we would have inputs without outputs or outputs without inputs, but both (inputs & outputs) suming up the same number. Thus we have to check every couple input & ouput

For the Data Element Page Subcategory, we have the input Home, which corresponds with the output Mobile App: Page Load: Home Page.







When the page loads,








Signal knows that it should:

● Collect that page load
Because we have created an input “home”
● Collect the Data Element “Page Sub Category”
Because it´s included in the input home – first screenshot of the two
● Send it to Adobe Analytics
Because we have created a tag for that vendor asigned to the input home (which we have named “mobile app page load home page» – second screenshot.

And proceed this way with the rest of couples input & ouput

Any idea? Any comment? Any complaint? Leave your comment and I will get back to you. You can also contact with me via email o through my Linkedinand Twitter profiles.


First steps with the tagging solution Signal (formerly BrightTag)

There are three basic concepts that you need to understand to start working with Signal:  data elements, inputs y outputs

  • The Data Elements are the variables we want to collect
    The set of Data Elements is the Data Dictionary
  • The Inputs are what we want to know about the user and its visit to answer our business questions (in plain English)
    It can be based on page loads or user interactions. Also can be for a web browser or an app.
  • The Outputs are the tags we use to send data to digital analytics tools, like Google or Adobe Analytics

Let’s see how they work 🙂

1) Data Elements

The data elements are the variables. The data we want to get from our web or app and send to our analytics tool. Just what in other tools are dubbed as “variables”.

The way to define them and creating the tagging map is what Signal names Data Binding.
That´s the way for us to tell Signal: in this input, you have to collect these data elements (variables)

For example, for every page load (that is an input) we want to collect (among other stuff):
– The page of the name.
– The page primary primary category.
– The page sub sub category.

So, in the Data Dictionary, we have to create a Data Element for all the variables.

2) Inputs

The inputs are what we want to know / get about the navigation & behaviour of our users. The pages that are being loaded or the key interactions during the visit.

For example:
– I want to know that the product pages are being loaded
> I create an input “product pages”

– I want to know that as the page loads, we collect the product name, category and subcategory
> I create a Data Element for each (previous example) and inlcude them within the input «product pages»

We should create an input for each type of page load or user interaction.
I mean that we need an input for product pages, another for home page, another for checkout page and so on. The reason is that some data elements are common to every page type (i.e. page name) but some are just for a specific type or some o them, but not all (i.e. product name is not something we want to collect in the product page, category, checkout etc. but not in the homepage…)

To track user interactions, we just follow the same process as page loads. If we want to know if i.e. users sign in or sign up (and both have two steps – first click + actual success) we would create an input for each of the interactions.


3) Outputs

Keeping in mind what has been explained so far, Signal already knows what actions we want to collect (product pages load, sign up etc.) and what we want to know about it (the name of the product, the category etc.)

The third step here is actually sending the data to the analytics tool we use. To do so, we need to create an output for each input, specifying the vendor (in the example Adobe Analytics).



Last idea

There are two steps:
– Signal getting data from the browser or app (data elements & inputs)
– Signal sending the data to the analytics tool (outputs)

Both can be the reason of not having data in the analytics tool, so we need to keep in mind this idea in case we detect data collection issues during the QA process.

Also we need the same inputs and outputs for each data element. I would explain in more detail in another post these three concepts and other functionalities of Signal.

Any idea? Any comment? Any complaint? Leave your comment and I will get back to you. You can also contact with me via email o through my Linkedin and Twitter profiles.