En la primera semana de septiembre de 2025, la autoridad francesa de protección de datos CNIL impuso dos de las multas más grandes relacionadas con cookies en la historia europea: 325 millones de euros a Google y 150 millones de euros a SHEIN. Las dos decisiones no tratan de casos exóticos. Tratan del banner de cookies de la página y de las cookies que se cargan detrás de él. Para cualquier SaaS que opere una web (o sea, todos), la lección práctica es corta: el botón "Rechazar todo" tiene que significar lo que dice, y tiene que ser tan fácil de pulsar como "Aceptar todo". Este artículo recorre qué castigó cada multa, los dos principios de diseño que los reguladores ahora exigen, y un patrón práctico para un banner que no te traiga una carta de CNIL.
Qué pasó en septiembre de 2025
Las dos multas surgieron del mismo plan de acción de CNIL que viene ejecutándose desde 2019, pero atacan dos problemas distintos y conviene mantenerlas separadas.
Google: 325 millones de euros por diseño asimétrico (1 de septiembre de 2025)
La decisión se desglosó en 200 millones contra Google LLC y 125 millones contra Google Ireland. CNIL atacó dos prácticas. La primera, mostrar anuncios entre los correos de los usuarios de Gmail sin su consentimiento. La segunda, el banner de cookies mostrado al crear una cuenta Google. Hasta octubre de 2023, la ruta de "personalización exprés" exigía al usuario seis clics para rechazar las cookies publicitarias personalizadas, frente a dos clics para aceptarlas. CNIL dictaminó que el consentimiento recogido así "no era libre ni informado" y ordenó a Google arreglar el flujo en seis meses, con una multa coercitiva de 100.000 euros por cada día de retraso a partir de ahí.
SHEIN: 150 millones de euros por colocar cookies antes del consentimiento (3 de septiembre de 2025)
Dos días después, la misma CNIL multó a SHEIN con 150 millones de euros. La violación era distinta y posiblemente peor: se colocaban cookies en los dispositivos de los visitantes sin ningún consentimiento. No había un "Aceptar todo" ni un "Rechazar todo" que importara, porque las cookies caían antes de que el usuario tuviera oportunidad de rechazar. CNIL enmarcó esto como una de las prácticas no conformes sobre las que sigue vigilante: la colocación de cookies sin el consentimiento del usuario.
Las dos decisiones usaron la misma regla de fondo (el Artículo 82 de la Ley francesa de Protección de Datos, transposición de la Directiva ePrivacy). La diferencia es qué castigan: a Google se le sancionó por cómo se ofrecía la elección; a SHEIN, por no ofrecer una elección real.
Principio de diseño uno: paridad entre Aceptar y Rechazar
La multa a Google codifica un principio que CNIL y varias otras DPAs llevaban años telegrafiando: las opciones presentadas al usuario tienen que ser sustancialmente equivalentes. En concreto, eso se traduce en una checklist corta para los botones de tu banner.
- Mismo número de clics. Si "Aceptar todo" es un clic, "Rechazar todo" es un clic. Sin menús anidados para encontrar el botón de rechazo.
- Mismo peso visual. Mismo tamaño de fuente, mismo estilo de botón, misma prominencia. Un "Rechazar" en gris contra un "Aceptar" en azul es asimétrico, aunque ambos botones sean técnicamente visibles.
- Misma posición en el flujo. Los dos botones en la primera capa del banner. No "Aceptar" arriba y "Gestionar preferencias → ... → Rechazar" a tres taps de profundidad.
- Lenguaje equivalente. "Aceptar todo" y "Rechazar todo" es el patrón simétrico. "Aceptar todo" y "Personalizar" no lo es: oculta el rechazo detrás de otro verbo.
Este es el estándar con el que se han alineado CNIL en Francia, BfDI en Alemania, AEPD en España y el Comité Europeo de Protección de Datos. Los proveedores de banners que aún empaquetan diseños asimétricos saben hoy abiertamente que venden riesgo regulatorio.
Principio de diseño dos: nada se carga antes del consentimiento
La multa a SHEIN codifica la otra mitad de la regla. Un banner correctamente diseñado no sirve de nada si las cookies que dice bloquear se disparan de todos modos. El principio es mecánico:
- En la primera visita aparece el banner.
- Hasta que el usuario pulse "Aceptar todo" o haga una elección granular, solo pueden colocarse cookies estrictamente necesarias. Estrictamente necesarias significa cookies indispensables para entregar el servicio que el usuario pidió: una cookie de sesión, un token CSRF, una cookie de afinidad de balanceador.
- Analytics, publicidad, personalización, A/B testing, retargeting, fingerprinting: ninguna de estas se carga en la primera petición.
- Si el usuario pulsa "Rechazar todo", esas cookies no esenciales se quedan sin dispararse durante el resto de la sesión.
En la práctica, esto significa que tus scripts tienen que cargarse condicionalmente. Un patrón habitual es gatear cada etiqueta <script> no esencial detrás de un estado de consentimiento guardado en una variable de JavaScript, con el SDK de analytics o de ads cargando solo cuando esa variable cambia a granted. Si cargas Google Analytics desde una etiqueta HTML estática sin esa puerta, eres el patrón SHEIN.
Un banner de cookies conforme en la práctica
¿Cómo se ve un banner que satisface los dos principios? La receta mecánica:
- Primera capa: un mensaje corto que explique que se usan cookies, con dos botones claramente equivalentes: Aceptar todo y Rechazar todo. Opcionalmente un tercer enlace de "Gestionar" para control granular.
- Tratamiento visual: los dos botones comparten la misma familia de colores, el mismo tamaño, el mismo radio de borde. O ambos rellenos o ambos contorneados. El rechazo no se renderiza en gris apagado.
- Sin casillas premarcadas en las preferencias granulares. Cada categoría empieza desactivada. El usuario opta por entrar, no por salir.
- Revocación fácil: un enlace persistente de "Preferencias de cookies" en el pie para que el usuario pueda cambiar de opinión. Los flujos de revocación escondidos son en sí mismos una infracción aparte.
- Registro del consentimiento: guarda prueba que incluya el texto exacto que vio el usuario y la versión de la política que aceptó. CNIL lo pide rutinariamente en las investigaciones.
- Solo estrictamente necesarias en la carga. Sin trucos de disparo condicional. Hasta que se otorgue el consentimiento, no se dispara nada más allá de lo que el servicio necesita estrictamente.
Errores comunes que siguen marcándose en 2026
- "Aceptar todo" resaltado en color, "Rechazar todo" renderizado como texto plano o un enlace pequeño en gris. Asimetría pura. CNIL dictaminó en la decisión sobre Google que esto no es consentimiento.
- Banner de cookies sin "Rechazar todo" en el nivel principal, solo con un "Gestionar" o "Personalizar". El Comité Europeo de Protección de Datos ha dicho que el rechazo tiene que estar disponible en la misma capa que la aceptación.
- "Puedes cambiar tus preferencias más tarde" enterrado en una política de privacidad. La revocación tiene que ser accesible sin tener que rebuscar.
- Etiqueta de analytics que dispara en cada carga de página, sin importar el estado de consentimiento. Es el patrón SHEIN. Audita tu <head> manualmente antes de asumir que tu plataforma de consentimiento está haciendo su trabajo.
- Preferencias granulares con todo premarcado. El consentimiento tiene que ser una acción positiva. Premarcado es no consentimiento.
Dónde encaja Termerly en este escenario
Termerly tiene un banner de consentimiento gratuito que incrustas con un único script async. Está diseñado para el caso SaaS en el que no se hace publicidad programática y no se necesita cumplir con IAB TCF. Si eres una plataforma de ad tech o vendes inventario display, necesitas un CMP con TCF 2.3 y Termerly no lo es.
Para el resto, donde el banner existe para satisfacer ePrivacy y RGPD para analytics y cookies de producto, lo que Termerly aporta es concreto:
- El banner se renderiza con tu marca (color, posición, claro u oscuro). Los botones "Rechazar todo" y "Aceptar todo" comparten el mismo peso visual por defecto, así la trampa del diseño asimétrico queda cerrada.
- Cada "Aceptar" registra qué versión exacta de la política vio el usuario. Ese es el registro de consentimiento que CNIL pide en las investigaciones.
- El texto de la política al que enlaza el banner es el mismo que publicas en tu centro legal de Termerly. Actualizar la política no obliga a redeployar tu sitio.
- Si gestionas varios productos SaaS desde una sola cuenta, cada proyecto tiene su propio banner y su propio log de consentimiento, así una auditoría de cliente queda acotada al producto correcto.
Conclusión
Los 475 millones de euros en multas de la primera semana de septiembre de 2025 de CNIL no apuntan a casos límite. Aterrizan sobre patrones que siguen estando por todas partes en la web moderna: un botón Aceptar más ruidoso, un Rechazar más callado, y una etiqueta de analytics que se dispara igual. El arreglo es mecánico y barato si lo haces antes de convertirte en el caso de prueba. Audita tu banner buscando paridad, audita tu <head> buscando etiquetas de script incondicionales, y registra cada consentimiento contra una política versionada que puedas producir bajo demanda.
Si todavía no tienes banner, o el que tienes es el asimétrico que vino empaquetado con un tracker, abre un proyecto gratis en Termerly y despliega hoy mismo un banner con paridad por defecto. Es el tipo de trabajo que cuesta una tarde ahora y te ahorra una conversación mucho más larga después.


