Parte da nossa série Compliance & Regulation
Leia o guia completoGuia de implementação de consentimento de cookies: gerenciamento de consentimento em conformidade legal
Mais de 400 milhões de euros em multas do GDPR foram emitidos especificamente por violações de consentimento de cookies desde 2020. A CNIL francesa multou o Google em 150 milhões de euros e o Facebook em 60 milhões de euros por tornarem mais fácil aceitar cookies do que recusá-los. O consentimento de cookies não é mais um exercício de caixa de seleção – é uma área da lei de privacidade fortemente aplicada, com requisitos técnicos específicos.
Este guia aborda os requisitos legais, a implementação técnica e o gerenciamento contínuo do consentimento de cookies para sites e aplicativos da web.
Principais conclusões
- De acordo com o GDPR e o ePrivacy, o consentimento deve ser obtido ANTES de definir cookies não essenciais --- e não depois
- O consentimento deve ser tão fácil de retirar quanto de dar (recusar com um clique, não oculto nas configurações)
- As paredes de cookies ("aceitar ou sair") são ilegais na maioria dos estados membros da UE
- O Google Consent Mode v2 é necessário para Google Analytics e Ads no EEE desde março de 2024
Requisitos legais por região
Comparação de requisitos de consentimento de cookies
| Requisito | UE (GDPR + ePrivacy) | Reino Unido (PECR + RGPD do Reino Unido) | EUA (CCPA/leis estaduais) | Brasil (LGPD) | Canadá (PIPEDA) |
|---|---|---|---|---|---|
| Consentimento prévio para cookies não essenciais | Sim (aceitar) | Sim (aceitar) | Não (modelo de opt-out) | Sim (aceitar) | Consentimento implícito permitido |
| Banner de consentimento obrigatório | Sim | Sim | Não obrigatório (mas recomendado) | Sim | Recomendado |
| Opções granulares (por categoria) | Sim | Sim | Não obrigatório | Sim | Recomendado |
| Igual importância para aceitar/recusar | Sim | Sim | N/A | Sim | N/A |
| Parede de biscoitos permitida | Não (na maioria dos estados) | Não | N/A | Não | N/A |
| Registro de consentimento necessário | Sim | Sim | Não | Sim | Sim |
| Período de renovação do consentimento | Máx. 12 meses | Máx. 12 meses | N/A | Não especificado | Não especificado |
| Política de cookies necessária | Sim (detalhado) | Sim (detalhado) | Sim (se estiver rastreando) | Sim | Sim |
O que conta como um cookie
A Diretiva ePrivacy abrange não apenas os cookies HTTP, mas todas as tecnologias que armazenam ou acessam informações no dispositivo do usuário:
- Cookies HTTP (primários e de terceiros)
- LocalStorage e SessionStorage
- IndexadoDB
- Impressão digital do dispositivo
- Pixels de rastreamento / web beacons
- ETags usadas para rastreamento
Categorização de cookies
Categorias padrão
| Categoria | Consentimento necessário? | Exemplos | Estado padrão |
|---|---|---|---|
| Estritamente necessário | Não | Cookies de sessão, tokens CSRF, cookies de balanceador de carga, autenticação | Sempre ligado |
| Funcional/preferências | Sim | Preferência de idioma, preferência de tema, carrinho salvo | Desligado (até consentimento) |
| Análise/desempenho | Sim | Google Analytics, Hotjar, Plausível (com cookies) | Desligado (até consentimento) |
| Marketing/publicidade | Sim | Google Ads, Facebook Pixel, cookies de retargeting | Desligado (até consentimento) |
Auditando seus cookies
Antes de implementar o consentimento, audite todos os cookies que seu site define:
// 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:
| Nome do biscoito | Categoria | Finalidade | Duração | Primeiro/Terceiro |
|---|---|---|---|---|
| CÓDIGO0 | Estritamente necessário | Autenticação | Sessão | Primeira parte |
| CÓDIGO0 | Estritamente necessário | Atualização de token | 7 dias | Primeira parte |
| CÓDIGO0 | Estritamente necessário | Preferência de idioma | 1 ano | Primeira parte |
| CÓDIGO0 | Análise | ID de visitante do Google Analytics | 2 anos | Terceiros (Google) |
| CÓDIGO0 | Comercialização | Rastreamento de pixels do Facebook | 90 dias | Terceiros (Facebook) |
Implementação Técnica
Opção 1: Plataforma de gerenciamento de consentimento (CMP)
| CMP | Nível gratuito | Compatível com GDPR | Parceiro CMP do Google | IAB TCF 2.2 |
|---|---|---|---|---|
| Biscoitobot | Até 1 página | Sim | Sim | Sim |
| OneTrust | Não | Sim | Sim | Sim |
| Osano | Até 5 mil visitantes | Sim | Sim | Não |
| Termalmente | Plano básico | Sim | Sim | Não |
| Cookie-Script | Até 1 local | Sim | Sim | Não |
Opção 2: implementação personalizada
Para equipes que desejam controle 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 consentimento do Google v2
Obrigatório para Google Analytics e Google Ads no EEE desde março 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>
Quando o usuário fornece consentimento:
// 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 design de banner de consentimento
Requisitos legais da UE
- [] O banner aparece ANTES de qualquer cookie não essencial ser definido
- Os botões "Aceitar todos" e "Recusar todos" têm igual destaque visual
- [] Seleção granular de categoria disponível (não apenas tudo ou nada)
- [] Sem caixas pré-marcadas para categorias não essenciais
- [] Explicação clara e em linguagem simples de cada categoria
- Link para a política completa de cookies
- [] Retirada de consentimento acessível a qualquer momento (por exemplo, link de rodapé)
- [] Sem parede de cookies (deve ser capaz de usar o site sem consentimento)
- [] Consentimento registrado com carimbo de data/hora e versão
Requisitos de acessibilidade
- Banner é navegável pelo teclado
- Compatível com leitor de tela (etiquetas ARIA)
- Contraste de cor suficiente
- Não bloqueia conteúdo essencial permanentemente
Alternativa de análise sem cookies
Para sites que desejam evitar totalmente os banners de consentimento de cookies:
| Ferramenta | Biscoitos | É necessário consentimento do GDPR | Localização dos dados | Preço |
|---|---|---|---|---|
| Plausível | Nenhum | Não | UE | US$ 9/mês |
| Compreender | Nenhum | Não | UE/EUA/Canadá | US$ 14/mês |
| Umami | Nenhum | Não | Auto-hospedado | Grátis |
| Análise Simples | Nenhum | Não | UE | US$ 9/mês |
| Matomo (configuração sem cookies) | Opcional | Não (sem cookies) | Auto-hospedado | Grátis |
O uso de análises sem cookies elimina a necessidade de consentimento analítico, simplificando seu banner de consentimento para cobrir apenas cookies de marketing (se usados).
Perguntas frequentes
Precisamos de um banner de cookies se usarmos apenas os cookies necessários?
Não. Se você usar apenas cookies estritamente necessários (autenticação, CSRF, balanceamento de carga), nenhum consentimento será necessário e nenhum banner será necessário. No entanto, você ainda deve divulgar esses cookies na sua política de privacidade. No momento em que você adiciona análises (Google Analytics) ou qualquer rastreamento de terceiros, um banner de consentimento torna-se legalmente obrigatório na UE.
É legal usar um "soft opt-in" (continuar navegando = consentimento)?
Não, não sob o GDPR. O Conselho Europeu para a Proteção de Dados declarou explicitamente que a navegação contínua, a rolagem ou ações passivas semelhantes não constituem consentimento válido. O consentimento deve ser uma ação clara e afirmativa – clicar em um botão que diz “Aceitar” ou algo semelhante. O soft opt-in foi considerado não conforme no Planet49 (TJUE, 2019).
Como lidamos com o consentimento para aplicativos de página única?
Para SPAs, verifique o estado de consentimento no carregamento inicial da página e em cada alteração de rota. Se o consentimento não tiver sido dado, não inicialize scripts de rastreamento. Armazene as preferências de consentimento em um cookie primário (que é estritamente necessário para lembrar o consentimento). Quando o usuário fornecer consentimento, inicialize os scripts de rastreamento sem exigir o recarregamento da página.
Precisamos de consentimento de cookies para nosso site Odoo?
Se o seu site Odoo atende visitantes da UE e usa análises, pixels de marketing ou cookies funcionais além do estritamente necessário, sim. Odoo possui um aviso básico de cookies, mas não atende aos padrões do GDPR. Implemente um CMP adequado como o Cookiebot ou crie uma solução personalizada. ECOSIRE fornece serviços do site Odoo que incluem consentimento de cookies em conformidade com GDPR.
O que vem a seguir
O consentimento de cookies é o aspecto mais visível da conformidade com a privacidade na web. Combine-o com privacidade desde a concepção para a arquitetura da sua aplicação, governança de dados para o seu programa de dados completo e regulamentações de segurança cibernética para uma conformidade mais ampla.
Entre em contato com a ECOSIRE para implementação de consentimento de cookies e consultoria de conformidade de privacidade.
Publicado pela ECOSIRE – ajudando as empresas a implementar conformidades de privacidade nas quais os usuários confiam.
Escrito por
ECOSIRE Research and Development Team
Construindo produtos digitais de nível empresarial na ECOSIRE. Compartilhando insights sobre integrações Odoo, automação de e-commerce e soluções de negócios com IA.
Artigos Relacionados
Lista de verificação de preparação para auditoria: como seu ERP torna as auditorias 60% mais rápidas
Lista de verificação completa de preparação de auditoria usando sistemas ERP. Reduza o tempo de auditoria em 60% com documentação, controles e coleta automatizada de evidências adequados.
Regulamentações de transferência de dados transfronteiriças: navegando em fluxos de dados internacionais
Navegue pelas regulamentações de transferência de dados transfronteiriças com SCCs, decisões de adequação, BCRs e avaliações de impacto de transferência para conformidade com GDPR, Reino Unido e APAC.
Requisitos regulatórios de segurança cibernética por região: um mapa de conformidade para empresas globais
Navegue pelas regulamentações de segurança cibernética nos EUA, UE, Reino Unido, APAC e Oriente Médio. Abrange regras NIS2, DORA, SEC, requisitos de infraestrutura crítica e cronogramas de conformidade.
Mais de Compliance & Regulation
Lista de verificação de preparação para auditoria: como seu ERP torna as auditorias 60% mais rápidas
Lista de verificação completa de preparação de auditoria usando sistemas ERP. Reduza o tempo de auditoria em 60% com documentação, controles e coleta automatizada de evidências adequados.
Regulamentações de transferência de dados transfronteiriças: navegando em fluxos de dados internacionais
Navegue pelas regulamentações de transferência de dados transfronteiriças com SCCs, decisões de adequação, BCRs e avaliações de impacto de transferência para conformidade com GDPR, Reino Unido e APAC.
Requisitos regulatórios de segurança cibernética por região: um mapa de conformidade para empresas globais
Navegue pelas regulamentações de segurança cibernética nos EUA, UE, Reino Unido, APAC e Oriente Médio. Abrange regras NIS2, DORA, SEC, requisitos de infraestrutura crítica e cronogramas de conformidade.
Governança e conformidade de dados: o guia completo para empresas de tecnologia
Guia completo de governança de dados que abrange estruturas de conformidade, classificação de dados, políticas de retenção, regulamentos de privacidade e roteiros de implementação para empresas de tecnologia.
Políticas de retenção de dados e automação: mantenha o que você precisa, exclua o que você precisa
Crie políticas de retenção de dados com requisitos legais, cronogramas de retenção, aplicação automatizada e verificação de conformidade para GDPR, SOX e HIPAA.
Gestão de privacidade de dados de funcionários: equilibrando necessidades de RH com direitos de privacidade
Gerencie a privacidade dos dados dos funcionários com os requisitos do GDPR, bases de processamento de dados de RH, políticas de monitoramento, transferências internacionais e práticas recomendadas de retenção.