Blog
CookiePass y Google Consent Mode: lo que un banner de consentimiento hace con tu tráfico
Publicado · 4 min de lectura
En este sitio usamos CookiePass. Es un servicio de consentimiento de cookies que implementa Google Consent Mode v2 tal como Google lo especifica, y esa propiedad acaba importando más que los colores del banner: decide qué envía tu etiqueta de Google en cada página vista antes de que el visitante responda, después de decir que sí y después de decir que no. Así se ve desde el lado del servidor, donde cada uno de esos hits pasa por tu contenedor.
Lo que Consent Mode cambia de verdad
Consent Mode no es un interruptor para tus etiquetas. Con él, la etiqueta de Google sigue disparándose en cada página; lo que cambia es una marca en cada hit y lo que Google hace con el hit por ella. Cuando analytics_storage está denegado, la etiqueta no pone cookies, no conserva un client id entre páginas y envía lo que Google llama un ping sin cookies: un hit que GA4 usa para modelar, no para los informes que lees.
La marca es un parámetro de consulta llamado gcs: dos letras y dos dígitos. El primer dígito es ad_storage y el segundo analytics_storage; 1 es concedido y 0 denegado.
gcs=G100 ad_storage denied, analytics_storage denied
gcs=G101 ad_storage denied, analytics_storage granted
gcs=G110 ad_storage granted, analytics_storage denied
gcs=G111 both granted
(no gcs) no Consent Mode on the page — treated as grantedLa última línea es la que se pasa por alto. Una página sin Consent Mode no envía gcs, y Google trata cada hit como consentido. Añadir un banner que implemente Consent Mode no reduce lo que se envía: empieza a decir la verdad sobre ello.
Cómo lo conecta CookiePass
Consent Mode v2 exige una secuencia, no un ajuste. El estado por defecto tiene que declararse antes de que cargue la etiqueta de Google —denegado para quien aún no ha elegido—, una actualización debe seguir en cuanto el visitante decide, y ese estado debe restaurarse en cada visita posterior. Si el orden falla, la primera página vista de cada sesión sale como consentida antes de que el banner se haya dibujado.
Esta es la secuencia que CookiePass produce desde su propio script, así que nada de ella acaba en tu contenedor de Tag Manager:
gtag('consent', 'default', {
ad_storage: 'denied',
analytics_storage: 'denied',
ad_user_data: 'denied',
ad_personalization: 'denied',
wait_for_update: 500
});
// …the visitor accepts…
gtag('consent', 'update', {
ad_storage: 'granted',
analytics_storage: 'granted',
ad_user_data: 'granted',
ad_personalization: 'granted'
});Esa es toda la integración. Las etiquetas de Google respetan el estado de consentimiento automáticamente, incluidas las que SignalHost publica en tu contenedor web. Nada en tu contenedor de servidor necesita una condición de consentimiento; añadirla a mano es como una etiqueta de Google bloqueada acaba con etiquetas de evento sin bloquear al lado, enviando datos directamente a Google.
Qué ve tu contenedor de servidor antes y después de la decisión
Cada hit sigue la misma ruta: el navegador lo envía a tu propio hostname, el edge lo reenvía a tu contenedor de servidor y el contenedor lo pasa a GA4. La diferencia está solo en la carga.
- Antes de decidir: gcs=G100 en cada hit, sin cookie _ga y con un client id nuevo en cada página. GA4 recibe un ping sin cookies; tu contenedor cuenta una solicitud.
- Tras aceptar: gcs=G111, se ponen cookies y la sesión se une. Desde aquí son los hits de los que se componen tus informes.
- Tras rechazar: gcs=G100 en cada página mientras dure la decisión. Los eventos de la medición mejorada —scroll, file_download y el resto— siguen la misma regla que page_view.
Por eso la página del contenedor muestra dos cifras por evento cuando hay un banner: los hits enviados con consentimiento de analítica —lo que Analytics mostrará como usuarios y sesiones— y, tras la barra, todo lo que el contenedor reenvió. session_start y first_visit no aparecen en ninguna de las dos: Analytics los deriva de marcas en el primer page_view en lugar de recibirlos como eventos.
Qué significa para tus cifras de tráfico
Espera que las dos columnas no coincidan, y espera que la diferencia sea el número más útil de la página.
- Analytics informa de menos usuarios y sesiones de las solicitudes que cuenta tu contenedor. La diferencia es la parte de visitantes que rechazaron o nunca respondieron: tu tasa de consentimiento, medida en vez de estimada.
- GA4 puede rellenar parte de esa diferencia con modelado de comportamiento cuando la propiedad alcanza los umbrales de Google. Los datos modelados aparecen en los informes; nunca en tu contenedor, porque nunca se envían.
- Con ad_storage denegado, el seguimiento de conversiones de Google Ads no tiene nada que atribuir y el conversion linker nada que enlazar. Un contenedor de servidor no cambia eso, ni debería: first-party no significa sin consentimiento.
- El diseño del banner es ahora una decisión de medición. Una tasa del 60 % y una del 85 % son el mismo sitio con botones distintos, y la diferencia entre columnas te dirá cuál tienes.
Una lista de comprobación
- Carga el script de consentimiento antes de la etiqueta de Google. El estado por defecto debe existir antes del primer hit.
- Abre una página con el banner sin responder y lee gcs en una solicitud /g/collect en el panel de red del navegador. Debe decir G100.
- Acepta y vuelve a leerlo en la página siguiente. Debe decir G111.
- No añadas activadores de consentimiento a nada del contenedor de servidor. La etiqueta web ya lleva el estado.
- Vuelve a la página del contenedor un día después y lee el par de cifras de page_view. La primera entre la segunda es tu tasa de consentimiento.
Elegimos CookiePass porque hace exactamente la secuencia anterior, estuvo en producción en este sitio en una tarde y deja que el banner use los colores del propio sitio. Las cifras de la sección anterior son la prueba de que funciona.
