Bloquea hasta el consentimiento
Las etiquetas inline, Google Tag Manager y los componentes del framework esperan todos a su categoría. «Rechazar todo» significa que no se ejecuta nada no esencial.
consentimiento de cookies · alojado en la UE · plan gratuito
CookieCrumbs escanea tu sitio, bloquea cada rastreador hasta que la gente diga sí y guarda un registro firmado de cada decisión. Configúralo desde un panel, desde tu terminal o directamente desde Cursor y Claude Code. Alojado en la UE, gratis para empezar.
$ npx cookiecrumbs init
Layout
Colours
Languages
Region rules
| Time | ID | Region | Categories | Version |
|---|---|---|---|---|
| 14:02:11 | c_8f2a… | DE | analytics marketing | v14 |
| 14:01:58 | c_19c4… | FR | all | v14 |
| 14:01:40 | c_77e0… | NL | rejected | v14 |
| 14:01:12 | c_b3d9… | GB | analytics | v13 |
Funciona con el stack que ya usas
Proyectos de código abierto para los que CookieCrumbs ofrece SDK o guías de instalación. Los nombres y logotipos pertenecen a sus respectivos proyectos e indican solo compatibilidad, no respaldo. Shopify, Webflow, Framer y cualquier otro constructor de sitios funcionan con la etiqueta script de una línea.
de un vistazo
Un banner que pegas no es una plataforma de gestión del consentimiento. Esto es lo que cambia cuando el escáner, el registro y la configuración viven en un mismo sitio.
banner de consentimiento
La mayoría de los banners preguntan y luego lo cargan todo igualmente. Este retiene cada etiqueta, píxel e iframe hasta que se concede su categoría. Siete diseños, 25 idiomas, Google Consent Mode v2 y las reglas correctas para la UE, el Reino Unido, los estados de EE. UU., Suiza, Brasil y Quebec, elegidas según dónde esté el visitante.
Las etiquetas inline, Google Tag Manager y los componentes del framework esperan todos a su categoría. «Rechazar todo» significa que no se ejecuta nada no esencial.
Misma capa, mismo tamaño, mismo peso. Es lo primero que comprueban la CNIL y el EDPB. Manejable con teclado, con foco atrapado, WCAG 2.2 AA.
Opt-in donde la ley dice opt-in. Un enlace «Do Not Sell» y Global Privacy Control donde dice opt-out. Textos en 25 idiomas que siguen el navegador del visitante.
Las siete señales en «denied» antes de que se ejecute cualquier etiqueta, actualizadas en cuanto alguien elige. Plantilla de GTM incluida. Aún sin IAB TCF; está en la hoja de ruta.
Un solo archivo, cargado en asíncrono, con caché de larga duración y sin peticiones propias a terceros. Los diseños de barra y cinta reservan su espacio antes del pintado. CLS 0,00.
Un control permanente vuelve a abrir el banner, un rechazo se recuerda seis meses y un cambio de finalidad vuelve a preguntar. El artículo 7(3), en la práctica.
¿creado con IA?
Lovable, Bolt, v0 y Replit generan tu analítica y tus píxeles, y ninguno añade consentimiento. Pídele un banner al mismo agente y obtienes una caja que no bloquea nada. CookieCrumbs arregla ambas cosas: el escáner encuentra lo que la app carga de verdad, el banner lo retiene hasta que la gente acepta y el servidor MCP deja que Cursor o Claude Code hagan la configuración con un diff que revisas.
LovableBoltv0ReplitCursorClaude CodeWindsurf
Elige una plantilla, lanza el escaneo, publica. La declaración de cookies se escribe sola y se actualiza cuando cambian los rastreadores. Sin abogado para el trabajo diario.
Un comando para inicializar, SDK tipados para Next.js, React, Astro, Nuxt y SvelteKit, la configuración del banner en git y un servidor MCP que tu agente puede manejar.
Una consola, todos los clientes. Roles por espacio de trabajo, plantillas compartidas, reescaneos programados con alertas y un precio que no se multiplica por dominio.
Shopify, WooCommerce, Webflow y tiendas a medida mediante una etiqueta script. Consent Mode mantiene la medición de Google Ads, las reglas de EE. UU. respetan Global Privacy Control y el registro de consentimiento cubre la auditoría.
servidor mcp
Una línea añade el servidor MCP de CookieCrumbs a Claude Code, Cursor, Windsurf, Zed o VS Code. Después pide lo que quieras con palabras normales. El agente escanea, escribe la configuración y abre una pull request. Cada escritura es un diff que apruebas, y cada acción queda en el registro de auditoría con el nombre del token.
claude mcp add cookiecrumbs -- npx -y @cookiecrumbs-eu/mcp
{ "mcpServers": { "cookiecrumbs": { "command": "npx", "args": ["-y", "@cookiecrumbs-eu/mcp"] } } }
Un comando para Claude Code, una línea en .cursor/mcp.json para los demás. Autenticado con un token de alcance limitado que puedes revocar.
«Añade un banner de cookies RGPD, bloquea GA4 hasta el consentimiento, textos en alemán y francés». El agente escanea, escribe la configuración y abre la PR. Tú revisas y fusionas.
Pregunta por qué una cookie está clasificada como Marketing o si tu primera capa cumple las directrices de la CNIL. Cada respuesta cita el resultado del escaneo y la norma.
Las herramientas son de solo lectura por defecto. Las escrituras necesitan un alcance explícito y muestran primero un diff. Los tokens nunca tienen permisos de facturación.
Añade un banner de cookies RGPD, bloquea GA4 hasta el consentimiento, textos en alemán y francés.
scan_siteacme.example · 38 páginas · 14 cookies✔update_bannerdiseño: barra · idiomas: de, fr · GA4 → analítica✔push_configcookiecrumbs.config.ts · vista previa desplegada✔Listo. GA4 ahora solo carga tras el consentimiento de analítica, los textos del banner están en alemán y francés, y los valores por defecto de Consent Mode v2 están en «denied» para visitantes del EEE. He abierto la PR #142 para que la revises.
+ languages: ['de', 'fr'],
+ block: { 'googletagmanager.com': 'analytics' },
consentMode: { default: 'denied' },
cómo funciona
De un sitio sin escanear a un banner de cookies RGPD en producción con un registro de consentimiento detrás, en tres pasos. Recórrelos en el panel, automatízalos desde la CLI o déjaselos a tu agente de programación.
Ejecuta npx cookiecrumbs init o pega tu dominio. El escáner carga tus páginas en un navegador real, en cada estado de consentimiento, y redacta las categorías y la declaración.
Diseño, colores, textos e idiomas, en el panel o en cookiecrumbs.config.ts. Previsualízalo por región y elige entre diez plantillas integradas.
Una etiqueta script o el SDK. Los scripts siguen bloqueados hasta el consentimiento y cada decisión queda en tu registro alojado en la UE.
Un comando ejecuta el primer escaneo
$ npx cookiecrumbs init
✔ Detected Next.js (App Router) · linked acme.example to workspace acme (eu-central)
✔ cookiecrumbs.config.ts and cookiecrumbs/texts/ written · install snippet printed
$ cookiecrumbs scan --wait
✔ 38 pages crawled in 3 consent states · 14 cookies in 4 categories · declaration updated
→ Run `cookiecrumbs open` to edit design, texts, languages and regions
Found 14 cookies
Classifying 72%
Blocking marketing until consent
import { defineConfig } from 'cookiecrumbs';
export default defineConfig({
layout: 'bar',
languages: ['en', 'de', 'fr', 'nl'],
regions: {
EU: 'opt-in',
UK: 'opt-in',
US: 'opt-out',
},
consentMode: { default: 'denied' },
});
<CookieCrumbs site="acme.example" />
$ cookiecrumbs push --note "launch"
✔ Banner v14 published on acme.example · scripts blocked until consent
2026-08-21 14:02:11 · eu-central · analytics: granted · marketing: denied · v14
escáner de cookies
Un banner vale lo que vale su inventario. El escáner recorre las páginas renderizadas en cada estado de consentimiento, contrasta cada cookie y píxel con una base de datos de rastreadores mantenida y escribe la declaración de cookies por ti. Y después sigue comprobando.
Páginas renderizadas en cada estado de consentimiento, no solo HTML. Cookies puestas por scripts, píxeles, iframes, almacenamiento local y gestores de etiquetas, con la página y el script que las pusieron.
Cada cookie se contrasta con la base de datos de rastreadores y se publica como declaración de cookies en tus idiomas, en JSON, HTML o Markdown.
Hacer un escaneo gratuito38 páginas rastreadas · 14 cookies en 4 categorías · último escaneo hace 2 horas
| Cookie | Proveedor | Categoría | Puesta por | Caducidad | Estado |
|---|---|---|---|---|---|
cc_consent | CookieCrumbs | Necesarias | / | 6 meses | Permitida |
_ga | Google Analytics | Analítica | gtm.js | 2 años | Bloqueada hasta el consentimiento |
_fbp | Meta Pixel | Marketing | /pricing | 3 meses | Bloqueada hasta el consentimiento |
__hstc | HubSpot | Marketing | hs-script | 13 meses | Bloqueada hasta el consentimiento |
_hjSession | Hotjar | Analítica | /docs | 30 min | Bloqueada hasta el consentimiento |
theme | acme.example | Preferencias | localStorage | 1 año | Bloqueada hasta el consentimiento |
Meta Pixel Marketing
Diario, semanal o mensual. Un píxel añadido por el experimento de alguien en el gestor de etiquetas llega como alerta de Slack o correo, bloqueado por defecto.
$ cookiecrumbs scan --fail-on-unknown
✖ 1 unclassified tracker: cdn.example.net/px.js
build failed · classify it or add a rule
Se ejecuta en CI y hace fallar la build cuando aparece un rastreador sin clasificar. Obtén los resultados en JSON y compáralos en las pull requests.
panel
Una autoridad de protección de datos o un cliente corporativo pregunta cómo se obtuvo el consentimiento. Respondes con una exportación firmada, no con una explicación.
Cada decisión se guarda con marca de tiempo, versión del banner, un hash de los textos mostrados y las categorías elegidas, encadenada al registro anterior. Las exportaciones van firmadas, así que un auditor puede verificarlas sin confiar en nosotros. Prueba de consentimiento según el artículo 7(1), en todos los planes.
Registro de consentimiento · filtro: últimas 24 h · eu-central
| Marca de tiempo | ID | Región | Categorías | Banner |
|---|---|---|---|---|
| 2026-08-21 14:02:11 | c_8f2a91 | DE | analítica marketing preferencias | v14 · en |
| 2026-08-21 14:01:58 | c_19c4e0 | FR | todo concedido | v14 · fr |
| 2026-08-21 14:01:40 | c_77e0b2 | NL | todo denegado | v14 · nl |
| 2026-08-21 14:01:12 | c_b3d9c7 | GB | analítica marketing | v13 · en |
| 2026-08-21 14:00:49 | c_0a7f13 | DE | retirado | v14 · de |
Analítica de aceptación · datos de ejemplo
Por dispositivo
Tasas de aceptación, rechazo y elección personalizada por región, dispositivo, idioma, diseño y versión del banner. Compara dos versiones y mira cuál se gana el consentimiento honestamente.
Textos, categorías, colores y comportamiento se cambian desde el panel y están en producción en segundos. Cada versión se conserva, así que volver atrás es un clic.
Espacios de trabajo, roles y un registro de auditoría en cada cambio. Plantillas compartidas con ajustes por sitio y espacios de cliente para agencias.
cli y sdk
Todo lo que hay en el panel es también un archivo y un endpoint. Tu banner vive en git, se revisa en una pull request y se despliega con el resto de la app. La CLI, los SDK y el servidor MCP están en el plan gratuito.
$ npx cookiecrumbs init
✔ Detected Next.js (App Router) · linked acme.example to workspace acme (eu-central)
✔ cookiecrumbs.config.ts and cookiecrumbs/texts/ written · install snippet printed
$ cookiecrumbs scan --fail-on-unknown --wait
✔ 38 pages crawled in 3 consent states · 0 unclassified trackers · 14 cookies match the declaration
$ cookiecrumbs push --note "launch"
✔ Draft pushed · published as v14 on acme.example
$ cookiecrumbs logs export --format csv
✔ 12,480 consent records, Ed25519-signed → ./exports/consent-2026-08.csv
Detecta Next.js, React, Astro, Nuxt, SvelteKit o HTML plano, vincula el sitio, escribe cookiecrumbs.config.ts y los textos, e imprime el snippet de instalación para tu framework.
Diseño, textos, categorías, idiomas y reglas por región en una configuración tipada. cookiecrumbs push la despliega. cookiecrumbs pull trae los cambios del panel de vuelta al repositorio.
cookiecrumbs scan --fail-on-unknown hace fallar la build cuando se cuela un nuevo rastreador, con SARIF para el análisis de código. cookiecrumbs logs export obtiene registros firmados para una auditoría. Los tokens se limitan por sitio, entorno y permiso.
Paquetes tipados para Next.js, React, Astro, Nuxt y SvelteKit con hooks como useConsent(), una etiqueta script para todo lo demás y una API REST con webhooks.
la UE primero
Construido y operado en Alemania, con precios en euros. Los registros de consentimiento de los que dependes nunca cruzan una frontera, así que no hay ningún mecanismo de transferencia que discutir.
Los registros de consentimiento, los resultados de escaneo y los paneles se ejecutan en Fráncfort. Los registros nunca salen de la UE.
IDs seudónimos, ninguna dirección IP guardada junto a un registro, la retención que tú fijes, un acuerdo de tratamiento de datos que aplica desde el registro y una lista pública de subencargados. Privacidad desde el diseño en la práctica, no en un PDF.
DPA, subencargados, resumen de seguridad.
Precios en euros, bloqueados durante toda la vida de tu plan. El tráfico nunca se mide y un escaneo nunca te sube de plan por sí solo. Tu factura coincide con la página de precios.
Lo que ves en precios es lo que pagas.
Las configuraciones son archivos en tu repositorio. Las políticas se exportan en HTML o Markdown, los registros de consentimiento en CSV o JSON firmado, incluso después de cancelar. Marcharte es un comando.
$ cookiecrumbs export --all
del blog
Artículos largos sobre las normas, su aplicación y la ingeniería del consentimiento. Cada afirmación lleva fecha y fuente, y cada pieza termina con algo que puedes comprobar hoy en tu propio sitio.
Lovable publica tu app sin banner de cookies, y si le pides uno obtienes una caja que no bloquea nada. Esta es la ruta de diez minutos hacia un banner que retiene cada rastreador hasta que la gente acepta, con las comprobaciones que lo demuestran.
LeerDos decisiones de septiembre de 2025 convirtieron una directriz del EDPB en una etiqueta con precio. Esto es lo que contó la autoridad y cómo es una primera capa conforme en 2026.
LeerConsent Mode no es un bloqueador de cookies. Es un mensaje que tu banner envía a las etiquetas de Google. Si el mensaje está mal, o incumples la ley o pierdes la medición de Ads. Aquí está todo en una página.
LeerUna autoridad o un cliente corporativo pregunta cómo obtuviste el consentimiento. «Tenemos un banner» no es una respuesta. Un archivo sí. Esto es lo que tiene que contener.
LeerSí, un banner puede destrozar tus puntuaciones. No, no tiene por qué. El daño viene de tres comportamientos concretos, y cada uno tiene solución.
LeerEl Reino Unido relajó una esquina de sus normas de cookies y endureció la sanción para todo lo demás. Esto es lo que cambió la Data (Use and Access) Act, y lo que no.
Leerobservatorio normativo · actualizado
Las normas de cookies cambian cada pocos meses. Las seguimos para que tu banner no se quede atrás. Cada tarjeta lleva fecha y enlace a su fuente, y las reglas por región de CookieCrumbs siguen esta lista a través del changelog.
Las cadenas TCF 2.2 dejaron de ser válidas el 1 de marzo de 2026. TCF 2.3 añade el segmento disclosedVendors a la TC String. CookieCrumbs aún no emite TC Strings; el soporte de TCF está previsto. Si sirves AdSense o Ad Manager, hoy necesitas una CMP registrada en TCF.
La Data (Use and Access) Act 2025 permite en el Reino Unido cookies estadísticas y de apariencia de bajo riesgo sin consentimiento, con información y vía de oposición. Guía de la ICO finalizada el 29 de abril de 2026.
ad_storage pasó a ser la señal determinante para los datos de Google Ads. Los banners que solo mapean analytics_storage pierden la medición de Ads. CookieCrumbs asigna automáticamente el consentimiento de Marketing a la señal correcta.
Trasladaría el consentimiento de cookies al RGPD, eximiría la medición de audiencia first-party y prohibiría volver a preguntar durante seis meses tras un rechazo. El Consejo retiró las señales de navegador del art. 88b en junio de 2026; el trílogo continúa.
La CNIL multó a Google con 325 M€ y a SHEIN con 150 M€ por banners sin rechazo en un clic y prácticas relacionadas. La misma prominencia de «Rechazar todo» en la primera capa es la base.
precios
Precios en euros, mensuales o anuales con dos meses gratis. La unidad de venta es tu organización. El tráfico nunca se mide; el único contador de pago son las subpáginas escaneadas al mes. Y el banner nunca se apaga: ningún plan deja jamás de servir ni de registrar el consentimiento.
Totalmente conforme, para siempre
0 €/mes
Empezar gratisHaz que el banner rinda
29 €/mes
Elegir ProUna empresa, muchos dominios
199 €/mes
Elegir ScaleMuchos clientes, una consola
99 €/mes
Elegir AgencyFacturación mensual. 20 espacios de cliente incluidos, después 9 € por cada espacio adicional.
Todos los precios en euros, bloqueados durante toda la suscripción: sin indexación ni subida al renovar. La facturación anual son diez meses por doce (Pro 290 €, Scale 1.990 €). Una organización es una entidad jurídica o familia de marcas; los espacios Agency son para clientes que son entidades jurídicas separadas, y un espacio de cliente que deja su agencia continúa como plan Pro de 29 €. A medida: on-premise, más de 100.000 subpáginas o contratos en papel, presupuesto a partir del precio Scale, contáctanos. ¿Vienes de otro proveedor? Tu plan de pago es gratuito hasta que termine tu contrato actual, con importación de la configuración. CookieCrumbs aún no forma parte del Google CMP Partner Program, lo que solo importa si sirves AdSense, Ad Manager o AdMob.
preguntas frecuentes
Respuestas claras sobre el RGPD, la PECR del Reino Unido, Consent Mode v2 y cómo CookieCrumbs maneja cada uno. Aquí las fechas importan, así que cada respuesta las lleva.
En la UE, sí, si pones algo más que cookies estrictamente necesarias: artículo 5(3) de la Directiva ePrivacy más consentimiento RGPD. En el Reino Unido, PECR sigue exigiendo consentimiento, con nuevas exenciones para estadísticas y apariencia desde el 5 de febrero de 2026. En EE. UU. no hay regla de opt-in, pero California y otras leyes estatales exigen un enlace de opt-out y soporte para Global Privacy Control.
Cambia las etiquetas script a type="text/plain" con un atributo data-category, o deja que el snippet de CookieCrumbs reescriba automáticamente los rastreadores conocidos. Los scripts, iframes y píxeles bloqueados solo se ejecutan cuando se acepta la categoría correspondiente. En Next.js, React, Astro y Nuxt el SDK envuelve las etiquetas en un componente que respeta el consentimiento, y los activadores de Google Tag Manager se disparan con los eventos de consentimiento.
Puede. Un script de CMP que bloquea el renderizado con un TTL de caché corto puede añadir segundos al LCP y provocar desplazamientos de diseño en cada visita. CookieCrumbs carga un único archivo de 21 kB comprimido de forma asíncrona con largas vidas de caché, no hace peticiones propias a terceros, y los diseños de barra y cinta reservan su espacio antes del pintado, así que no provocan desplazamiento.
No en cada página vista. La CNIL recomienda respetar un rechazo durante al menos seis meses, y el artículo 88a propuesto en el Ómnibus Digital de la UE convertiría ese plazo de seis meses en ley en toda la UE. CookieCrumbs guarda el rechazo, oculta el banner durante el periodo que fijes, seis meses por defecto, y solo vuelve a preguntar cuando cambian tus finalidades.
No. Generan los scripts de analítica y los píxeles que les pides, y nada que los bloquee. Pedirle al builder un banner suele producir una caja cosmética que muestra una elección y no bloquea nada, lo que no cumple el RGPD ni la Directiva ePrivacy. CookieCrumbs añade un banner que retiene esos scripts hasta el consentimiento, mediante una etiqueta script o mediante su servidor MCP desde Cursor o Claude Code.
El escaneo gratuito lee una vez el HTML de tu página de inicio y contrasta los hosts de scripts e iframes con la base de datos de rastreadores, sin cuenta. El escaneo completo del panel carga cada página en un navegador real, en cada estado de consentimiento, registra cada cookie, script, píxel, iframe y clave de almacenamiento con la página y el script que los pusieron, y se repite según un calendario. Solo el escaneo completo ve lo que inyecta un gestor de etiquetas tras la carga.
En la UE, la analítica sigue necesitando consentimiento salvo que tu autoridad exima una configuración restringida; GA4 estándar envía datos a un tercero y no cumple. En el Reino Unido, el Anexo A1 de PECR (5 de febrero de 2026) exime las estadísticas de bajo riesgo con información y vía de oposición, según la guía de la ICO del 29 de abril de 2026. CookieCrumbs incluye ambos conjuntos de reglas.
Consent Mode v2 es la forma en que un banner de cookies indica a las etiquetas de Google lo que el visitante permitió, mediante ad_storage, analytics_storage, ad_user_data y ad_personalization. Los valores por defecto deben ser «denied» para visitantes del EEE, el Reino Unido y Suiza. Desde el 15 de junio de 2026 Google usa ad_storage como señal determinante para los datos de Ads. CookieCrumbs fija los valores por defecto, los actualiza con el consentimiento y admite los modos básico y avanzado.
Para AdSense, Ad Manager y AdMob, sí: desde el 16 de enero de 2024 Google exige una CMP de su CMP Partner Program para el tráfico del EEE y el Reino Unido, integrada con IAB TCF. Google Ads y GA4 exigen señales de Consent Mode v2, pero no una CMP certificada. CookieCrumbs está preparado para Consent Mode v2 y aún no forma parte del Google CMP Partner Program, así que no es la opción adecuada para AdSense, Ad Manager o AdMob hasta que tengamos esa certificación.
Debes poder demostrar quién consintió, cuándo, a qué y qué se le mostró. Un registro útil guarda marca de tiempo, ID seudónimo, versión y textos del banner, categorías elegidas y retiradas. El RGPD no fija un plazo; conserva los registros mientras te apoyes en el consentimiento más el plazo de prescripción de tu país. CookieCrumbs conserva los registros 12 meses en Free y 5 años en todos los planes de pago.
En la práctica, sí. La CNIL exige un rechazo con un clic en la primera capa y multó a Google con 325 M€ y a SHEIN con 150 M€ en septiembre de 2025; las Directrices 03/2022 del EDPB tratan las opciones de rechazo ocultas o atenuadas como patrones oscuros. Los diseños de CookieCrumbs incluyen botones de igual prominencia y un control permanente para reabrir el banner; puedes cambiar los colores, no degradar el botón.
Ejecuta npx cookiecrumbs init. La CLI detecta el framework, instala la integración, escribe cookiecrumbs.config.ts, fija los valores por defecto de Consent Mode v2 y vincula el sitio a tu espacio de trabajo. Los sitios estáticos, WordPress, Shopify y Webflow usan una etiqueta script o un plugin. Con el servidor MCP en Claude Code o Cursor, el agente ejecuta los mismos pasos y abre una pull request.
Sí, si tiene las herramientas. El servidor MCP de CookieCrumbs expone el escaneo, la configuración del banner, la publicación y el registro de consentimiento a Claude Code, Cursor, Windsurf, Zed y VS Code. Las escrituras se proponen primero como diff y se confirman en una segunda llamada, y cada acción queda registrada con el token que la realizó.
En Fráncfort, Alemania, en infraestructura dentro de la UE. Los registros de consentimiento nunca salen de la UE, no se guarda ninguna dirección IP ni user agent junto a un registro, y cada registro puede exportarse como CSV o JSON firmado, incluso después de cancelar.
listo cuando tú lo estés
Plan gratuito, dos dominios, sin tarjeta. O haz primero un escaneo gratuito y mira qué carga tu sitio hoy.
$ npx cookiecrumbs init