Analítica web
Reflexiones desde el mercado español de Analítica Web

Encajando las piezas en un Tag Manager

Se lee en 3 minutos

Qué vamos a contar que no se sepa ya en el mundo de la analítica web de nuestro fiel compañero de fatigas el Tag Manager y de las soluciones implantadas a través de él. En este post no vamos a descubrir la pólvora, pero sí vamos a abordar uno de los aspectos que siempre tenemos en cuenta a la hora de utilizarlo, como mínimo, de forma inconsciente: los tiempos de carga de los elementos (generalmente tags) y código que desarrollamos en él.

Ya sea que hablemos de cimentar el esqueleto de la estructura de nuestro proyecto desde cero, que abordemos una ampliación de objetivos y haya que cubrir una extensión más grande del terreno, o bien que haya que pulir y lustrar la fachada porque la erosión la ha desgastado, de cara a abordar un despliegue de solución en un web site solemos preguntarnos:

  • Cuál es el requerimiento
  • Por qué surge y cuál es el objetivo
  • En qué secciones de la web (dónde) radica
  • Cómo voy a estructurar mi solución

Sin embargo, entre todas estas preguntas, nos falta el “cuándo”. Cuándo van a ocurrir los eventos de dicha solución. El hilo y orden temporal de cómo van sucediendo todos ellos en la carga de la página es un aspecto básico para la estabilidad y robustez de la medición. Esto es algo que podemos configurar desde el gestor de etiquetas.

engranaje

Cierto es que cada Tag Manager es único: su configuración es diferente, su sistema para modular y personalizar el código varía, pero llámese Tealium, Google Tag Manager, Ensighten, DTM, etc., todos tienen algunas opciones para asociar una ubicación temporal a cada tag que son (en general) comunes y que conviene entender y aprovechar: la pre-carga, el DOM ready o las dependencias entre tags.

Los tags que asociemos a la pre-carga de la página o pre-loader, como su propio nombre indica, serán los primeros que se ejecuten, antes que cualquier otro tag. Un recurso habitual, aquí, es incluir funciones genéricas o auxiliares (creación y eliminación de cookies, limpieza de sintaxis, etc.) para que ya estén disponibles desde el primer momento en caso de necesitar utilizarlas después.

En el caso del “DOM ready”, lo que conseguiremos será ubicar el lanzamiento del tag una vez que finalice por completo la carga del DOM (Document Object Model), o traducido al lenguaje habitual, cuando la página esté totalmente cargada. Si colocásemos escuchadores de eventos antes de que la página esté totalmente cargada (pensemos en el habitual uso de jQuery para detectar clicks en botones como ejemplo más visible), podríamos estar haciendo referencia a un elemento que aún no está disponible, provocando que la detección del elemento y el posterior lanzamiento de la medición del asíncrono a la herramienta de analítica no funcione (o en el peor caso… ¡BOOM!). Algunos manejadores de jQuery (pensamos en el .on() asociado al document, por ejemplo) consiguen evitar en algunas ocasiones este caso concreto, pero no es el único.

La posibilidad de establecer dependencias entre tags es un recurso muy potente con el que podremos controlar el flujo de ejecución de los mismos. Por ejemplo, podemos indicar que el tag “Y” no se active hasta que no finalice la carga del tag “X”. Y, además, que el tag “Z” no lo haga hasta que no se complete la del “Y”. De esta forma, el orden de ejecución conseguido será X->Y->Z, y podemos asegurar que siempre tenemos disponibles los recursos lanzados en el tag anterior. Por ejemplo, si necesitamos lanzar un tag con un píxel cuyos parámetros custom se alimenten del valor de una cookie, podríamos establecer una regla de dependencia de forma que este tag se lance una vez finalice el que hemos mencionado previamente de funciones auxiliares (que contendría las funciones manejadoras de cookies).

Big Checklist

La cadencia de la carga del código (o tags) es un aspecto que comúnmente genera una problemática de detección y comprensión mayor que otro tipo de errores, no siempre se dispone de un mecanismo explícito para mostrar los mismos.

Te animo a que nos cuentes tus experiencias con el timing de tu código en el despliegue de tu medición.
¿Te ha ocurrido algo similar a lo expuesto? Esperamos tus comentarios 😉

Escribe tu comentario

20 − cuatro =

Navegar