Cómo configurar Consent Mode v2 en Google Tag Manager y comprobarlo

Por el equipo de Mayab Media · Nivel: Avanzado · Tiempo: 1 hora

Pusiste un banner de cookies, pero Google Ads sigue mostrando una advertencia de consentimiento. O GA4 te avisa que no estás enviando señales de consentimiento para los visitantes del Espacio Económico Europeo (EEE). O el banner funciona, pero las etiquetas se disparan antes de que alguien haga clic en «Aceptar». Las tres cosas indican lo mismo: tu banner y tus etiquetas no se comunican a través de Consent Mode v2.

Consent Mode es la forma en que tu sitio le dice a las etiquetas de Google qué permitió cada visitante. La versión 2 usa cuatro señales: ad_storage, analytics_storage, ad_user_data y ad_personalization. Las dos nuevas indican si se pueden enviar datos del usuario a Google con fines publicitarios y si los anuncios se pueden personalizar. Google exige estas señales para los visitantes del EEE si quieres seguir usando sus funciones de medición, remarketing y personalización con esos datos.

La configuración tiene tres partes. Definir un estado predeterminado antes de que corra cualquier etiqueta. Actualizarlo cuando el visitante elige. Asegurarte de que cada etiqueta respete el resultado. Google Tag Manager tiene herramientas para las tres. Esta guía cubre la parte de GTM y cómo verificarla. No es asesoría legal, así que confirma los valores predeterminados que necesitas con quien lleve la privacidad en tu negocio.

Respuesta rápida

  1. Elige un banner de consentimiento (CMP) compatible con Consent Mode v2 que tenga plantilla para GTM.
  2. En GTM, marca Enable consent overview (BETA) (habilitar resumen de consentimiento) en Admin > Container Settings > Additional Settings.
  3. Agrega la etiqueta de plantilla del CMP con el activador Consent Initialization - All Pages y define los valores predeterminados (normalmente las cuatro señales en denied en regiones que requieren aceptación previa).
  4. Decide entre el modo avanzado (las etiquetas de Google cargan y envían pings sin cookies) o el básico (las etiquetas se bloquean hasta que hay consentimiento).
  5. Revisa la configuración de consentimiento de cada etiqueta y agrega comprobaciones de consentimiento adicionales a las que no son de Google.
  6. Verifica en Tag Assistant: la pestaña Consent debe mostrar On-page Default y On-page Update para las cuatro señales. Más adelante, revisa Goals > Summary > Diagnostics en Google Ads.

Antes de empezar

  • Acceso: permiso para publicar en GTM. Acceso a la propiedad de GA4 para ver Consent settings (configuración de consentimiento).
  • Una plataforma de gestión del consentimiento (CMP). La mayoría de las herramientas de banner populares tienen una plantilla en la Galería de plantillas de la comunidad de GTM. Confirma que indique compatibilidad con Consent Mode v2.
  • Tu política de consentimiento. Qué regiones requieren aceptación previa, qué herramientas cuentan como analítica o publicidad y cuánto tiempo se guarda la elección. El área legal o de privacidad debe aprobarla.
  • Tag Assistant en tagassistant.google.com.
  • Tiempo: cerca de una hora, más al menos una semana de datos antes de que Google pueda mostrar el impacto de Consent Mode.
  • Respaldo: exporta tu contenedor (Administrar > Exportar contenedor) antes de empezar. Un error aquí puede detener toda la medición.

¿Modo básico o avanzado?

Consent Mode básico Consent Mode avanzado
Antes de que el visitante elija Las etiquetas de Google no cargan Las etiquetas de Google cargan con consentimiento denegado por defecto
Si el visitante rechaza No se envía ningún dato a Google Las etiquetas envían pings sin cookies
Modelado de conversiones Google usa un modelo general Es posible un modelado específico para tu cuenta
Cómo se construye Bloqueas las etiquetas hasta el consentimiento con activadores o comprobaciones Dejas que las etiquetas se disparen y respeten el estado de consentimiento

El modo avanzado le da a Google más información para modelar. El básico no envía nada antes del consentimiento. Cuál conviene a tu negocio es una decisión de política, no técnica.

Paso 1: Activa el resumen de consentimiento en GTM

Así tendrás una sola pantalla para revisar el consentimiento de todas tus etiquetas.

  1. En GTM, haz clic en Admin.
  2. En la columna del contenedor, haz clic en Container Settings (configuración del contenedor). Se abre el panel Edit container.
  3. En Additional Settings (configuración adicional), marca Enable consent overview (BETA).
  4. Haz clic en Save (guardar), arriba a la derecha.
Panel Edit container de GTM con Container Settings y la casilla Enable consent overview (BETA) marcada en Additional Settings
Marca Enable consent overview (BETA) en Additional Settings (1) y luego Save (2). Solo agrega una pantalla de revisión; no cambia cómo se disparan las etiquetas.

Al guardar, aparece un botón Consent Overview (un ícono de escudo) arriba de tu lista de Tags. Lo usarás en el Paso 4.

Paso 2: Agrega la plantilla del CMP en Consent Initialization

Tu banner debe definir el estado predeterminado antes de que corra cualquier otra etiqueta. GTM tiene un activador especial para esto, Consent Initialization - All Pages (Inicialización del consentimiento). Viene en todos los contenedores web y se dispara antes que cualquier otro, incluso antes del activador de Inicialización.

  1. Ve a Templates > Tag Templates > Search Gallery (buscar en la galería). Encuentra la plantilla de tu CMP y haz clic en Add to workspace (añadir al espacio de trabajo). (El panel Consent Overview también tiene un recuadro Discover featured Consent Management Platforms con un botón Get started que lista CMP con integración más profunda con GTM.)
  2. Ve a Etiquetas > Nueva y elige esa plantilla.
  3. Escribe el ID de tu cuenta o sitio en el CMP.
  4. Define el consentimiento predeterminado de cada señal. En las regiones que requieren aceptación previa, pon las cuatro en denied. Muchas plantillas tienen un valor global más filas por región; otras manejan las regiones en el panel del propio CMP o en la URL del banner.
  5. Si la plantilla lo ofrece, define un valor de wait for update (esperar actualización) como 500 milisegundos. Así el banner tiene tiempo de leer la elección guardada de un visitante que regresa.
  6. Opciones que incluyen muchas plantillas: ads data redaction (oculta los ID de clic de anuncios cuando ad_storage está denegado) y URL passthrough (pasa la información del clic en la URL cuando las cookies están denegadas).
  7. En Triggering (activación), elige Consent Initialization - All Pages.
  8. Guarda la etiqueta.
Etiqueta de GTM con una plantilla de CMP de la comunidad, una URL del código del banner y una lista Default Consent (Global) con todas las señales en Granted
Una etiqueta de plantilla de CMP de ejemplo (1). Su lista Default Consent (Global) (2) pone todas las señales en Granted. Ese es solo el valor para todos los demás; para regiones que requieren aceptación previa, como el EEE y el Reino Unido, normalmente agregarías valores por región en Denied.
Parte inferior de la etiqueta del CMP con url_passthrough y ads_data_redaction marcados y el activador Consent Initialization - All Pages
Más abajo, esta plantilla tiene URL passthrough y ads data redaction (1) en Other Settings. El activador (2) es Consent Initialization - All Pages.
  1. Estados predeterminados. El valor global en Granted del ejemplo no es una recomendación; define los tuyos con quien se encargue de la privacidad en tu empresa.
  2. El activador debe ser Consent Initialization - All Pages, nunca una vista de página normal.

Los nombres de los campos cambian entre plantillas de CMP, así que busca la idea, no la etiqueta exacta.

Los códigos de región usan el formato ISO 3166-2. Un valor sin región aplica a todos los demás. La región más específica tiene prioridad.

¿No hay plantilla? Define los valores en la página

Si tu banner no tiene plantilla para GTM, coloca el comando predeterminado en el <head> de la página, arriba del fragmento de GTM. El orden importa.

<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('consent', 'default', {
    'ad_storage': 'denied',
    'analytics_storage': 'denied',
    'ad_user_data': 'denied',
    'ad_personalization': 'denied',
    'wait_for_update': 500
  });
  gtag('set', 'ads_data_redaction', true);
</script>
<!-- Aquí va el fragmento de Google Tag Manager -->

Después tu banner debe enviar una actualización cuando el visitante elija. La ayuda de GTM sobre consentimiento advierte que los comandos ejecutados desde etiquetas HTML personalizadas pueden no aplicarse antes de que se active el siguiente activador, y recomienda usar las API de consentimiento de Tag Manager. Así que usa una plantilla de consentimiento que llame a esas API en lugar de una etiqueta HTML personalizada con gtag('consent', 'update', ...).

Paso 3: Asegúrate de que el banner envíe la actualización

Cuando el visitante hace clic en Aceptar, Rechazar o guarda sus preferencias, el CMP debe actualizar las cuatro señales. Una buena plantilla lo hace por ti. También vuelve a aplicar la elección guardada en cada página para los visitantes que regresan.

Revisa la correspondencia en la configuración de tu CMP. Normalmente es así:

Categoría del CMP Señales de Consent Mode
Estadísticas / Analítica analytics_storage
Marketing / Publicidad ad_storage, ad_user_data, ad_personalization
Necesarias / Funcionales functionality_storage, security_storage (opcional)

Si tu CMP solo asigna ad_storage y analytics_storage, tienes una configuración de la versión 1. Actualiza la plantilla o el plan del CMP, porque faltarán las dos señales de v2.

Paso 4: Revisa el consentimiento de cada etiqueta

Abre Tags y haz clic en el botón Consent Overview (ícono de escudo) arriba de la lista. Se abre el panel Consent Overview (BETA), que agrupa tus etiquetas según su configuración de consentimiento, con columnas Tag Name, Type, Built-In Consent (consentimiento integrado), Additional Consent (consentimiento adicional) y Last Edited.

  • Comprobaciones de consentimiento integradas. Las etiquetas de Google (la etiqueta de Google, los eventos de GA4, Google Ads, Floodlight) entienden el consentimiento. Ajustan su comportamiento solas. En modo avanzado no necesitas agregarles nada.
  • Comprobaciones de consentimiento adicionales. Úsalas en etiquetas que no entienden el consentimiento, como píxeles de redes sociales, mapas de calor o chats. Elige Require additional consent for tag to fire (requerir consentimiento adicional) y selecciona la señal, por ejemplo ad_storage. La etiqueta esperará hasta que esa señal esté concedida.
Panel Consent Overview (BETA) de GTM con el grupo Consent Not Configured y las columnas Built-In Consent y Additional Consent
En este ejemplo, el grupo Consent Not Configured (1) lista etiquetas de eventos de GA4. Su columna Built-In Consent (2) muestra las cuatro señales que las etiquetas de Google revisan solas; la columna Additional Consent (3) está vacía.

Qué hacer con cada grupo:

  1. Las etiquetas de Google en Consent Not Configured ya tienen comprobaciones integradas. En modo avanzado puedes marcarlas como No additional consent required para que salgan del grupo.
  2. Las etiquetas que no son de Google en ese grupo no entienden el consentimiento. Se disparan sin importar el banner, a menos que agregues una comprobación.
  3. Para cambiar varias a la vez, marca sus casillas y haz clic en el ícono Edit Consent Settings. Luego define Additional Consent Checks y guarda.

Para una sola etiqueta, ábrela y ve a Advanced Settings > Consent Settings (configuración avanzada > consentimiento). Verás Built-In Consent Checks (solo lectura) y Additional Consent Checks con tres opciones:

Opción Cuándo usarla
Not set (sin definir, predeterminada) No la dejes así una vez que revisaste la etiqueta
No additional consent required (no se requiere consentimiento adicional) Etiquetas de Google en modo avanzado, o etiquetas que no crean cookies ni envían datos personales
Require additional consent for tag to fire (requerir consentimiento adicional) Píxeles de terceros, mapas de calor, chats. Haz clic en + Add required consent y elige ad_storage, analytics_storage u otra señal

Los píxeles publicitarios de terceros deben esperar a ad_storage. Usa analytics_storage para herramientas de analítica.

Para el modo básico, agrega comprobaciones adicionales también a las etiquetas de Google. Exige analytics_storage en las etiquetas de GA4 y ad_storage en las de Google Ads. Así no cargarán en absoluto hasta que haya consentimiento.

Revisa también tus activadores. Las etiquetas deben dispararse en Initialization - All Pages o después, nunca en Consent Initialization, salvo la etiqueta del CMP.

Paso 5: Prueba y publica

  1. Haz clic en Vista previa, escribe tu URL y conéctate.
  2. En un perfil de navegador limpio (sin consentimiento guardado), carga el sitio. No toques el banner todavía.
  3. Luego acepta todo. Después repite en otra sesión limpia y rechaza todo.
  4. Revisa los resultados como se explica en la siguiente sección.
  5. Cuando todo se vea bien, haz clic en Enviar, nombra la versión (por ejemplo «Consent Mode v2 con plantilla del CMP») y Publica.

Cómo confirmar que quedó resuelto

En Tag Assistant:

  1. Selecciona el primer evento Consent de la lista izquierda. En la llamada a la API deben aparecer las cuatro señales con tus valores predeterminados.
  2. Haz clic en una etiqueta de GA4 o Google Ads y abre la pestaña Consent. La columna On-page Default debe mostrar tus valores predeterminados.
  3. Después de hacer clic en Aceptar, selecciona el evento Consent más reciente. La columna On-page Update debe mostrar granted.
  4. Abre la pestaña Tags para confirmar que las etiquetas con comprobaciones adicionales se quedaron bloqueadas antes del consentimiento.
  5. Si la pestaña Consent está vacía, Consent Mode no está configurado en esa página.

Así debe verse la pestaña Consent para un visitante de una región con aceptación previa que hace clic en Aceptar:

Tipo de consentimiento On-page Default On-page Update
ad_storage Denied Granted
analytics_storage Denied Granted
ad_user_data Denied Granted
ad_personalization Denied Granted

Si faltan ad_user_data o ad_personalization, la integración de tu CMP está incompleta.

En las solicitudes de red (opcional): abre las DevTools de Chrome, pestaña Network, y filtra por collect. Haz clic en una solicitud de GA4 y busca gcs y gcd en los datos. Los especialistas leen gcs como G1 más dos dígitos: el primero para ad_storage y el segundo para analytics_storage. Así, G100 significa ambos denegados y G111 ambos concedidos. gcd codifica las cuatro señales. Google no documenta oficialmente estos valores, así que úsalos solo como ayuda para depurar.

En GA4: ve a Admin > Data collection and modification > Consent settings (configuración de consentimiento). GA4 muestra si recibe las señales de medición y personalización de anuncios para el tráfico del EEE. Los mensajes de estado pueden tardar de 48 a 72 horas en actualizarse.

En Google Ads: abre Goals > Summary (objetivos > resumen) y haz clic en la pestaña Diagnostics. La tarjeta Consent mode muestra un estado para web (por ejemplo Excellent) y un enlace View details. Google indica que necesita al menos 7 días completos de datos de Consent Mode, y tráfico suficiente para superar un umbral mínimo, antes de poder mostrar su impacto.

Pestaña Diagnostics de Goals Summary en Google Ads con la tarjeta Consent mode que muestra Web Excellent y View details
En Google Ads, la pestaña Diagnostics tiene una tarjeta Consent mode (1). Esta cuenta de ejemplo muestra Web como Excellent; haz clic en View details para ver el desglose.

¿Sigue sin funcionar? Causas comunes

Síntoma Causa probable Solución
La pestaña Consent está vacía en Tag Assistant No hay valor predeterminado o la etiqueta del CMP no se dispara Confirma que la etiqueta del CMP use Consent Initialization - All Pages
Tag Assistant marca un error porque una etiqueta leyó el consentimiento antes del valor predeterminado Valor predeterminado tardío (activador de vista de página, script asíncrono o fragmento debajo de GTM) Pasa los valores a Consent Initialization o arriba del fragmento de GTM
Solo aparecen ad_storage y analytics_storage El CMP o la plantilla siguen en v1 Actualiza la plantilla y asigna ad_user_data y ad_personalization
No hay actualización después de Aceptar Correspondencia de categorías incorrecta o actualización enviada al salir de la página Corrige la correspondencia. Haz que la actualización se envíe justo después del clic
Los píxeles de terceros se disparan antes del consentimiento Esas etiquetas no tienen comprobaciones adicionales Exige ad_storage (o la señal correcta) en cada una
Los datos de GA4 caen mucho tras el lanzamiento Es lo esperado en regiones con aceptación previa en modo básico, o pusiste denied para todo el mundo Usa valores por región. Confirma la política y evalúa el modo avanzado
Se ignora la elección de visitantes que regresan El CMP no vuelve a aplicar el consentimiento guardado antes de las etiquetas Usa wait for update y una plantilla que lea el consentimiento guardado al cargar
GA4 sigue avisando que faltan señales Retraso del estado, o al tráfico del EEE le siguen faltando señales v2 Espera 72 horas. Vuelve a probar simulando una ubicación del EEE
No se registran cambios en aplicaciones de una sola página La actualización se envía durante un cambio de ruta que descarga la vista Envía la actualización en la página donde ocurre la elección, de inmediato
Valores predeterminados duplicados y distintos Una plantilla y un fragmento en el código definen valores a la vez Deja una sola fuente de valores predeterminados

Cómo probar los valores por región

Si definiste valores por región, tu propia ubicación decide lo que ves. La guía de depuración de Google sugiere cambiar tu ubicación en Chrome para probar cada región con valores propios. Si tu CMP detecta la región por la dirección IP, quizá necesites una VPN. Confirma que los visitantes del EEE empiecen en denied y los demás con los valores que elegiste.

Preguntas frecuentes

¿Necesito Consent Mode v2 si no tengo visitantes de Europa?

Google lo exige para visitantes del EEE cuando usas sus funciones de medición y personalización de anuncios. Si no tienes tráfico del EEE, no es obligatorio por esa razón, pero otras leyes de privacidad pueden exigir un banner. Consulta con tu asesor de privacidad.

¿Consent Mode es lo mismo que un banner de cookies?

No. El banner recoge la elección. Consent Mode le pasa esa elección a las etiquetas de Google. Necesitas ambos.

¿El modo avanzado incumple las reglas de privacidad?

Google indica que, si el consentimiento está denegado, las etiquetas envían pings sin cookies con datos limitados. Si eso cumple tus obligaciones es una pregunta legal. Algunos negocios eligen el modo básico por esa razón.

¿Las etiquetas de evento de GA4 necesitan comprobaciones adicionales?

No en modo avanzado. Las etiquetas de Google tienen comprobaciones integradas. En modo básico, agrega analytics_storage como comprobación adicional para que no carguen antes del consentimiento.

¿Esto afecta mi seguimiento de conversiones?

Sí, algunas conversiones de visitantes que rechazan no se observarán directamente. Google puede modelar una parte cuando alcanzas los umbrales de datos. Revisa el seguimiento de conversiones de Google Ads y las conversiones avanzadas después del lanzamiento, y vuelve a revisar tu instalación de GTM si las etiquetas dejan de dispararse.

¿Te atoraste con esto? Lo resolvemos para clientes cada semana. Agenda una auditoría gratis

Fuentes

Previous
Previous

Guía de parámetros UTM: crea, nombra y corrige «Sin asignar» en GA4

Next
Next

Cómo medir conversiones de Google Ads con Google Tag Manager