Solução de Problemas¶
Guia completo para resolver problemas comuns na integração Complyr + Google Tag Manager.
🔧 Problemas Comuns¶
1. Banner Não Aparece¶
Sintomas: - Página carrega mas banner de consentimento não aparece - Nenhum erro no console
Possíveis Causas e Soluções:
Causa A: workspace-id Incorreto¶
Verificar:
// No console do navegador
document.querySelector('[data-workspace-id]').getAttribute('data-workspace-id')
Solução: - Copie o workspace-id correto do painel Complyr - Atualize o script tag com o ID correto
Causa B: Script Não Carregou¶
Verificar: 1. Abra DevTools → Network 2. Filtre por "tag/js" 3. Verifique se há um request para app.complyr.com.br/tag/js
Solução: - Se 404: Verifique a URL do script - Se blocked: Verifique AdBlockers - Se timeout: Verifique conexão de rede
Causa C: Consentimento Já Existe¶
Verificar:
Solução:
// Limpar consentimento salvo
localStorage.removeItem('complyr_consent')
// Recarregar página
location.reload()
Causa D: Template Não Ativo¶
Verificar: No painel Complyr: 1. Vá em Consentimento → Templates 2. Confirme que há um template com status "Ativo"
Solução: - Ative um template existente ou crie um novo - Aguarde alguns minutos para propagação
2. Tags Disparam Sem Consentimento¶
Sintomas: - Google Analytics / Ads disparam antes do usuário aceitar - Tags aparecem em GTM Preview antes de consent: 'update'
Possíveis Causas e Soluções:
Causa A: Tags Não Configuradas¶
Verificar: 1. Abra GTM 2. Vá em Tags → Selecione a tag 3. Verifique Configurações avançadas → Configurações de consentimento
Solução: 1. Habilite "Exigir consentimento adicional para que a tag seja disparada" 2. Adicione o tipo de consentimento necessário: - Google Analytics → analytics_storage - Google Ads → ad_storage + ad_user_data
Causa B: Consent Mode Não Habilitado¶
Verificar: 1. GTM → Admin → Configurações do contêiner 2. Procure por "Ativar visão geral de consentimento"
Solução: - Marque a caixa "Ativar visão geral de consentimento" - Salve as alterações - Publique nova versão do GTM
3. Eventos Customizados Não Disparam¶
Sintomas: - complyr_accept_all, complyr_banner_shown não aparecem no dataLayer - Tags com acionadores customizados não disparam
Possíveis Causas e Soluções:
Causa A: dataLayer Não Existe¶
Verificar:
Solução: - GTM deve carregar ANTES do script Complyr - Se dataLayer não existe, o GTM não está carregado corretamente
Causa B: Erro JavaScript¶
Verificar: 1. Abra Console (F12) 2. Procure por erros em vermelho
Solução: - Corrija erros JavaScript que impedem o script de executar - Verifique conflitos com outros scripts
Causa C: Script Complyr Carrega Antes do GTM¶
Verificar ordem de carregamento:
<!-- ❌ ERRADO -->
<script data-complyr-script></script>
<script> GTM </script>
<!-- ✅ CORRETO -->
<script> GTM </script>
<script data-complyr-script></script>
Solução: - Certifique que GTM carrega PRIMEIRO - Complyr detecta dataLayer existente
4. dataLayer Não Atualiza Consentimento¶
Sintomas: - Usuário aceita banner mas consent: 'update' não aparece - Tags continuam bloqueadas após aceite
Possíveis Causas e Soluções:
Causa A: gtag Function Não Existe¶
Verificar:
Solução: - GTM precisa estar carregado para gtag() existir - Verifique que GTM está funcionando corretamente
Causa B: Conflito com outro Script de Consentimento¶
Verificar:
Solução: - Remova outros scripts de gerenciamento de consentimento - Apenas um sistema de consent por página
5. Consentimento Não Persiste Entre Sessões¶
Sintomas: - Banner aparece novamente após fechar/reabrir navegador - Consentimento é perdido
Possíveis Causas e Soluções:
Causa A: localStorage Bloqueado¶
Verificar:
try {
localStorage.setItem('test', 'test');
localStorage.removeItem('test');
console.log('localStorage OK');
} catch(e) {
console.error('localStorage bloqueado:', e);
}
Solução: - Habilite localStorage no navegador - Desabilite modo privado / anônimo para testes - Verifique permissões de cookies do site
Causa B: localStorage Limpo Automaticamente¶
Verificar: - Navegador está em modo anônimo? - Extensões de privacidade limpando storage?
Solução: - Teste em navegador normal (não anônimo) - Desabilite extensões de privacidade temporariamente
6. Custom Dimensions Não Aparecem no GA4¶
Sintomas: - Eventos Complyr disparam mas sem custom dimensions - complyr_workspace_id aparece como undefined
Possíveis Causas e Soluções:
Causa A: Variáveis Não Criadas no GTM¶
Verificar: 1. GTM → Variáveis 2. Procure por variáveis com nome complyr_*
Solução: 1. Vá em Variáveis → Nova 2. Tipo: Variável da Camada de Dados 3. Nome: complyr_workspace_id (exatamente como no dataLayer) 4. Repita para todas as 7 variáveis
Causa B: Nome da Variável Incorreto¶
Verificar: Nome deve ser EXATAMENTE: - complyr_workspace_id (não workspace_id) - complyr_consent_status (não consentStatus)
Solução: - Use os nomes exatos listados em Custom Events - Respeite case-sensitive
7. Preview Mode Mostra Erro de Consentimento¶
Sintomas: - GTM Preview Mode mostra aviso: "Consent was not set" - Aba Consent não mostra nada
Possíveis Causas e Soluções:
Causa A: Consent Default Não Enviado¶
Verificar no dataLayer:
Solução: - Script Complyr deve enviar consent: 'default' no page load - Verifique que script está carregando corretamente
Causa B: Ordem de Eventos Incorreta¶
Fluxo correto: 1. GTM carrega → dataLayer criado 2. Complyr carrega → consent: 'default' enviado 3. Usuário interage → consent: 'update' enviado
Solução: - Garanta que GTM carrega ANTES do Complyr
8. Modelagem de Conversões Não Funciona¶
Sintomas: - Google Ads não mostra conversões modeladas - Relatórios vazios mesmo com Consent Mode ativo
Possíveis Causas e Soluções:
Causa A: Tráfego Insuficiente¶
Requisitos: - Mínimo 100-200 conversões/semana - Taxa de consentimento >30%
Solução: - Aguarde acumular mais dados - Aumente taxa de aceitação otimizando banner
Causa B: Região Não Suportada¶
Verificar: - Modelagem funciona principalmente em EEA + UK - Brasil tem suporte limitado
Solução: - Verifique se sua região tem suporte completo - Aguarde expansão do Google
9. Errors no Console do Navegador¶
Erro: "gtag is not defined"¶
Causa: GTM não carregou antes do script Complyr.
Solução:
Erro: "localStorage is not defined"¶
Causa: Navegador bloqueando localStorage.
Solução: - Habilite cookies/storage nas configurações do navegador - Teste em navegador diferente
Erro: "Failed to fetch template"¶
Causa: Template não encontrado ou workspace-id incorreto.
Solução: - Verifique workspace-id - Confirme que template está ativo no painel
10. Diferenças Entre Ambientes¶
Sintomas: - Funciona em desenvolvimento mas não em produção - Ou vice-versa
Possíveis Causas e Soluções:
Causa A: Versão Diferente do GTM¶
Verificar: - Dev: Versão em Preview - Prod: Versão publicada antiga
Solução: - Publique nova versão do GTM - Aguarde propagação (pode levar minutos)
Causa B: Domínio Diferente¶
Verificar:
Solução: - Certifique que workspace-id está correto para o domínio - Crie workspaces separados para dev/prod se necessário
🔍 Ferramentas de Debug¶
1. Debug Console Complyr¶
Adicione ao script:
<script
src="https://app.complyr.com.br/tag/js"
data-workspace-id="SEU_ID"
data-debug="true"
data-complyr-script>
</script>
Logs detalhados aparecerão no console.
2. Inspeção do dataLayer¶
// Ver todos os eventos de consentimento
dataLayer.filter(e => e.event && e.event.includes('consent'))
// Ver todos os eventos Complyr
dataLayer.filter(e => e.event && e.event.includes('complyr'))
// Ver último consentimento
dataLayer.filter(e => e.event === 'consent').slice(-1)[0]
3. Validação de localStorage¶
// Ver consentimento salvo
const consent = localStorage.getItem('complyr_consent');
console.log(JSON.parse(consent));
// Limpar e testar novamente
localStorage.clear();
location.reload();
📞 Suporte¶
Se o problema persistir após tentar as soluções acima:
- Documente o problema:
- Screenshots do erro
- Exports do dataLayer
- URL afetada
-
Versão do GTM
-
Verifique logs:
- Console do navegador (F12)
- GTM Preview Mode
-
Network tab (requests falhando?)
-
Entre em contato:
- Email: contato@complyr.com.br
- Inclua informações do passo 1
🔗 Recursos Adicionais¶
- Testando a Integração - Guia de testes completo
- Configuração - Revise o setup passo a passo
- Eventos Customizados - Lista de eventos
- Consent Mode v2 - Detalhes técnicos
- FAQ - Perguntas frequentes