Pular para o conteúdo principal

Facebook (Meta)

Integração com Meta Pixel (client-side) — Conversions API (CAPI) server-side está no roadmap mas ainda não implementada. Esta página cobre o estado atual + o que falta pra CAPI completa.

Meta Pixel client-side

Carregado via useAnalytics hook (não via GTM diretamente — é um SDK próprio em app/utils/metrics/facebook.ts).

Configuração por brand

Em overrides/<brand>/app/config/analytics/analytics.ts:

{
pixelId: undefined, // ← undefined = fallback API
facebookDomainVerification: null, // ← string ou null
}

Resolução do pixelId

Mesmo padrão do GTM:

  • pixelId: undefined → fallback brand.settings.analytics.pixelId da API
  • pixelId: "1234567890" → usa esse valor
  • pixelId: null → desativa explicitamente

facebookDomainVerification

String que vai como <meta name="facebook-domain-verification" content="..."> no <head>. Obrigatória pra que o Pixel + Conversions API tenham total funcionalidade (especialmente Aggregated Event Measurement em iOS 14+).

Pra obter o valor: Meta Business Manager → Domain → Verify → "Use Meta Tag" → copia o valor do content.

BrandfacebookDomainVerification
Betpontobet"a66iz0zi3kxc7rkamy3itfx0uyqap7"
Demais brands ativasnull (a confirmar com time deploy se devem ter)

Eventos enviados

O front emite eventos pro Pixel via dispatcher central (app/utils/metrics/index.ts):

Evento FrontEvento MetaPayload
sign_upCompleteRegistrationcontent_name, currency
first_depositPurchasevalue, currency, content_name: "first_deposit"
purchase (rebill)Purchasevalue, currency

Por que first_deposit E purchase?

Paridade legado. Tanto first_deposit quanto purchase disparam Purchase no Pixel (são eventos Meta canônicos), mas com content_name diferente. Permite separar audiences "compraram pela primeira vez" vs "compraram em geral" no Meta Ads Manager.

Eventos NÃO enviados

Estes eventos não disparam pro Meta Pixel hoje (mesmo aparecendo no dispatcher):

  • page_view — Pixel já injeta automaticamente no init
  • view_game_page — não há equivalente Meta nativo (ViewContent poderia ser adicionado)
  • withdraw — Meta não tem evento padrão de saque
  • view_promotion / select_promotion — desabilitado intencionalmente (paridade legado)

Se marketing precisar adicionar, é mudança coordenada (back precisa aceitar evento custom no Meta Events Manager).

Conversions API (CAPI) — Roadmap

Status atual: NÃO implementado.

O que CAPI traz que o Pixel client-side não traz:

CenárioPixel clientCAPI
iOS 14+ ATT promptPode bloquearFunciona
User com ad blockerBloqueadoFunciona
Browser com ITP estrito (Safari)Pode bloquearFunciona
Cookie de terceiro bloqueadoPixel sem matchingCAPI usa external_id first-party
Server-side conversion (compra confirmada no banco)Não funcionaFunciona perfeitamente

Por que CAPI ainda não está implementada?

A integração CAPI exige trabalho coordenado de BFF + front. O front já tem o external_id pronto (cookie rmkvera, ver Remarketing) — falta:

  1. BFF aceitar external_id no payload de signup/deposit
  2. BFF chamar Meta CAPI após confirmar conversão (server-side, com hashed email/phone + external_id)
  3. Configurar Dataset ID + Access Token no Meta Business Manager
  4. Validar deduplicação (mesmo evento dispara via Pixel client + CAPI server; Meta dedup por event_id ou external_id)

Quando o time de back priorizar, o front habilita sendToBff: true no remarketingFeaturesConfig da brand correspondente (ver Remarketing).

Como debuggar

Meta Pixel Helper (Chrome extension)

Pixel Helper mostra todos os eventos disparados na página com payload completo e pixel ID.

  1. Abre a página
  2. Clica no ícone do Pixel Helper
  3. Vê os eventos disparados ao vivo

Events Manager → Test Events

Meta Business → Events Manager → Test Events → cola o ID do test event no ?test_event_code=TEST... da URL ou setа no Pixel.

Eventos enviados aparecem em real-time com payload completo + status de match.

Cookies Meta

DevTools → Application → Cookies:

  • _fbp — browser ID gerado pelo Pixel (90 dias TTL)
  • _fbc — click ID (vem de fbclid na URL — 7 dias após primeiro clique)

Anti-patterns

  1. Adicionar Pixel novo via GTM tag quando useAnalytics já carrega. Duplica eventos.
  2. Esquecer facebookDomainVerification. Reduz match rate em iOS 14+.
  3. Disparar Purchase antes de confirmação BFF (em deposit_initiated ao invés de pix_confirmado). Infla conversão com depósitos abandonados.
  4. Mudar pixelId em produção sem reset de audiência. Audiences velhas ficam órfãs; reativar com pixel novo perde histórico de matching.