Each cookie classified (necessary/analytics/marketing) with documented purpose
Why it matters
GDPR Art. 13 and ePrivacy Art. 5(3) require that users be informed of every cookie set by the application, its purpose, and its retention period before consent is obtained. An incomplete cookie register means your consent banner is legally invalid — users cannot give informed consent to cookies they don't know exist. CCPA §1798.120 also requires disclosure of the categories of data collected through tracking technologies. Common AI-built apps add Facebook Pixel, Google Analytics, and Hotjar during different sessions and never update the consent configuration, leaving undisclosed cookies firing on every page load. ISO-27001:2022 A.5.34 requires organizations to maintain records of processing activities that include this level of classification.
Severity rationale
High because an undisclosed cookie invalidates consent for that tracking category and exposes the business to regulatory action and user trust erosion, even when a banner is present.
Remediation
Maintain a typed cookie registry in your codebase as the single source of truth for both the consent banner and the privacy policy cookie section.
// lib/cookies.ts — cookie registry
export const COOKIES = [
{
name: 'session',
type: 'necessary' as const,
purpose: 'Maintains authenticated session state',
expiry: 'Session',
thirdParty: false,
},
{
name: '_ga, _ga_XXXXXXXX',
type: 'analytics' as const,
purpose: 'Google Analytics — pseudonymous page view and behavior tracking',
expiry: '2 years',
thirdParty: true,
provider: 'Google LLC',
},
{
name: '_fbp',
type: 'marketing' as const,
purpose: 'Facebook Pixel — conversion tracking and ad attribution',
expiry: '90 days',
thirdParty: true,
provider: 'Meta Platforms Inc.',
},
] as const
Import this registry into your consent banner component to render the per-category toggle labels, and mirror it verbatim in your privacy policy's cookie table. Every time you add a third-party script, add its cookies here first.
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Data Protection Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
External references
- gdpr · Art. 13 — Information to be provided where personal data are collected from the data subject
- eprivacy · Art. 5(3) — Confidentiality of communications; cookie classification requirement
- ccpa · §1798.120 — Consumer right to opt-out of sale of personal information
- iso-27001:2022 · A.5.34 — Privacy and protection of PII
Taxons
History
- 2026-04-18·v1.0.0·Initial import from data-protection·automated