Guia de integração
Analytics pelo Google Tag Manager
Se o seu site já tem o GTM, dá para instalar o Analisa sem mexer no código: uma tag de HTML personalizado carrega o SDK, e os acionadores que você já usa viram eventos.
Antes de começar
- O contêiner do GTM instalado no site e permissão para publicar.
- A
site_keye o domínio em Allowed origins.
Instalação
1Crie a tag que carrega o SDK
Em Tags → Nova, escolha HTML personalizado e cole o código abaixo. Ele espera o SDK terminar de baixar antes de criar a instância — dentro do GTM, a ordem de várias tags
<script>não é garantida.Tag: HTML personalizado <script> (function () { var s = document.createElement('script'); s.src = 'https://cdn.jsdelivr.net/npm/@racoelho/analytics@0.2/dist/index.global.js'; s.async = true; s.onload = function () { // cria a instância só depois que o SDK carregou window.analytics = new Analytics.Analytics({ siteKey: 'YOUR_SITE_KEY' }); }; document.head.appendChild(s); })(); </script>2Acione em todas as páginas
Em Acionamento, use Inicialização - Todas as páginas (ou Todas as páginas). Em Configurações avançadas → Opções de disparo da tag, deixe Uma vez por página.
3Teste e publique
Clique em Visualizar, abra o site pelo Tag Assistant e confira se a tag disparou. Depois, Enviar para publicar a versão do contêiner.
Eventos e metas
Para cada conversão, crie outra tag de HTML personalizado com o acionador que você já usa (clique, envio de formulário, evento personalizado do dataLayer). Variáveis do GTM como {{Page Path}} podem virar propriedades.
<script>
// tag "Analisa – Cadastro", acionada no clique do botão ou no envio do formulário
window.analytics && window.analytics.track('signup', { page: {{Page Path}} });
</script>No painel do Analisa, crie a meta do tipo evento signup. O window.analytics && evita erro se a tag do evento disparar antes do SDK carregar.
Navegação entre páginas
Em apps de página única, o SDK conta só a primeira carga. Crie uma tag com o acionador Alteração de histórico, que dispara em pushState, replaceState e trocas de fragmento:
<script>
window.analytics && window.analytics.pageview();
</script>Confira se está funcionando
- Abra o site publicado numa janela comum, sem bloqueador de anúncios.
- Nas ferramentas do navegador, aba Network, filtre por
v1/i: deve aparecer umPOSTcom status200em até 3 segundos (ou quando você sai da página). - No painel, os eventos aparecem em cerca de 30 segundos.
- No modo Visualizar, confira se a tag do SDK aparece em "Tags Fired" na primeira página.
Problemas comuns
- A tag dispara, mas nada chega
- Veja se a versão do contêiner foi publicada (o modo Visualizar não publica). Confira também o domínio em Allowed origins.
- Pageviews em dobro numa SPA
- Alguns roteadores chamam
replaceStatelogo na carga. O SDK descarta a repetição do mesmo caminho em menos de 2,5 segundos; se ainda duplicar, adicione uma condição ao acionador (por exemplo, "History Source igual a pushState"). - A requisição volta 403 (
origin_not_allowed) - O domínio não está em Allowed origins nas configurações do site. Cadastre a origem exata — com
https://, com e semwww, e endereços de teste comohttp://localhost:3000se quiser medir em desenvolvimento. - Nenhuma requisição aparece na aba Network
- O SDK respeita o Do Not Track por padrão: se o seu navegador envia DNT, nada é enviado. Teste em outro navegador ou perfil. Bloqueadores de anúncio também podem barrar o script.
- As pageviews aparecem em dobro
- O SDK foi inicializado duas vezes (por exemplo, o script colado no tema e também por um plugin). Mantenha uma única instância por página.