Google Consent Mode v2: modo básico frente a avanzado, y qué envía realmente tu banner
Publicado el
Consent Mode v2 son cuatro señales y una regla de orden. Qué significa cada señal, cómo se traducen a ellas las categorías de un banner y en qué se diferencian el modo básico y el avanzado, con lo que hace Croombit en cada caso.
Desde marzo de 2024, Google exige a los sitios con visitantes en el EEE enviar las señales de Consent Mode v2 si quieren seguir usando sus funciones de medición y de personalización de anuncios. Casi toda la confusión viene de tratarlo como un ajuste de producto. No lo es. Es un protocolo pequeño y bien definido entre tu banner de consentimiento y las etiquetas de Google: un estado por defecto antes de que nadie decida y una actualización cuando lo hace.
Las señales, en claro
| Señal | Qué controla | Croombit la deriva de |
|---|---|---|
analytics_storage | Cookies de analítica (p. ej. _ga de Google Analytics) | La categoría ANALYTICS |
ad_storage | Cookies publicitarias | La categoría MARKETING |
ad_user_data | Enviar datos del usuario a Google con fines publicitarios — nueva en v2 | La categoría MARKETING |
ad_personalization | Anuncios personalizados y remarketing — nueva en v2 | MARKETING o PERSONALIZATION |
functionality_storage / personalization_storage | Almacenamiento para funciones del sitio y personalización | FUNCTIONAL / PERSONALIZATION |
security_storage | Seguridad (antifraude, autenticación) | Siempre granted |
La traducción se hace por categoría, no por el nombre del propósito. Un propósito llamado newsletter_tracking con categoría MARKETING mueve las tres señales de anuncios; uno llamado marketing con categoría ANALYTICS solo mueve analytics_storage. De esa diferencia sale la mayoría de los tickets de «Consent Mode no funciona» — consulta Categorías de cookies.
La regla de orden: primero el valor por defecto, después la actualización
Antes de que se ejecute cualquier etiqueta de Google, la página tiene que declarar un valor por defecto: todo lo que aún no se ha decidido es denied. Cuando el visitante elige, el banner envía una actualización con los valores reales. Si el valor por defecto llega después de que una etiqueta ya se haya disparado, esa etiqueta ya se ha comportado como si hubiera consentimiento, y ninguna actualización posterior lo deshace.
// Lo que el banner de Croombit (cmp.js) envía antes de cualquier etiqueta de Google:
gtag('consent', 'default', {
ad_storage: 'denied', ad_user_data: 'denied', ad_personalization: 'denied',
analytics_storage: 'denied', functionality_storage: 'denied',
personalization_storage: 'denied', security_storage: 'granted',
wait_for_update: 500,
});
// …y cuando el visitante decide (aquí: analítica sí, marketing no):
gtag('consent', 'update', { analytics_storage: 'granted', ad_storage: 'denied', /* … */ });wait_for_update: 500 da medio segundo a que llegue la elección guardada de un visitante recurrente antes de que las etiquetas usen el valor por defecto.
Modo básico frente a avanzado
- Modo básico: las etiquetas de Google no se cargan hasta que el visitante concede la categoría correspondiente. A Google no le llega nada antes de una decisión, y si la rechaza, no le llega nada en absoluto. Google modela menos porque recibe menos.
- Modo avanzado: las etiquetas se cargan de inmediato con los valores
deniedy envían pings sin cookies, que Google usa para modelar conversiones y comportamiento. Obtienes mejores cifras modeladas; también envías peticiones a Google antes de que nadie haya dicho que sí, algo que tu equipo legal tiene que haber valorado.
El banner alojado funciona en modo básico. Retiene gtag/js y gtm.js —junto con el resto de rastreadores conocidos— hasta que se concede la categoría correspondiente, y aun así envía primero los valores denied para lo que se ejecute antes. Es el punto de partida conservador para un sitio europeo.
Si habéis optado por el modo avanzado, usa la integración a medida: carga gtag tú mismo, envía los valores por defecto y deja que tc.applyConsentMode(visitor, gtag) mande la actualización a partir del estado guardado. El mismo estado está disponible en servidor con GET /v1/consent/google-consent-mode — consulta TCF, Consent Mode y GPP.
Consent Mode no es una prueba de consentimiento
Consent Mode le dice a Google qué puede hacer. En tu lado no registra nada. Si una autoridad pregunta qué aceptó un visitante concreto, la respuesta tiene que salir de tus propios registros: el texto exacto que se mostró, la decisión y cuándo se tomó. En Croombit eso es la entrada de la bóveda detrás de cada decisión y su recibo firmado; Consent Mode es solo el último paso, el que se lo comunica a las etiquetas.