Pular para o conteúdo principal

Kwai Pixel

Kwai é uma plataforma de ads brasileira/asiática. O front tem integração SDK própria (não via GTM) em app/utils/metrics/kwai.ts.

Configuração por brand

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

{
kwaiPixelId: "391184850252476579", // ← string ou null
}

Sem fallback API — se a brand quer Kwai, precisa setar explicitamente. null desativa.

BrandkwaiPixelId
7k"391184850252476579" (igual em dev e prod)
Cassinonull
Veranull
pb-betnull
Demaisnull

Eventos enviados

sign_up → CompleteRegistration
first_deposit → Purchase (com value)
purchase → Purchase (com value)

Todo evento é encaminhado pro Kwai SDK via pushKwaiEvent no dispatcher. Não envia page_view, view_game_page, withdraw, etc — paridade legado.

Como funciona

  1. useAnalytics chama scheduleThirdParty(() => initKwai(pixelId), { priority: "low" })
  2. Quando o scheduler libera (após primeira interação ou idle callback), initKwai:
    • Injeta script https://s1.kwai.net/.../kwaiq.js no head
    • Aguarda SDK estar disponível em window.kwaiq
    • Inicia o pixel (window.kwaiq.instance(pixelId))
  3. Eventos enfileirados antes do init (rare race condition) são flush dados após o SDK ficar pronto

Como debuggar

Console

window.kwaiq // SDK Kwai global
window.kwaiq.instance("PIXEL_ID") // instance da brand

Network

Filtra por kwai.net ou kwaiq.net. Cada evento dispara um GET pra endpoint Kwai.

Anti-patterns

  1. Setar kwaiPixelId em brand sem contrato Kwai ativo. Carrega script desnecessário.
  2. Esperar evento custom (view_game_page etc). Dispatcher Kwai só lida com signup/deposit/purchase. Adicionar evento exige mudança no kwai.ts + Kwai aceitar.