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.
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.
– 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.
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).
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.