Pular para o conteúdo principal

Google Ads

Google Ads é integrado via GTM — não há SDK Google Ads próprio no front. Tags de conversão Google Ads são configuradas dentro do container GTM da brand.

Modelo de integração​

Não há config local de "Google Ads ID". Tudo vive no GTM.

Setup recomendado no GTM​

Conversion tag — FTD​

  1. Tag type: Google Ads Conversion Tracking
  2. Conversion ID + Label: do Google Ads (Conversion Actions → New)
  3. Trigger: Custom Event = first_deposit
  4. Conversion Value: {{DLV - value}} (lê value do dataLayer)
  5. Currency: {{DLV - currency}}
  6. Transaction ID: {{DLV - transactionId}} (deduplicação)

Conversion tag — Sign-up​

  1. Trigger: Custom Event = sign_up
  2. Value: opcional (CPL fixo da campanha)

Remarketing tag​

  1. Tag type: Google Ads Remarketing
  2. Trigger: All Pages (pra audiência geral) ou eventos específicos
  3. Custom Parameters: opcional, pode mapear do dataLayer

gclid — Click ID do Google​

Capturado da URL via Clicked-IDs. Persistido como:

  • Campo individual no cookie_tracking: { "gclid": "Cj0KCQjw..." }
  • media_clid derivado quando gclid é o primeiro match: { "media_source": "google", "media_clid": "Cj0KCQjw..." }

Vai no payload de signup e deposit pro BFF.

Enhanced Conversions — Roadmap​

Status atual: NÃO implementado.

Enhanced Conversions enriquece conversões com hashed PII (email, telefone) e/ou external_id. Permite Google Ads matchar com user mesmo quando o gclid não foi setado (iOS 14+, ad blockers).

Implementação requer:

  1. BFF receber external_id (rmkvera UUID) no payload — ver Remarketing
  2. BFF chamar Google Ads API server-side com hashed user data
  3. Configurar Enhanced Conversions no Google Ads Conversion Action

Mesma trajetória da CAPI da Meta — depende de priorização de BFF.

Audiências dinâmicas (Display Remarketing)​

Pra mostrar anúncio do exato jogo que o user viu:

  1. Cria audience dinâmica no Google Ads → Audience Manager → Custom audiences
  2. Trigger no GTM: Custom Event = view_game_page, parâmetros = { game_id, game_name, game_category }
  3. Tag: Google Ads Remarketing com dynamic remarketing parameters (ecomm_prodid: {{DLV - gameId}}, ecomm_pagetype: 'product', etc)

O front já dispara view_game_page com gameId, gameName, gameCategory no payload — basta wirar no GTM.

Configuração por brand​

Sem config local — toda configuração vive no container GTM da brand. Ver Por Brand pra mapeamento de qual GTM ID cada brand usa.

Como debuggar​

Google Tag Assistant (Chrome extension)​

Tag Assistant — debug de tags Google em geral.

Google Ads → Conversions → seleciona uma Conversion Action → "Diagnostics" mostra eventos recebidos em tempo real (latência ~1 minuto).

gclid sobrevivendo redirects​

1. Acessa http://localhost:5173/?gclid=test_gclid_12345
2. DevTools → Cookies → cookie_tracking deve ter "gclid": "test_gclid_12345"
3. Submete signup → Network → POST /api/auth/register → body deve ter "gclid"

Anti-patterns​

  1. Disparar conversion duas vezes (uma via GTM, outra via tag manual). Inflate conversão.
  2. Não passar transactionId na tag de conversion. Google deduplica por transactionId — sem ele, refresh da página dispara nova conversão.
  3. Usar value em moeda diferente da configurada na conversão. Quebra ROAS.
  4. Configurar Enhanced Conversions com email não-hashado. Google rejeita ou (pior) loga PII em request body. Sempre SHA256(email) lowercased.