Artículo · Compliance · Tracking

Consent Mode v2 sin Cookiebot: cómo cumplir sin pagar 400€/año.

Desde marzo de 2024, si usas Google Ads o GA4 en Europa, Consent Mode v2 es obligatorio. Cookiebot, OneTrust y similares empiezan en 12€/mes y escalan rápido. Para sites con tráfico modesto es un coste absurdo cuando implementarlo vanilla lleva un día. Te cuento exactamente cómo.

1. Qué es Consent Mode v2 y por qué importa

Consent Mode es el mecanismo oficial de Google para que tu sitio le diga a GA4/Ads: "este usuario ha consentido analytics/marketing" o "no ha consentido". A partir de marzo de 2024, Google bloquea las remarketing audiences y reduce la señal de conversión si tu site NO envía estas señales de consentimiento. Efecto práctico: tus campañas rinden peor y tu atribución se rompe.

Las 6 categorías que Consent Mode v2 maneja:

  • ad_storage — cookies de publicidad
  • ad_user_data — datos de usuario para Ads
  • ad_personalization — personalización publicitaria
  • analytics_storage — cookies analíticas
  • functionality_storage — sesión, carrito, login
  • security_storage — CSRF, anti-fraude

Las 4 primeras requieren consentimiento explícito. Las 2 últimas son "esenciales" y pueden estar activas por defecto. Tu banner tiene que permitir al usuario decidir categoría por categoría (o al menos separar "analítica" de "marketing").

2. Por qué NO necesitas Cookiebot / OneTrust

Las soluciones comerciales hacen 3 cosas:

  1. Pintan un banner bonito con tus textos legales.
  2. Escanean tu web y clasifican las cookies detectadas.
  3. Llaman a gtag('consent', 'update', ...) cuando el usuario elige.

La funcionalidad 3 es 30 líneas de JavaScript. La 1 es HTML/CSS normal. La 2 es cómoda pero, en la mayoría de sites, conoces perfectamente qué cookies pones: Google Analytics, Meta Pixel, LinkedIn Insight, alguna herramienta de chat. Listarlas a mano tarda 10 minutos y queda en la política de cookies.

El coste real de Cookiebot / OneTrust:

  • 12–40€/mes escalando con visitas/propiedades.
  • Dependencia externa: si su CDN falla, tu banner no carga y pierdes consentimientos.
  • Peso: añaden 60–120 KB de JS sólo para el banner.
  • Control: sus textos son genéricos, cambiarlos requiere pagar tier superior.

3. Arquitectura de la implementación vanilla

La estructura que usamos en garbonmedia.com (open source por definición, inspecciónala en devtools):

  1. Consent Mode "default-denied" en el <head>. Antes de cualquier script de tracking, inyectamos gtag('consent', 'default', {...todo denied...}). Crítico que sea lo primero — si un script de tracking carga antes, el consent se ignora.
  2. Aplicar decisión guardada también en <head>. Si el usuario ya decidió en una visita anterior (localStorage['gm_consent_v1']), aplicamos gtag('consent', 'update', ...) antes de que los scripts de analytics disparen su primer page_view.
  3. Cargar scripts de tracking (GA4, Meta, LinkedIn) sin condiciones. Respetarán el consent state actual.
  4. Banner al final del body, oculto con CSS si hay decisión guardada. JS sólo lo muestra si el usuario no ha decidido.
  5. Click en "Aceptar" / "Rechazar" / "Personalizar": guarda en localStorage + llama gtag('consent', 'update', ...). Esto es lo único que "activa" el tracking para esa sesión.

4. Pitfalls comunes que hacen tu banner inválido

AEPD ha empezado a sancionar proactivamente. Estos son los fallos que invalidan un banner:

  • Aceptar más visible que rechazar: si "Aceptar" es verde-grande y "Rechazar" es gris-pequeño, es ilegal. Deben tener peso visual equivalente.
  • No tener opción rechazar en primer nivel: "Aceptar" + "Personalizar" (que lleva a otro modal) es ilegal. Rechazar tiene que ser un click.
  • Pre-marcar las casillas de analítica/marketing en el panel detallado. Deben estar en "no" por defecto.
  • Cargar tracking antes del consent: cualquier fetch a Google Analytics ANTES de que el usuario acepte es una infracción.
  • No dejar revocar el consentimiento. Debe haber un link permanente visible (típicamente en footer) para reabrir el banner.

El nuestro cumple los 5. Está en assets/js/consent.js + views/partials/consent-banner.php.

5. ¿Y el PDF de política de cookies?

Sí, necesitas un texto publicado con:

  • Qué es una cookie (explicación genérica).
  • Qué cookies usa tu site (nombre, finalidad, duración, categoría).
  • Cómo gestionarlas desde el navegador (links a Chrome, Firefox, Safari, Edge).
  • Link al banner para revocar el consentimiento.

Una página /cookies bien redactada + el banner funcional es lo que AEPD exige. Nada más.

Cuándo SÍ tiene sentido Cookiebot

Para ser justos: si tu site tiene cientos de cookies de terceros, si cambian con frecuencia, o si compliance exige auditoría automatizada periódica, Cookiebot (u Onetrust) tienen sentido. Para una web corporativa con GA4 + Meta + LinkedIn, es matar moscas a cañonazos.

Antes de irte

¿30 minutos de auditoría técnica gratuita?

Revisamos tu web en vivo, identificamos incumplimientos de RGPD, accesibilidad y rendimiento, y te mandamos el informe priorizado en menos de 48h. Sin compromiso y sin venta agresiva.

Quiero la auditoría