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
- Elige un banner de consentimiento (CMP) compatible con Consent Mode v2 que tenga plantilla para GTM.
- En GTM, marca Enable consent overview (BETA) (habilitar resumen de consentimiento) en Admin > Container Settings > Additional Settings.
- 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
denieden regiones que requieren aceptación previa). - 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).
- Revisa la configuración de consentimiento de cada etiqueta y agrega comprobaciones de consentimiento adicionales a las que no son de Google.
- 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.
- En GTM, haz clic en Admin.
- En la columna del contenedor, haz clic en Container Settings (configuración del contenedor). Se abre el panel Edit container.
- En Additional Settings (configuración adicional), marca Enable consent overview (BETA).
- Haz clic en Save (guardar), arriba a la derecha.

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.
- 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.)
- Ve a Etiquetas > Nueva y elige esa plantilla.
- Escribe el ID de tu cuenta o sitio en el CMP.
- 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.
- Si la plantilla lo ofrece, define un valor de wait for update (esperar actualización) como
500milisegundos. Así el banner tiene tiempo de leer la elección guardada de un visitante que regresa. - Opciones que incluyen muchas plantillas: ads data redaction (oculta los ID de clic de anuncios cuando
ad_storageestá denegado) y URL passthrough (pasa la información del clic en la URL cuando las cookies están denegadas). - En Triggering (activación), elige Consent Initialization - All Pages.
- Guarda la etiqueta.


- 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.
- 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.

Qué hacer con cada grupo:
- 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.
- 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.
- 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
- Haz clic en Vista previa, escribe tu URL y conéctate.
- En un perfil de navegador limpio (sin consentimiento guardado), carga el sitio. No toques el banner todavía.
- Luego acepta todo. Después repite en otra sesión limpia y rechaza todo.
- Revisa los resultados como se explica en la siguiente sección.
- 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:
- 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.
- 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.
- Después de hacer clic en Aceptar, selecciona el evento Consent más reciente. La columna On-page Update debe mostrar
granted. - Abre la pestaña Tags para confirmar que las etiquetas con comprobaciones adicionales se quedaron bloqueadas antes del consentimiento.
- 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.

¿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
- developers.google.com: /tag-platform/security/guides/consent
- developers.google.com: /tag-platform/security/guides/consent-debugging
- support.google.com: /tagmanager/answer/10718549
- support.google.com: /google-ads/answer/10000067
- support.google.com: /analytics/answer/14275483
- simoahava.com: /analytics/consent-mode-v2-google-tags