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.