GTMImplementaciónConsent Mode v2

Implementar Google Consent Mode v2 en GTM paso a paso

PorEquipo Conma19 de junio de 20263 min de lectura

Implementar Consent Mode v2 en Google Tag Manager tiene una regla de oro: el estado por defecto debe declararse antes de que cualquier etiqueta de Google se ejecute. Si llega tarde, Google ya disparó sus tags sin consentimiento y el daño está hecho. Esta es la secuencia correcta, con los detalles que suelen fallar.

Prerrequisitos

  • Un contenedor de GTM instalado en el sitio.
  • Una CMP que emita el evento de consentimiento (o un banner que actualice el dataLayer).
  • El inventario de cookies clasificado por categoría (cómo auditarlo).

Crea una etiqueta que llame a gtag('consent', 'default', …) con los 7 parámetros en denied, y asígnala al activador Consent Initialization - All Pages con la máxima prioridad. Es lo primero que se ejecuta en todo el contenedor, antes que cualquier otra etiqueta.

gtag("consent", "default", {
  ad_storage: "denied",
  analytics_storage: "denied",
  ad_user_data: "denied",
  ad_personalization: "denied",
  functionality_storage: "denied",
  personalization_storage: "denied",
  security_storage: "granted",
  wait_for_update: 500,
});

Dos detalles clave:

  • wait_for_update: 500 da un margen (en ms) para que llegue la decisión del usuario antes de que las etiquetas decidan cómo comportarse. Si tu banner tarda más en cargar, súbelo.
  • security_storage: 'granted' suele dejarse concedido porque cubre funciones de seguridad (prevención de fraude), no rastreo.

Paso 2: actualizar tras la elección

Cuando el usuario acepta o rechaza en el banner, dispara gtag('consent', 'update', …) con los permisos concedidos. El patrón habitual: tu CMP empuja un evento al dataLayer (por ejemplo cmp_consent_update) que activa una etiqueta de actualización.

gtag("consent", "update", {
  ad_storage: "granted",
  analytics_storage: "granted",
  ad_user_data: "granted",
  ad_personalization: "granted",
});

Importante: el update debe reflejar exactamente lo que eligió el usuario por categoría. Si aceptó analítica pero no marketing, solo analytics_storage pasa a granted.

Paso 3: condicionar tus etiquetas

Activa las plantillas de consentimiento integradas de GTM: cada etiqueta de Google (GA4, Google Ads) respeta automáticamente el estado. Para etiquetas personalizadas o de terceros, usa las comprobaciones de consentimiento adicionales (additional consent checks) en la configuración de la etiqueta, para que esperen al permiso correspondiente.

Paso 4: validar

No te fíes de que "parece que funciona". Verifica con datos:

HerramientaQué verificar
Tag AssistantQue las etiquetas esperan al consentimiento y no disparan antes
Pestaña NetworkEl parámetro gcs (ej. G100, G111) en las peticiones a Google
Consent Mode (GA4)Que el modelado se active con datos suficientes

Para interpretar el parámetro gcs, revisa nuestra guía de códigos GCS: te dice de un vistazo si las señales llegan en el orden correcto.

Errores comunes (y cómo evitarlos)

  • Declarar el estado por defecto después del Consent Initialization. Es el fallo nº 1: las etiquetas se disparan sin consentimiento. Verifica la prioridad y el activador.
  • Olvidar ad_user_data y ad_personalization (obligatorios desde marzo 2024). Sin ellos, Google apaga la personalización aunque el usuario acepte.
  • No propagar el cambio a mitad de sesión cuando el usuario modifica su elección desde el icono de preferencias.
  • Confundir básico con avanzado: en básico no se envían pings, así que pierdes todo el modelado de datos.

Una nota sobre el lado servidor

Si usas server-side tagging (un contenedor de GTM en servidor), el consentimiento también debe viajar hasta ahí. El contenedor de servidor recibe los eventos del cliente junto con el estado de consentimiento, y solo debe reenviarlos a Google, Meta o quien corresponda si el permiso está concedido. Es un error frecuente: el banner bloquea bien en el navegador, pero el contenedor de servidor sigue reenviando todo. Trata el servidor como una extensión de tu lógica de consentimiento, no como una vía paralela que se la salta.

Conma genera la plantilla de GTM y el snippet ya configurados con los 7 parámetros y el orden correcto, de modo que te saltas casi toda esta configuración manual y sus errores. Conoce el detalle en nuestra guía de Consent Mode v2.

Ventas