Parte de nuestra serie Compliance & Regulation
Leer la guía completaGuía de implementación del consentimiento de cookies: gestión del consentimiento conforme a la ley
Se han emitido más de 400 millones de euros en multas conforme al RGPD específicamente por violaciones del consentimiento de las cookies desde 2020. La CNIL francesa multó a Google con 150 millones de euros y a Facebook con 60 millones de euros por hacer que fuera más fácil aceptar cookies que rechazarlas. El consentimiento de cookies ya no es un ejercicio de casilla de verificación: es un área de la ley de privacidad que se aplica estrictamente con requisitos técnicos específicos.
Esta guía cubre los requisitos legales, la implementación técnica y la gestión continua del consentimiento de cookies para sitios web y aplicaciones web.
Conclusiones clave
- Según GDPR y ePrivacy, se debe obtener el consentimiento ANTES de configurar cookies no esenciales, no después
- El consentimiento debe ser tan fácil de retirar como de otorgar (rechazar con un solo clic, no enterrado en la configuración)
- Los muros de cookies ("aceptar o abandonar") son ilegales en la mayoría de los estados miembros de la UE
- Se requiere el modo de consentimiento de Google v2 para Google Analytics y Ads en el EEE desde marzo de 2024.
Requisitos legales por región
Comparación de requisitos de consentimiento de cookies
| Requisito | UE (GDPR + ePrivacidad) | Reino Unido (PECR + RGPD del Reino Unido) | EE. UU. (CCPA/leyes estatales) | Brasil (LGPD) | Canadá (PIPEDA) |
|---|---|---|---|---|---|
| Consentimiento previo para cookies no esenciales | Sí (optar por participar) | Sí (optar por participar) | No (modelo de exclusión voluntaria) | Sí (optar por participar) | Se permite el consentimiento implícito |
| Se requiere banner de consentimiento | Sí | Sí | No requerido (pero recomendado) | Sí | Recomendado |
| Opciones granulares (por categoría) | Sí | Sí | No requerido | Sí | Recomendado |
| Igual protagonismo para aceptar/rechazar | Sí | Sí | N/A | Sí | N/A |
| Se permite el muro de cookies | No (en la mayoría de los estados) | No | N/A | No | N/A |
| Se requiere registro de consentimiento | Sí | Sí | No | Sí | Sí |
| Plazo de renovación del consentimiento | Máximo 12 meses | Máximo 12 meses | N/A | No especificado | No especificado |
| Se requiere política de cookies | Sí (detallado) | Sí (detallado) | Sí (si se realiza seguimiento) | Sí | Sí |
¿Qué se considera una galleta?
La Directiva de privacidad electrónica cubre no solo las cookies HTTP sino todas las tecnologías que almacenan o acceden a información en el dispositivo del usuario:
- Cookies HTTP (propias y de terceros)
- Almacenamiento local y almacenamiento de sesión
- IndexedDB
- Toma de huellas digitales del dispositivo
- Seguimiento de píxeles/balizas web
- ETags utilizadas para el seguimiento
Categorización de cookies
Categorías estándar
| Categoría | ¿Se requiere consentimiento? | Ejemplos | Estado predeterminado |
|---|---|---|---|
| Estrictamente necesario | No | Cookies de sesión, tokens CSRF, cookies de equilibrador de carga, autenticación | Siempre encendido |
| Funcional / preferencias | Sí | Preferencia de idioma, preferencia de tema, carrito guardado | Apagado (hasta consentimiento) |
| Análisis / rendimiento | Sí | Google Analytics, Hotjar, Plausible (con cookies) | Apagado (hasta consentimiento) |
| Marketing/publicidad | Sí | Google Ads, Facebook Pixel, cookies de retargeting | Apagado (hasta consentimiento) |
Auditando sus cookies
Antes de implementar el consentimiento, audite cada cookie que establezca su sitio web:
// Browser console: list all cookies
document.cookie.split(';').forEach(c => console.log(c.trim()));
// Or use a scanning tool
// cookiebot.com/en/cookie-checker
// 2gdpr.com
Documente cada cookie:
| Nombre de la galleta | Categoría | Propósito | Duración | Primera/tercera parte |
|---|---|---|---|---|
| CÓDIGO0 | Estrictamente necesario | Autenticación | Sesión | Primera fiesta |
| CÓDIGO0 | Estrictamente necesario | Actualización de token | 7 días | Primera fiesta |
| CÓDIGO0 | Estrictamente necesario | Preferencia de idioma | 1 año | Primera fiesta |
| CÓDIGO0 | Análisis | ID de visitante de Google Analytics | 2 años | Tercero (Google) |
| CÓDIGO0 | Comercialización | Seguimiento de píxeles de Facebook | 90 días | Tercero (Facebook) |
Implementación técnica
Opción 1: Plataforma de gestión de consentimiento (CMP)
| CMP | Nivel gratuito | Cumple con el RGPD | Socio de Google CMP | IAB TCF 2.2 |
|---|---|---|---|---|
| robot de galletas | Hasta 1 página | Sí | Sí | Sí |
| OneTrust | No | Sí | Sí | Sí |
| Osano | Hasta 5.000 visitantes | Sí | Sí | No |
| Trimestral | Plan básico | Sí | Sí | No |
| Script de cookies | Hasta 1 sitio | Sí | Sí | No |
Opción 2: Implementación personalizada
Para equipos que quieren control total:
// lib/cookie-consent.ts
type ConsentCategory = 'necessary' | 'functional' | 'analytics' | 'marketing';
interface ConsentPreferences {
necessary: true; // Always true, cannot be changed
functional: boolean;
analytics: boolean;
marketing: boolean;
timestamp: string;
version: string;
}
const CONSENT_COOKIE = 'ecosire_consent';
const CONSENT_VERSION = '2.0';
const CONSENT_DURATION = 365; // days
export function getConsent(): ConsentPreferences | null {
const cookie = document.cookie
.split(';')
.find(c => c.trim().startsWith(`${CONSENT_COOKIE}=`));
if (!cookie) return null;
try {
const prefs = JSON.parse(decodeURIComponent(cookie.split('=')[1]));
// Invalidate if consent version changed
if (prefs.version !== CONSENT_VERSION) return null;
return prefs;
} catch {
return null;
}
}
export function setConsent(preferences: Omit<ConsentPreferences, 'necessary' | 'timestamp' | 'version'>) {
const consent: ConsentPreferences = {
necessary: true,
...preferences,
timestamp: new Date().toISOString(),
version: CONSENT_VERSION,
};
const expires = new Date(Date.now() + CONSENT_DURATION * 86400000).toUTCString();
document.cookie = `${CONSENT_COOKIE}=${encodeURIComponent(JSON.stringify(consent))}; expires=${expires}; path=/; SameSite=Lax`;
// Apply consent decisions
applyConsent(consent);
return consent;
}
function applyConsent(consent: ConsentPreferences) {
if (consent.analytics) {
// Initialize Google Analytics
loadScript('https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX');
}
if (consent.marketing) {
// Initialize marketing pixels
loadScript('https://connect.facebook.net/en_US/fbevents.js');
}
if (!consent.analytics) {
// Remove analytics cookies
deleteCookie('_ga');
deleteCookie('_gid');
}
if (!consent.marketing) {
// Remove marketing cookies
deleteCookie('_fbp');
deleteCookie('_fbc');
}
}
Modo de consentimiento de Google v2
Requerido para Google Analytics y Google Ads en el EEE desde marzo de 2024:
<!-- Set default consent state BEFORE loading Google tags -->
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
// Default: deny all until user consents
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', // Always granted (necessary)
'wait_for_update': 500 // Wait for CMP
});
</script>
<!-- Load Google Tag Manager -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
Cuando el usuario presta su consentimiento:
// Update consent state when user interacts with banner
function updateGoogleConsent(preferences) {
gtag('consent', 'update', {
'ad_storage': preferences.marketing ? 'granted' : 'denied',
'ad_user_data': preferences.marketing ? 'granted' : 'denied',
'ad_personalization': preferences.marketing ? 'granted' : 'denied',
'analytics_storage': preferences.analytics ? 'granted' : 'denied',
'functionality_storage': preferences.functional ? 'granted' : 'denied',
'personalization_storage': preferences.functional ? 'granted' : 'denied',
});
}
Requisitos de diseño de banners de consentimiento
Requisitos legales de la UE
- [] El banner aparece ANTES de que se establezcan cookies no esenciales
- [] Los botones "Aceptar todo" y "Rechazar todo" tienen la misma prominencia visual
- [] Selección granular de categorías disponible (no solo todo o nada)
- [] No hay casillas marcadas previamente para categorías no esenciales
- [] Explicación en lenguaje claro y sencillo de cada categoría.
- Enlace a la política de cookies completa
- [] Retiro del consentimiento accesible en cualquier momento (por ejemplo, enlace al pie de página)
- Sin muro de cookies (debe poder utilizar el sitio sin su consentimiento)
- [] Consentimiento registrado con marca de tiempo y versión.
Requisitos de accesibilidad
- El banner se puede navegar con el teclado
- Compatible con lector de pantalla (etiquetas ARIA)
- Contraste de color suficiente
- No bloquea el contenido esencial de forma permanente
Alternativa de análisis sin cookies
Para sitios web que quieran evitar por completo los banners de consentimiento de cookies:
| Herramienta | Galletas | Se necesita consentimiento del RGPD | Ubicación de datos | Precio |
|---|---|---|---|---|
| Plausible | Ninguno | No | UE | $9/mes |
| braza | Ninguno | No | UE/EE.UU./Canadá | $14/mes |
| umami | Ninguno | No | Autohospedado | Gratis |
| Análisis sencillos | Ninguno | No | UE | $9/mes |
| Matomo (configuración sin cookies) | Opcional | No (sin cookies) | Autohospedado | Gratis |
El uso de análisis sin cookies elimina la necesidad de consentimiento analítico, lo que simplifica su banner de consentimiento para que solo cubra las cookies de marketing (si se utilizan).
Preguntas frecuentes
¿Necesitamos un banner de cookies si solo utilizamos las cookies necesarias?
No. Si solo utiliza cookies estrictamente necesarias (autenticación, CSRF, equilibrio de carga), no se requiere consentimiento ni banner. Sin embargo, aún debes revelar estas cookies en tu política de privacidad. En el momento en que agrega análisis (Google Analytics) o cualquier seguimiento de terceros, un banner de consentimiento se vuelve legalmente obligatorio en la UE.
¿Es legal utilizar una "suscripción suave" (seguir navegando = dar consentimiento)?
No, no según el RGPD. El Comité Europeo de Protección de Datos ha declarado explícitamente que la navegación continua, el desplazamiento o acciones pasivas similares no constituyen un consentimiento válido. El consentimiento debe ser una acción afirmativa clara: hacer clic en un botón que diga "Aceptar" o similar. La aceptación suave se consideró no conforme en Planet49 (TJUE, 2019).
¿Cómo manejamos el consentimiento para aplicaciones de una sola página?
Para SPA, verifique el estado de consentimiento al cargar la página inicial y en cada cambio de ruta. Si no se ha dado el consentimiento, no inicialice los scripts de seguimiento. Almacene las preferencias de consentimiento en una cookie de origen (que a su vez es estrictamente necesaria para recordar el consentimiento). Cuando el usuario dé su consentimiento, inicialice los scripts de seguimiento sin necesidad de recargar la página.
¿Necesitamos consentimiento de cookies para nuestro sitio web Odoo?
Si su sitio web Odoo atiende a visitantes de la UE y utiliza análisis, píxeles de marketing o cookies funcionales más allá de lo estrictamente necesario, sí. Odoo tiene un aviso de cookies básico pero no cumple con los estándares GDPR. Implemente un CMP adecuado como Cookiebot o cree una solución personalizada. ECOSIRE proporciona servicios del sitio web de Odoo que incluyen el consentimiento de cookies que cumple con GDPR.
¿Qué viene después?
El consentimiento de las cookies es el aspecto más visible del cumplimiento de la privacidad web. Combínelo con privacidad por diseño para la arquitectura de su aplicación, gobernanza de datos para su programa de datos completo y regulaciones de ciberseguridad para un cumplimiento más amplio.
Comuníquese con ECOSIRE para la implementación del consentimiento de cookies y consultoría sobre cumplimiento de privacidad.
Publicado por ECOSIRE: ayuda a las empresas a implementar el cumplimiento de la privacidad en el que confían los usuarios.
Escrito por
ECOSIRE Research and Development Team
Construyendo productos digitales de nivel empresarial en ECOSIRE. Compartiendo perspectivas sobre integraciones Odoo, automatización de eCommerce y soluciones empresariales impulsadas por IA.
Artículos relacionados
Lista de verificación de preparación para auditorías: cómo su ERP hace que las auditorías sean un 60 por ciento más rápidas
Lista de verificación completa de preparación de auditoría utilizando sistemas ERP. Reduzca el tiempo de auditoría en un 60 por ciento con documentación, controles y recopilación de evidencia automatizada adecuados.
Regulaciones de transferencia de datos transfronteriza: navegando por los flujos de datos internacionales
Explore las regulaciones de transferencia de datos transfronterizas con SCC, decisiones de adecuación, BCR y evaluaciones de impacto de transferencia para el cumplimiento del RGPD, el Reino Unido y APAC.
Requisitos reglamentarios de ciberseguridad por región: un mapa de cumplimiento para empresas globales
Explore las regulaciones de ciberseguridad en EE. UU., la UE, el Reino Unido, APAC y Medio Oriente. Cubre NIS2, DORA, reglas SEC, requisitos de infraestructura crítica y cronogramas de cumplimiento.
Más de Compliance & Regulation
Lista de verificación de preparación para auditorías: cómo su ERP hace que las auditorías sean un 60 por ciento más rápidas
Lista de verificación completa de preparación de auditoría utilizando sistemas ERP. Reduzca el tiempo de auditoría en un 60 por ciento con documentación, controles y recopilación de evidencia automatizada adecuados.
Regulaciones de transferencia de datos transfronteriza: navegando por los flujos de datos internacionales
Explore las regulaciones de transferencia de datos transfronterizas con SCC, decisiones de adecuación, BCR y evaluaciones de impacto de transferencia para el cumplimiento del RGPD, el Reino Unido y APAC.
Requisitos reglamentarios de ciberseguridad por región: un mapa de cumplimiento para empresas globales
Explore las regulaciones de ciberseguridad en EE. UU., la UE, el Reino Unido, APAC y Medio Oriente. Cubre NIS2, DORA, reglas SEC, requisitos de infraestructura crítica y cronogramas de cumplimiento.
Gobernanza y cumplimiento de datos: la guía completa para empresas de tecnología
Guía completa de gobernanza de datos que cubre marcos de cumplimiento, clasificación de datos, políticas de retención, regulaciones de privacidad y hojas de ruta de implementación para empresas de tecnología.
Políticas de retención de datos y automatización: conserve lo que necesita, elimine lo que deba
Cree políticas de retención de datos con requisitos legales, cronogramas de retención, aplicación automatizada y verificación del cumplimiento de GDPR, SOX e HIPAA.
Gestión de la privacidad de los datos de los empleados: equilibrar las necesidades de recursos humanos con los derechos de privacidad
Administre la privacidad de los datos de los empleados con los requisitos del RGPD, los motivos de procesamiento de datos de recursos humanos, las políticas de monitoreo, las transferencias transfronterizas y las mejores prácticas de retención.