Las etiquetas publicitarias HTML personalizadas de GTM no tienen una función integrada para detectar el consentimiento. Para activar un píxel, un script de remarketing o un rastreador de visitantes solo después de que un usuario acepte las cookies publicitarias en CookieYes, necesitas una configuración basada en disparadores que detecte los eventos de consentimiento explícito, y no la combinación predeterminada «Todas las páginas + Una vez por página», que falla de forma silenciosa tras un intento de activación bloqueado.
Table of Contents
Puntos clave
- CookieYes guarda las opciones de consentimiento del usuario en la
cookieyes-consentcookie; GTM la lee a través de una variable de cookie de primera parte - El disparador correcto es un evento personalizado en
cookie_consent_updatecon una condición que compruebe queadvertisement:yesaparezca en el valor de la cookie - Si combinas «Todas las páginas» con «Una vez por página», GTM cuenta un intento bloqueado de carga de la página como el momento de activación, y la etiqueta nunca se activa después de que el usuario haga clic en «Aceptar».
- Necesitas
ad_storage,ad_user_datay «ad»personalizationen la configuración avanzada de consentimiento de la etiqueta como segunda capa de verificación - Este enfoque solo se aplica a las etiquetas HTML personalizadas; las etiquetas nativas de Google Ads y GA4 tienen su propio comportamiento en el modo de consentimiento.
Por qué las etiquetas HTML personalizadas no respetan por sí solas el modo de consentimiento


Las etiquetas HTML personalizadas de GTM no detectan las señales del «Modo de consentimiento» de Google. Cuando pegas un fragmento de código de Meta Pixel, una etiqueta de LinkedIn Insight o cualquier script de remarketing de terceros en una etiqueta HTML personalizada, esa etiqueta se activa cada vez que se activa su desencadenante. No tiene en cuenta adstorage aduser_data ; esas señales solo afectan automáticamente a las etiquetas nativas de Google (conversiones de Google Ads, GA4).
Según la documentación del «Modo de consentimiento» de Google, las señales de consentimiento como ad_storage y ad_user_data solo controlan de forma nativa el comportamiento de las propias etiquetas de Google. Los scripts de terceros que se pegan en las etiquetas de HTML personalizado quedan fuera de esta capa de control; se ejecutan independientemente del estado del consentimiento, a menos que el propio desencadenante lo impida.
Esta distinción es muy importante para cualquier sitio web que opere bajo el RGPD, la CCPA o marcos normativos similares. Los scripts de terceros añadidos como «HTML personalizado» pueden instalar cookies publicitarias en el momento en que se ejecutan, por lo que el hecho de que se activen antes de que se dé el consentimiento supone un riesgo de incumplimiento normativo, no solo un problema de precisión en el seguimiento.
El error de disparo «Una vez por página»
Cuando añades «Todas las páginas» como desencadenante y configuras las opciones de activación en «Una vez por página», GTM evalúa la etiqueta cada vez que se carga una página. Si CookieYes activa su «Inicialización del consentimiento» antes de que el usuario lo haya aceptado, GTM podría intentar activar la etiqueta en ese momento. Las comprobaciones de consentimiento impiden que se ejecute realmente, pero GTM sigue registrando la evaluación como la única activación permitida para esa sesión de página.
El resultado: el usuario abre el banner, hace clic en «Aceptar todo», CookieYes envía una actualización del consentimiento al dataLayer y no pasa nada. El script publicitario se queda inactivo durante toda la sesión porque GTM ya había usado la ranura «Una vez por página» durante el intento bloqueado de carga de la página.
No se trata de un error que aparezca de forma sistemática durante las pruebas. En el modo de vista previa de GTM, el comportamiento puede parecer correcto si cargas la vista previa con las cookies ya borradas y aceptas el consentimiento antes de que se activen las etiquetas. El error se manifiesta en producción cuando el banner de CookieYes se carga y se inicializa antes de que otros contenedores de GTM hayan tenido tiempo de procesar la cola de eventos.
¿Por qué basta con usar un disparador personalizado para solucionarlo?
Si el único desencadenante de la etiqueta es el cookie_consent_update «Evento personalizado», GTM ni siquiera evalúa la etiqueta cuando se carga la página. No hay ningún intento bloqueado ni se desperdicia ningún espacio de activación. La etiqueta solo se tiene en cuenta para activarse cuando se dispara el evento personalizado, lo cual ocurre cuando CookieYes envía un cambio de estado de consentimiento a dataLayer. En ese momento, si se cumplen tanto la condición de la cookie como las comprobaciones de consentimiento, la etiqueta se ejecuta sin problemas.
Paso 1: Configura CookieYes para el modo de consentimiento de Google v2
Hay que configurar CookieYes para que, por un lado, inicialice los valores predeterminados del «Modo de consentimiento» de Google antes de que se activen otras etiquetas y, por otro, envíe eventos a dataLayer cuando cambie el estado de consentimiento del usuario.
En el panel de control de CookieYes, activa la compatibilidad con el Modo de consentimiento de Google v2. Con esta configuración, CookieYes inserta la gtag('consent', 'default', {...}) llamada antes de que se cargue el contenedor de GTM, estableciendo valores predeterminados para todas las señales de consentimiento.
Configura el estado predeterminado del consentimiento para las señales publicitarias en «denegado»:
ad_storage: deniedad_user_data: deniedad_personalization: denied
Cuando un usuario acepta la categoría «Publicidad», CookieYes llama a gtag('consent', 'update', {...}) y cambia las tres a granted. Además, envía el cookie_consent_update evento a dataLayer; ese es el evento que tu activador de GTM va a detectar.
Activador de la etiqueta CMP de CookieYes en GTM
En GTM, la etiqueta CMP de CookieYes debe activarse con el desencadenador «Inicialización del consentimiento – Todas las páginas», y no con el desencadenador estándar «Todas las páginas». Esta distinción es importante: el desencadenador «Inicialización del consentimiento» se activa antes que cualquier otro tipo de desencadenador, lo que garantiza que CookieYes establezca los valores predeterminados antes de que se ejecute cualquier etiqueta al cargar la página. Si usas el activador estándar «Todas las páginas» para la etiqueta de CookieYes, es posible que los valores predeterminados del consentimiento lleguen demasiado tarde y que otras etiquetas se activen antes de que se establezcan las señales de GCM.
La cookie «cookieyes-consent»
CookieYes guarda la decisión completa del usuario sobre el consentimiento en una cookie propia llamada cookieyes-consent. Un valor típico de aceptación tiene este aspecto:
consent:yes,analytics:yes,functional:yes,advertisement:yesUn estado rechazado o parcialmente aceptado podría tener este aspecto:
consent:yes,analytics:no,functional:yes,advertisement:noGTM lee esta cadena de cookies para comprobar si se cumple la condición publicitaria.
Paso 2: Crea la variable de GTM
Crea una nueva variable en GTM para leer el cookieyes-consent valor de la cookie. Esta variable se usa en la condición del activador.
| Escenario | Valor |
|---|---|
| Tipo de variable | Cookie de primera parte |
| Nombre de la variable | Consentimiento de CookieYes |
| Nombre de la cookie | cookieyes-consent |
| Descodificar la cookie URI | No |
La variable devuelve la cadena completa de la cookie como un valor de texto sin formato. No hace falta procesarla con JavaScript, ya que la condición de activación se encarga de buscar coincidencias en subcadenas.
Paso 3: Crea el desencadenador de evento personalizado


Este disparador detecta el evento que CookieYes envía a dataLayer cada vez que cambia el estado del consentimiento: carga inicial del consentimiento, aceptación, rechazo o actualización de una categoría específica.
| Escenario | Valor |
|---|---|
| Tipo de disparador | Evento personalizado |
| Nombre del disparador | CookieYes: Publicidad autorizada |
| Nombre del evento | cookie_consent_update |
| En marcha | Algunos eventos personalizados |
| Variable de estado | {{CookieYes Consent}} |
| Operador condicional | contiene |
| Valor de la condición | anuncio: sí |
El valor de la condición es exactamente advertisement:yes. No incluyas la palabra «contiene» en el campo de valor; ese es el operador que eliges en el menú desplegable, no forma parte de la cadena.
Este disparador se activa cada vez que cambia el estado del consentimiento y el valor de la cookie resultante incluye advertisement:yes. Si el usuario rechaza las cookies publicitarias, la cookie contendrá advertisement:no, la condición no se cumple y el disparador no se activa.
¿No tienes claro qué está haciendo realmente tu contenedor de GTM?
El error «Una vez por página» es uno de los muchos fallos ocultos que encontramos en las configuraciones de GTM: etiquetas que se activan antes de obtener el consentimiento, píxeles que dejaron de funcionar hace meses y señales de consentimiento que nunca llegan a las etiquetas que deberían controlar. Cada uno de ellos supone un riesgo de incumplimiento normativo o una pérdida de datos de conversión.
Nuestra auditoría de tu página web de WordPress incluye un análisis completo de tu contenedor de GTM, el flujo de consentimiento y el comportamiento de activación de cada etiqueta, junto con una lista de correcciones priorizadas que puedes poner en práctica esa misma semana.
Paso 4: Configurar la etiqueta publicitaria
Una vez que tengas la variable y el disparador configurados, crea o actualiza tu etiqueta publicitaria.
Tipo de etiqueta y ajustes de disparo
Selecciona el tipo de etiqueta «HTML personalizado» y pega tu código publicitario en el cuerpo. En «Configuración avanzada», configura las «Opciones de activación de la etiqueta» en «Una vez por página».
Para el disparador, asigna solo el disparador «CookieYes: Publicidad autorizada». No añadas «Todas las páginas» ni ningún otro disparador de visualización de página junto a él. La opción «Una vez por página» es segura en este caso, ya que el disparador solo se activa tras el consentimiento confirmado; no hay ninguna evaluación al cargar la página que pueda consumir la ranura de activación antes de tiempo.
Configuración avanzada de consentimientos
En la configuración de las etiquetas, abre «Ajustes de consentimiento» y selecciona «Exigir consentimiento adicional para que se active la etiqueta». Añade los siguientes tipos de consentimiento:
ad_storagead_user_dataad_personalization
Esto crea una segunda capa de verificación. Aunque se active el disparador (se cumpla la condición de la cookie), la etiqueta solo se ejecuta si las tres señales de consentimiento del «Modo de consentimiento de Google» están configuradas en granted. Si el navegador del usuario tiene una sesión activa en la que las señales siguen denied, o si CookieYes actualiza la cookie pero las señales de GCM se retrasan, esta comprobación evita una ejecución prematura.
¿Por qué son necesarias ambas capas?
La condición de activación lee la cookie «CookieYes» (un valor de cadena controlado por el CMP). Las comprobaciones de consentimiento leen las señales de Google Consent Mode, un estado de dataLayer controlado por la API de GCM. Ambas deben indicar que el usuario ha aceptado la publicidad. En la mayoría de las implementaciones se actualizan a la vez, pero si solo te fías de una, puede haber un lapso en el que la otra aún no se haya propagado.
Si un usuario acepta las cookies publicitarias y luego las revoca explícitamente más adelante en la misma sesión, las señales de GCM vuelven a denied. Aunque no se haya utilizado la ranura «Una vez por página», la etiqueta no se activará porque falla la comprobación del consentimiento.
Paso 5: Prueba en la vista previa de GTM


Las pruebas requieren verificar dos flujos: el flujo de aceptación y el flujo de rechazo.
| Paso | Acción | Resultado esperado |
|---|---|---|
| 1 | Borra las cookies de la web, abre la vista previa de GTM | No hay ninguna etiqueta publicitaria en «Tags Fired» al cargar la página |
| 2 | Carga la página con el banner de consentimiento visible | cookie_consent_update incendios; la etiqueta no aparece en «Etiquetas activadas» |
| 3 | Haz clic en «Rechazar todo» | cookie_consent_update disparos; etiqueta ausente en «Etiquetas disparadas» |
| 4 | Actualiza la página; haz clic en «Aceptar todo» | cookie_consent_update incendios; abre el evento |
| 5 | Marca la pestaña «Consentimiento» en la vista previa de GTM | ad_storage, ad_userdata, ad_personalization mostrar granted |
| 6 | Comprueba las etiquetas que se activaron en ese evento | Aquí aparece el banner publicitario |
| 7 | Echa un vistazo a la pestaña «Red» del navegador | Solicitud de píxel o script visible |
| 8 | Repite el proceso completo solo con «Rechazar todo» | Falta la etiqueta en la pestaña «Red» en todas partes |
La guía oficial de Google sobre la verificación del «Modo de consentimiento» explica cómo usar la pestaña «Consentimiento» en la vista previa de GTM para confirmar que adstorage, aduserdata, y adpersonalization se ha actualizado a granted tras la interacción del usuario.
El paso 8 es el que se saltan la mayoría de las implementaciones. Es necesario que la etiqueta no se active en el paso 6; que la etiqueta no aparezca en «Red» cuando la rechazas es un requisito de cumplimiento. Ambos deben superarse.
Importante: esto no se aplica a las etiquetas nativas de Google
La configuración que acabamos de describir está pensada para etiquetas HTML personalizadas que contengan scripts publicitarios de terceros que no sean compatibles de forma nativa con el «Modo de consentimiento».
Las etiquetas nativas de Google Ads y GA4 funcionan de forma diferente. En el «Modo de consentimiento avanzado», las etiquetas nativas de Google pueden activarse antes de que se dé el consentimiento; recopilan datos modelados sin cookies y envían pings limitados sin instalar cookies publicitarias. Se trata de un comportamiento intencionado que facilita el modelado de conversiones y ayuda a recuperar los datos de atribución perdidos.
Si aplicas el cookie_consent_update disparador a las etiquetas nativas de Google Ads o GA4 suprimiría por completo la recopilación de datos previa al consentimiento, haciendo que pasen a funcionar en el «modo de consentimiento básico». Que esto te parezca aceptable o no depende de tu estrategia de medición, pero es una disyuntiva diferente a la de simplemente asegurarte de que un píxel de terceros se active en el momento adecuado.
Si tu sitio web utiliza una combinación de etiquetas nativas de Google y scripts HTML personalizados de terceros, configúralos por separado. Las etiquetas nativas pueden usar activadores estándar de visualización de página, y GCM se encarga automáticamente de las comprobaciones de consentimiento. Las etiquetas HTML personalizadas utilizan la configuración de activadores que se describe aquí.
Preguntas frecuentes
¿Esta configuración funciona con cualquier píxel publicitario?
Sí. La configuración es independiente de la plataforma. Funciona con Meta Pixel, LinkedIn Insight Tag, Pinterest Tag, TikTok Pixel o cualquier script de remarketing propio que se añada como HTML personalizado. Las comprobaciones de activación y consentimiento se realizan íntegramente en la capa de GTM, así que el contenido específico del script no importa.
¿Y si el evento «cookie_consent_update» nunca aparece en la vista previa de GTM?
Comprueba dos cosas. Primero, asegúrate de que la etiqueta CMP de CookieYes en GTM esté configurada para activarse en «Inicialización del consentimiento – Todas las páginas», y no en un activador estándar de vista de página. Segundo, comprueba en el panel de control de CookieYes que el «Modo de consentimiento de Google» esté activado. Si el evento no aparece por ningún lado en el flujo de eventos de «Vista previa», significa que la etiqueta de CookieYes no está en el contenedor, se activa con el desencadenante equivocado o la integración con GCM está desactivada en la configuración de CookieYes.
¿Debería aplicar esto a las etiquetas de Google Ads y GA4?
No. Las etiquetas nativas de Google Ads y GA4 ya tienen integrada la gestión del «modo de consentimiento». Si las limitas al cookie_consent_update desencadenador desactivaría sus notificaciones sin cookies previas al consentimiento, lo cual no suele ser el resultado deseado. Configura las etiquetas nativas de Google con desencadenadores estándar de visualización de página y deja que GCM gestione su comportamiento en materia de consentimiento.
¿Cuál es la diferencia entre el modo de consentimiento básico y el avanzado?
En el modo de consentimiento básico, las etiquetas no se activan hasta que el usuario da su consentimiento; no se recopilan datos hasta que interactúas con el banner. En el modo de consentimiento avanzado, las etiquetas nativas de Google se activan antes de que se dé el consentimiento, pero solo recopilan datos anónimos y sin cookies; luego, pasan al seguimiento completo una vez que se ha dado el consentimiento. Las etiquetas HTML personalizadas siempre funcionan en modo básico, independientemente de tu configuración de GCM: solo se activan cuando se dispara el desencadenante, y el desencadenante de esta guía solo se activa después de que se haya dado el consentimiento.
¿Por qué la categoría de publicidad controla precisamente estas señales de consentimiento?
CookieYes asocia sus categorías de cookies a los tipos de consentimiento de GCM. La categoría «Publicidad» se corresponde con ad_storage, ad_user_data, y ad_personalization. Cuando un usuario acepta «Publicidad», CookieYes actualiza las tres señales a granted. Las categorías «Funcionales», «Analíticas» y otras se asocian a señales diferentes (functionality_storage, analytics_storage) y no afectan a la activación de las etiquetas publicitarias.
Resumen
Para cargar de forma fiable los scripts HTML personalizados de publicidad tras el consentimiento de CookieYes, se necesitan tres componentes que funcionen juntos: una etiqueta CMP de CookieYes que se active al inicializar el consentimiento, un disparador de evento personalizado que lea la cookieyes-consent cookie para advertisement:yes, y unos requisitos de consentimiento explícito para ad_storage, ad_user_data, y ad_personalization en la propia etiqueta.
El error más habitual es combinar «Todas las páginas» con «Una vez por página», lo que le da a GTM una oportunidad de activarse durante el intento bloqueado de carga de la página y no deja nada para cuando el usuario dé su consentimiento de verdad. Quitar «Todas las páginas» del disparador por completo es lo que hace que la configuración sea fiable.
Si gestionas sitios de WordPress con configuraciones complejas de etiquetas, requisitos de cumplimiento normativo o configuraciones de GTM en las que el rendimiento es clave, nuestro equipo de soporte y mantenimiento de WordPress se encarga de estas integraciones como parte de la gestión continua del sitio. Una auditoría de tu sitio web de WordPress también puede sacar a la luz lagunas ocultas en materia de consentimiento o seguimiento en todo tu contenedor de GTM. Habla con los ingenieros de IMADO sobre lo que necesita tu sitio.





