Se lee en 3 minutos
El recién estrenado reglamento GDPR (la famosa General Data Protection Regulation, para aquellos a los que aún no les suene) ha provocado un giro a la hora de gestionar los datos almacenados por las empresas, así como la forma en que se pide el consentimiento de su uso a los usuarios.
Otra de las patas de esta normativa (que ha provocado dolores de cabeza a más de uno) es la gestión de las cookies que se almacenan en los navegadores de los usuarios. En este sentido, el uso de tag managers ha facilitado el proceso con más de un “truco” (como la extensión Privacy Manager en TealiumIQ o bloqueando las reglas necesarias en Dynamic Tag Manager). Así, esperaremos al consentimiento del usuario para permitir la ejecución de ciertos tags, que provocarán el uso de ciertas cookies.
Conceptos como “configurar” o “bloquear” me llevaron a recordar las posibilidades de Google Tag Manager en este sentido y, en concreto, cómo es posible abortar un tag cuando no se cumplan las condiciones que queremos. En este post recordaremos dos de las opciones de las que disponemos y presentaremos una nueva, realizada mediante secuenciación de etiquetas.
Utilización de triggers (activadores) como excepción
La opción más simple pero no por ello la menos interesante. Cada etiqueta tiene sus propios activadores, que determinarán cuándo se ejecutará; también es posible aplicar activadores como excepción, para evitar que un tag se active cuando se cumplan sus reglas.

En el ejemplo, en una variable del dataLayer (llamada “AcceptGA”) se recoge si el usuario ha aceptado o no las cookies de Google Analytics, cuyo valor podremos utilizar para abortar el tag mediante el trigger “User does not accept GA”.

Uso de blacklists en Google Tag Manager
Como mi compañero Bruno explicaba detalladamente en su post, GTM nos permite controlar qué tags, activadores y variables están permitidos en una determinada página. Para ello provee de dos claves, gtm.whitelist y gtm.blacklist, que funcionan a forma de lista que incluirá los componentes que pueden o no cargarse en una determinada página.

Secuenciación de etiquetas
En la parte inferior de cualquier etiqueta encontraremos la sección “Configuración Avanzada”. En ella podemos establecer las opciones de secuenciación de etiquetas, donde es posible indicar si queremos que un tag se ejecute antes o después del actual. Aquel que se ejecute antes será llamado a partir de ahora tag de configuración (o set-up tag) y el que se ejecute después, tag de eliminación (cleanup tag).
Como nuestro interés es el de abortar o no un tag concreto, la configuración que nos interesa es la del set-up tag. Si nos fijamos en la imagen, vemos (en verde) como es posible indicar que nuestra etiqueta actual no se ejecute si existe algún error en el set-up tag. ¿Cómo podemos hacer que nuestro tag de configuración “falle”? Desde luego, de forma controlada, como veremos a continuación.

Como vemos, en nuestro ejemplo hemos seleccionado la etiqueta llamada “Pre-config” como set-up tag; analizando el código de esta etiqueta, podemos ver lo siguiente:

Así, si el usuario no acepta cookies, se ejecutará el código gtm.onHtmlFailure({{HTML ID}}); que será nuestra forma controlada de hacer que la etiqueta de configuración “falle”, y, por tanto, no se ejecute nuestro tag de Google Analytics.
Resumiendo, los pasos para abortar un tag haciendo uso de secuenciación de etiquetas serían los siguientes:
- En el menú de variables de GTM, asegurarse de que las variables integradas “Container ID” y “HTML ID” están activadas.
- Crear una etiqueta de configuración (de tipo HTML) donde incluyamos bajo qué condiciones ésta debe “fallar”; en esos casos, debe ejecutarse la sentencia gtm.onHtmlFailure({{HTML ID}});
- Configurar esa etiqueta como set-up tag en la configuración de la etiqueta de interés que se quiere controlar. No te olvides de marcar la opción de que no se ejecute si la etiqueta de configuración falla.
Cómo acabamos de ver, la etiqueta de configuración permite modificar opciones de un tag justo antes de su ejecución, no solo para modificar variables (lo que suele ser más común), sino incluso para abortar la propia etiqueta. Combinando este tag con el de eliminación, podemos aumentar nuestras posibilidades de control de Google Tag Manager más de lo que podríamos pensar, no solo para GDPR si no para otras muchas necesidades.
¿Y tú? ¿Sabes más “trucos” para controlar tus tags en GTM? ¡Estaremos encantados de leerlos!