Configurar el consentimiento de cookies con Google Tag Manager [con receta]

Puede que ya hayas instalado un servicio de consentimiento de cookies en tu web, pero, ¿sabes si realmente esto es suficiente para cumplir con esta parte de la GDPR? Lo más probable es que, si no has dado ningún paso más allá de este, la respuesta sea no. ¿Por qué? Pues bien, voy a explicaros un poco mejor este proceso para que quede claro qué conseguimos en cada paso a la hora de gestionar las elecciones de nuestros usuarios. Vamos a dividir nuestro contenido en:

  1. Introducción y contexto
  2. ¿Por qué Google Tag Manager?
  3. GTM y CookieBot
  4. Conclusiones

Introducción y contexto

Pongamos un ejemplo práctico, que siempre ayuda a visualizar mejor las cosas. Tu empresa, GrinderHouse Inc., que se dedica a fabricar molinillos de café, está empezando en el negocio digital y tiene clara una cosa: quiere mantener a toda costa la privacidad de sus usuarios web. Más exactamente, quieren que sus usuarios tengan la capacidad de poder elegir qué y cómo les va a rastrear en su recorrido por el mundo cibernético. Por ello, deciden que lo mejor es contratar un servicio de consentimiento de cookies (hay muchos servicios, pero nosotros vamos a ver el caso de CookieBot), a través del cual podrán gestionar esas elecciones de los usuarios. Una vez instalado, observan que lo que ha hecho es categorizar las cookies. Esto quiere decir que el servicio escanea tu sitio web en busca de las cookies que se están utilizando en ese momento. Aunque hay muchas formas de realizar esta categorización, los grupos más extendidos son los siguientes:

  • Estrictamente necesarias
  • Publicidad/Marketing
  • Analítica/Estadística
  • Personalización/Preferencias

El hecho de que se puedan categorizar estas cookies sirve para dos cosas: para que sean más fáciles de gestionar y para que el usuario pueda elegir qué cookies acepta ya agrupadas. Pero ojo, este es el punto más importante, tu empresa descubre al finalizar este proceso de contratación e instalación de CookieBot la información se sigue enviando a las plataformas conectadas a la web (Google Analytics, Google Ads, Facebook, etc.), independientemente de lo que el usuario haya elegido. Por ello, te encarga a ti la tarea de aplicar la lógica que está lanzando CookieBot para respetar la privacidad de los usuarios y limitar el envío de información dependiendo de sus elecciones. Y aquí es donde entra Google Tag Manager.

¿Por qué Google Tag Manager?

No voy a extenderme demasiado sobre la definición y uso de Google Tag Manager (para eso podemos consultar la documentación del propio Google), pero para entendernos, diré que es una herramienta diseñada por Google con una función fundamental: dotar del poder necesario a los analistas para ser esencialmente independientes del equipo de desarrollo. Y, ¿por qué esto es interesante para nuestras cookies? Pues principalmente porque GTM nos permite inyectar extractos de código en nuestra web, que sólo saltarán en determinadas circunstancias (que nosotros configuraremos). ¿Todavía no ha quedado muy claro, verdad? Dejadme simplificar.

Una vez instalas GTM en tu web, vas a ser capaz de gestionar la implementación de pixels como el de Facebook, Google Ads o Analytics sin necesidad de tocar el código fuente de la página en ningún momento. Esto lo haremos a través del apartado Etiquetas en GTM. Pero eso vendrá luego. Porque si bien es cierto que podemos insertar código en nuestra web a través de esta herramienta, también podemos extraer información de la misma. Y aquí es donde GTM se va a convertir en nuestra mejor aliada para la configuración de cookies.

Al final, lo que cualquier plataforma de consentimiento de cookies va a hacer es inyectar una serie de variables en nuestra web dependiendo de lo que el usuario haya elegido. Si somos capaces de almacenar esas variables y otorgarles una lógica para que la información se envíe o no a las diversas plataformas que tenemos conectadas, nuestra configuración de cookies estará completa.

¿Cómo lo véis ahora? ¿Mejor? Igual hay algunas cosas algo oscuras todavía, así que arrojemos algo de luz con unos esquemas. En la siguiente imagen veremos lo que nos permite hacer GTM, introducir el código de implementación de diversas herramientas (Youtube, Analytics, Facebook, Hubspot…) a la vez que enviamos la información del usuario a las mismas:

Gracias a esto, el código de cada una de estas plataformas se insertaría en nuestra web y nos permitiría enviarles información (cuantos usuarios han entrado, cuántos han comprado un molinillo, etc.). Este sería el escenario inicial, en el que sólo hemos instalado el servicio de consentimiento de cookies, pero no hemos configurado nada más. Ahora bien, lo que queremos conseguir es que cuando todo esté configurado correctamente, el usuario sea capaz de hacer esto:

Y esto, ¿qué quiere decir exactamente? Pues que nuestro usuario habría rechazado las cookies de publicidad, lo que ha provocado que GTM no envíe información ni a Facebook, ni a Hubspot ni a otro servicio de CRM (Salesforce, SAP…).

En el escenario 2 vamos a ver qué ocurriría si el usuario aceptara las cookies de marketing y redes sociales, pero no de analítica:

Como véis, el envío de información a Analytics ha desaparecido, no así el resto, que continúan estando en la lista de cookies aceptadas por nuestro usuario.

GTM y CookieBot

Existen muchos servicios de consentimiento de cookies (OneTrust, UserCentrics, Civic…). Tu empresa ha decidido utilizar CookieBot principalmente por dos motivos:

-Facilidad de implementación

-Versión gratuita para 1 sólo dominio.

Como ya habíamos adelantado, GrindHouse Inc. ya había realizado la instalación de CookieBot en su web a través de este proceso por lo que nuestra parte consistirá en la configuración de GTM para que respete las decisiones de los usuarios. Para simplificar el proceso, te voy a adjuntar una receta que podrás importar a tu propio contenedor de Tag Manager y así agilizar mucho el proceso de configuración. Puedes descargarla aquí:

Una vez extraigas el archivo json que contiene la configuración de este contenedor, podrás ir a tu sección de Admin en GTM y realizar el import del mismo:

Ojo aquí, no queremos borrar nada de lo ya exista en el GTM de GrindHouse, por lo que en las opciones de importación, elegiremos Merge. Una pantalla parecida a esta os debería aparecer:

Para tener claro lo que vas a introducir en tu espacio de trabajo, aquí te adjunto la lista de lo que compone esta receta:

1 etiqueta: cookiebot_consent_tag. Aunque lo ideal es introducir el código hardcodeado en la propia web, añado la opción de realizar esta integración a través de GTM. Esta etiqueta se nutre de una plantilla creada ad hoc por CookieBot. Sólo tendremos que añadir nuestro ID de cookiebot a la variable creada para tal efecto (ahora veremos cómo). Esta será la única etiqueta a la que añadiremos el trigger de All Pages, ya que tiene que saltar siempre de forma invariable.

6 triggers: block_cookie_consent_marketing, block_cookie_consent_preferences, block_cookie_consent_analytics, cookie_consent_marketing, cookie_consent_preferences, cookie_consent_analytics. Como véis, son triggers simétricos. Tenemos el accionador y su bloqueador. Si bien es cierto que la documentación oficial de cookiebot desarrolla esto de forma distinta, en mi experiencia veo esta configuración mucho más robusta. ¿Por qué? Pues bien, os explico como funciona el proceso y seguro que así os dáis cuenta de las ventajas de estos elementos.

Lo que vamos a realizar con estos triggers es decidir si lanzamos la información o no a la plataforma escogida. Por tanto, cada uno de ellos obedece a esta lógica: si el usuario ha aceptado, actuará el trigger de consentimiento, sino, el de bloqueo. Una vez implementamos un servicio de consentimiento los triggers habituales (All Pages, por ejemplo) dejan de ser útiles porque corremos el riesgo de que carguen antes del script de cookies y se lancen antes de que el usuario haya tomado su decisión. Así, una configuración ejemplo podría ser la siguiente:

Aún sabiendo que se trata de una configuración muy sencilla, creo que se entiende perfectamente la lógica implementada: en la etiqueta de Universal Analytics, si el usuario acepta las cookies de analítica, se lanzará la información; sino, se bloqueará. Sí, tenéis razón. No sería necesario añadir el bloqueador ya que evalúamos en el propio trigger si se ha aceptado el grupo de cookies correspondiente. Pero es una buena forma de asegurarnos que no habrá ninguna situación (cambio de cookies a mitad de sesión, redirecciones…) en la que se nos escape información que no queremos que se envíe. Además, esta lógica nos serviría tanto para CookieBot como para otros proveedores, como OneTrust. La de outbound clicks es algo diferente: aquí no podemos utilizar la «genérica» ya que sólo nos interesan unos eventos concretos (en este caso, link clicks). Por tanto, pondremos el trigger que recoge esos eventos y le añadiremos el bloqueador de cookies de analítica. Esto hará que sólo se lance esta etiqueta cuando el usuario haya aceptado.

Pero toda esta lógica no podría funcionar sin el último punto de nuestra receta, las variables. Son las que van a extraer toda la información que el usuario vaya introduciendo en la web, a través de la cual montaremos toda nuestra estructura. Vayamos a ellas.

2 variables: cookiebot_id y cookiebot_var_state. Mientras la primera se encargará simplemente de recoger el ID de cookiebot para trasladarlo a la etiqueta de consent, la segunda es otra plantilla desarrollada por Cookiebot que permitirá extraer la información de las elecciones de usuario en la web. Pero vayamos por partes.

El ID de CookieBot lo podemos extraer en su página de Ajustes/Mis Scripts y se encuentra aquí:

Una vez tengamos esto copiado, nos iremos a nuestra variable cookiebot_id en GTM y pegaremos este texto en el recuadro correspondiente:

Por otro lado, la variable cookiebot_var_state no requiere de ninguna configuración extra, y lo que nos permitirá será almacenar las elecciones del usuario con respecto a las cookies para poder así lanzar la información a las plataformas debidamente:

En este caso, como véis, el usuario habría aceptado únicamente las cookie de analítica y así lo recoge esta variable. Gracias a ella, los triggers que más arriba hemos configurado funcionarán de forma correcta.

Ahora, en tu mano sólo quedaría configurar todas las etiquetas existentes de forma que sólo lancen la información en el momento en el que el usuario haya decidido que así lo desea. Tus jefes de GrindHouse Inc. estarán encantados contigo.

Conclusiones

Y así llegamos al final de nuestra tarea para la empresa multinacional dedicada a fabricar molinillos de café sin descanso. A través de ella hemos visto y aprendido mucho, pero lo más principal es que ahora podemos:

  • Seleccionar el envío de información a diversas plataformas integradas con nuestra web respetando la decisión de los usuarios sobre el consentimiento de cookies.
  • Crear una estructura adecuada en Google Tag Manager que nos permita gestionar cualquier otra casuística sobre consentimiento de cookies.
  • Complementar un servicio de consentimiento de cookies con variables dinámicas.

Espero que todo esto os sea útil y leer vuestras sugerencias/dudas en los comentarios.

2 comentarios sobre “Configurar el consentimiento de cookies con Google Tag Manager [con receta]

Replica a Juan Cancelar la respuesta