21 Eylül 2026 Pazartesi

Da Armadilha do CPI a Jogadores de Alta Retenção: Escalar Jogos Móveis com Ações na Aplicação do Firebase e Google Ads (UAC 2.0)




Da Armadilha do CPI a Jogadores de Alta Retenção: Escalar Jogos Móveis com Ações na Aplicação do Firebase e Google Ads (UAC 2.0)

Qualquer programador de jogos indie que lance um título móvel enfrenta, mais cedo ou mais tarde, o Paradoxo do Custo por Instalação (CPI):

Lança uma campanha paga de aquisição de utilizadores (UA), celebra uma vaga de transferências baratas e vê o contador de instalações no Google Play a subir vertiginosamente. Contudo, quando abre o painel de analítica 48 horas depois, a realidade torna-se evidente:

1.000 Instalações ──► 500 Desinstalações Imediatas (< 2 min) ──► 50 Conclusões do Nível 1 ──► 5 Jogadores Retidos

Mais de 50% dos utilizadores adquiridos eliminaram o jogo antes de concluir sequer o primeiro nível.

Se estiver a executar uma Campanha de aplicações para instalações do Google Ads (UAC 1.0) padrão com licitação básica de CPI, o algoritmo de machine learning da Google está a fazer exatamente o que lhe ordenou: encontrar os utilizadores mais baratos possíveis que toquem em "Instalar" no Google Play. Infelizmente, os utilizadores mais baratos na rede de anúncios são frequentemente caçadores de anúncios premiados, utilizadores que clicam por engano ou contas robotizadas que nunca terão qualquer intenção de interagir com o seu jogo.

Neste artigo, partilhamos a nossa arquitetura real de engenharia e marketing do nosso jogo de ação tática de tanques retro de ritmo acelerado, Blocked: Pixel Panzer (desenvolvido com MonoGame e C# pela Arar Games). Vamos explorar como articulámos a telemetria do dispositivo com o Google Analytics 4 (GA4) e as Campanhas de aplicações do Google Ads para Ações na aplicação (UAC 2.0) para deixar de comprar instalações vazias e começar a adquirir jogadores dedicados e de alta retenção.


1. Diagnosticar o Funil: O que a Analítica em Direto nos Ensinou

Antes de gastar um único euro em redes de anúncios, tem de saber exatamente onde é que os jogadores abandonam o jogo.

Em Blocked: Pixel Panzer, a nossa telemetria regista os ciclos de vida centrais da jogabilidade de forma assíncrona no Firebase:

  • first_open
  • screen_view (monitorização de mais de 40 ecrãs personalizados de MonoGame)
  • level_completed (com os parâmetros level_number, score, duration_seconds)
  • skill_upgraded
  • boss_fight_result
  • app_remove (sinal nativo de desinstalação do sistema operativo)

Quando analisámos as sessões de desinstalação na Exploração de Caminho do GA4, os dados foram inequívocos:

  • De 63 dispositivos analisados que desinstalaram o jogo, cerca de 30 utilizadores desinstalaram antes de concluir o Nível 1.
  • 14 utilizadores abandonaram após atualizarem as suas capacidades iniciais no ciclo de jogo.
  • O progresso máximo alcançado entre os utilizadores que abandonaram foi o Nível 10 (o primeiro Boss Mundial).
[ Instalações de Utilizadores ] 
       │
       ├──► 48% Abandono: Saída antes de concluir o Nível 1 <── (A Zona de Desperdício do CPI)
       │
       ├──► 30% Envolvimento: Melhoria de capacidades e chegada aos Níveis 2-3
       │
       └──► 22% Retenção Central: Chegada ao Boss (Nível 10) e ao Meta-Game

A conclusão foi incontornável: Pagar por instalações em bruto é atirar orçamento diretamente para a zona de abandono.

Para construir uma economia de jogo sustentável, o nosso modelo de licitação publicitária precisava de otimizar para utilizadores cuja assinatura de comportamento correspondesse a jogadores que efetivamente superam o Nível 1 e avançam em direção ao Nível 3.


2. A Mecânica do UAC 2.0: Otimizar para Ações na Aplicação

As Campanhas de aplicações do Google Ads (Universal App Campaigns) apresentam modelos de otimização distintos:

Modelo de Campanha Foco de Licitação O que o Algoritmo Aprende Ideal Para
UAC 1.0 (Instalações) Maximizar Instalações / CPI Alvo Perfis de utilizadores que instalam novas aplicações frequentemente Lançamento inicial em loja, picos de volume
UAC 2.0 (Ações na Aplicação) Target CPA (Custo por Ação Alvo) Perfis de utilizadores com probabilidade de concluir um marco no jogo Retenção sustentável, crescimento do meta-game
UAC 2.5 (Valor / ROAS) ROAS Alvo Perfis de jogadores com gastos elevados (whales) Jogos com forte monetização por compras na aplicação

Com o UAC 2.0 (Ações na Aplicação), define um Custo por Ação Alvo (Target CPA)—por exemplo, 0,20 € por cada conclusão do Nível 1.

A rede neuronal de Smart Bidding da Google analisa então centenas de sinais comportamentais no Google Play, YouTube, Pesquisa Google e milhões de aplicações na Rede de Display da Google (AdMob). Esta licita agressivamente apenas quando uma impressão de anúncio corresponde a um utilizador cujos hábitos históricos indicam que irá descarregar o jogo, ultrapassar o tutorial e concluir o Nível 1.


3. Implementação Passo a Passo: Da Telemetria em C# ao Google Ads

Eis o fluxo técnico integral que utilizámos para converter conquistas no jogo em metas acionáveis de conversão publicitária.

Passo 1: Hook de Telemetria no Dispositivo (MonoGame / C#)

Em Blocked.Shared/Managers/AnalyticsManager.cs, sempre que o jogador supera uma zona de combate, o jogo calcula a pontuação, o dano e o tempo, e depois envia level_completed sem bloquear o thread de renderização a 60 FPS:

public static void LogLevelCompleted(int level, int score, int totalScore, string rank,
                                     int durationSeconds, int damageTaken,
                                     int blocksBroken, int enemiesKilled, int suppliesCollected)
{
    try
    {
        _payload.Clear();
        _payload[AnalyticsParams.LevelNumber] = level;
        _payload[AnalyticsParams.Score] = score;
        _payload[AnalyticsParams.TotalScore] = totalScore;
        _payload[AnalyticsParams.DurationSeconds] = durationSeconds;
        _payload[AnalyticsParams.IsBoss] = IsBossLevel(level) ? 1 : 0;
        
        // Dispatches to Android Firebase SDK via JNI (non-blocking SQLite buffer)
        _service.LogEvent(AnalyticsEvents.LevelCompleted, _payload);
    }
    catch (Exception ex)
    {
        // Telemetry must never crash gameplay
        Warn(ex);
    }
}

Passo 2: Síntese de Eventos no GA4 (Sem Atualização da Aplicação na Loja)

O Google Ads não consegue licitar diretamente sobre subconsultas de parâmetros como level_completed WHERE level_number == 1 de raiz. No entanto, o Google Analytics 4 permite sintetizar eventos personalizados em tempo real a partir da telemetria recebida sem publicar uma atualização de versão na loja:

  1. Na Consola do GA4, navegue até Administrador ➔ Apresentação de dados ➔ Eventos.
  2. Clique em Criar evento e configure:
    • Nome do evento personalizado: level_1_completed
    • Condições de correspondência:
      • event_name é igual a level_completed
      • level_number é igual a 1
    • Assinale "Copiar parâmetros do evento de origem" para preservar pontuações e métricas de sessão.
  3. Guarde a configuração.
  4. No separador Eventos ou Eventos principais, localize level_1_completed e ative "Marcar como evento principal".

A partir deste momento, sempre que qualquer jogador no mundo superar o Nível 1, o GA4 emite automaticamente um evento de conversão dedicado level_1_completed.

Passo 3: Importar Ações de Conversão para o Google Ads

  1. Aceda ao Google Ads (ads.google.com).
  2. Navegue até Objetivos ➔ Conversões ➔ Resumo.
  3. Clique em Nova ação de conversão ➔ Importar ➔ Propriedades do Google Analytics 4 (Firebase).
  4. Selecione level_1_completed da lista.
  5. Defina a categoria como Envolvimento ou Nível alcançado (Level achieved).
  6. Configure a ação de conversão como Principal (Primary) para que o Smart Bidding otimize ativamente para este objetivo.
[ Jogo Móvel: Nível 1 Superado ]
                │
                │  LogEvent("level_completed", { level_number: 1 })
                ▼
[ Motor Firebase Analytics ]
                │
                │  Regra GA4: Sintetizar "level_1_completed"
                ▼
[ GA4 Evento Principal (Conversão) ]
                │
                │  Integração Associada do Google Ads
                ▼
[ Motor Smart Bidding do Google Ads (UAC 2.0 Target CPA) ]

4. Superar o Problema do Arranque a Frio: A Estratégia de Funil Faseado

Um erro comum cometido por programadores indie ao transitarem para o UAC 2.0 é apontar para uma fase demasiado avançada do jogo logo de início.

A Regra de Volume do Machine Learning

Os algoritmos de Smart Bidding do Google Ads exigem um limiar estatístico mínimo para aprenderem de forma eficaz:

  • Regra de Ouro: Uma campanha deve gerar pelo menos 10 a 20 conversões de ações na aplicação alvo por dia para sair da "Fase de Aprendizagem" e alcançar a máxima eficiência de licitação.

Na nossa auditoria inicial de analítica, tínhamos criado um público chamado Quality_Players_Level_3 (jogadores que concluíram o Nível 3 ou superior), que contava com 17 utilizadores.

Se tivéssemos lançado uma campanha com alvo direto no Nível 3:

  • Gerar 15 conversões de Nível 3 diariamente exigiria um investimento publicitário inicial astronómico.
  • Com apenas 17 dados de base, o tamanho da amostra semelhante (lookalike) do algoritmo era demasiado estreito, arriscando picos de licitação voláteis ou ausência total de impressões ("Demasiado pequeno para publicar").

A Solução de Bisturi em Duas Fases

Em vez de uma abordagem de tudo ou nada, adotámos um funil por etapas:

flowchart TD
    A["Fase 1: Escalar Nível 1 Concluído"] --> B["Adquire jogadores envolvidos com Target CPA reduzido"]
    B --> C["Filtra 100% dos utilizadores que desinstalam sem jogar"]
    C --> D["Preenche o Público 'Quality_Players_Level_3' (100+ jogadores)"]
    D --> E["Fase 2: Mudar Target CPA para Nível 3 / Melhorias de Capacidades"]
  1. Etapa 1 (Volume e Higiene): Otimizar para level_1_completed. Como cerca de 50-60% dos jogadores reais conseguem passar o Nível 1, a campanha obtém facilmente mais de 20 conversões diárias a um Target CPA reduzido (~0,15 € - 0,25 €). Isto elimina instantaneamente instalações fantasmas enquanto cria uma base de utilizadores ativos.
  2. Etapa 2 (Refinamento): À medida que centenas de jogadores concluem o Nível 1, uma percentagem estável avança naturalmente para os Níveis 3, 5 e 10. Assim que a lista Quality_Players_Level_3 ultrapassar 100-200 utilizadores ativos, o alvo da campanha pode mudar com segurança para o Nível 3 ou metas de meta-game (skill_upgraded) para obter o valor de vida útil (LTV) máximo.

5. Seleção de Mercados e Arbitragem Geográfica

Licitar em mercados Tier-1 (EUA, Reino Unido, Alemanha) com uma campanha não calibrada pode esgotar orçamentos indie modestos em poucas horas (1,50 € - 4,00 € por ação).

Para o teste inicial de UAC 2.0 de Blocked: Pixel Panzer, selecionámos um grupo estratégico de quatro mercados de grande volume, eficientes em custos e com grande apetência por jogos:

  1. Turquia (TR): Forte comunidade local de jogadores, elevado envolvimento com títulos de ação/arcade e custos de aquisição atrativos.
  2. Brasil (BR): Um dos maiores mercados mundiais de jogos Android. Os jogadores móveis brasileiros têm enorme entusiasmo por estética retro e combate arcade.
  3. México (MX): O segundo maior polo de jogos da América Latina, oferecendo densidade de volume e comunidades leais.
  4. Polónia (PL): Um excelente campo de testes europeu—monetização por eCPM de AdMob significativamente mais alta do que na América do Sul, com custos de aquisição consideravelmente mais baixos do que na Europa Ocidental.

Localização Nativa: O Multiplicador Secreto

Apresentar anúncios em mercados internacionais só traz retorno se a experiência dentro do jogo corresponder à página da loja. Em Blocked: Pixel Panzer, os quatro mercados contam com localização nativa integrada:

  • tr.json (Turco)
  • pt-BR.json (Português do Brasil)
  • es-419.json (Espanhol da América Latina)
  • pl.json (Polaco)

Quando um jogador de São Paulo ou Varsóvia clica num anúncio, instala o jogo e ouve a sua língua materna logo no arranque, a imersão é instantânea—aumentando drasticamente as taxas de conclusão do Nível 1.

Dica Pro de Segmentação Geográfica: Nas definições de Localização do Google Ads, mude sempre o valor predefinido de "Presença ou interesse" para "Presença: Pessoas que se encontram ou costumam estar nas suas localizações incluídas". Isto garante que o seu orçamento é gasto exclusivamente em utilizadores que residem fisicamente nos países de destino, eliminando tráfego de VPNs externas ou pesquisas irrelevantes.


6. Recursos Criativos: Porque é que o Vídeo Multiplica e Nunca Canibaliza

Ao criar grupos de recursos no Google Ads, os programadores perguntam frequentemente: “Se adicionar vídeo de jogabilidade, isso não irá ofuscar as minhas capturas de ecrã tão trabalhadas?”

A resposta é um enfático não. O Google Ads opera em inventários multicanal distintos:

  • Títulos e Capturas de Ecrã: Dominam as pesquisas no Google Play, a gaveta de aplicações recomendadas e as redes de faixas display.
  • Vídeo: Desbloqueia o inventário massivo do YouTube Shorts, anúncios de vídeo no fluxo e colocações de vídeo premiado noutros jogos móveis populares.

Em jogos de alta intensidade como Blocked: Pixel Panzer, imagens estáticas mostram apenas arte pixelizada, mas apenas o vídeo consegue transmitir a adrenalina de desviar de enxames de balas bullet-hell, detonar reações em cadeia e destruir caças inimigos.

Os jogadores que instalam o jogo após visualizarem jogabilidade autêntica já compreendem os comandos e a mecânica. Em consequência, a sua taxa de conversão em level_1_completed é substancialmente superior à dos utilizadores conquistados apenas por elementos gráficos estáticos.


7. Lista de Controlo de Resumo para Programadores Independentes

Antes de lançar a sua próxima campanha de anúncios para jogos móveis, verifique esta lista de controlo arquitetural:

  • Verificar a Telemetria no Jogo: Garanta que level_completed e os marcos de nível são registados com parâmetros limpos e sem alocações de memória (GC) no thread principal.
  • Sintetizar Eventos Principais no GA4: Crie eventos específicos (ex.: level_1_completed) e marque-os como Eventos Principais (Key Events) no GA4.
  • Importar para o Google Ads: Ligue o Firebase ao Google Ads, importe a ação de conversão e configure-a como Principal (Primary).
  • Foco de Licitação: Escolha Ações na aplicação (Target CPA) em vez do volume bruto de instalações.
  • Calibrar o CPA Inicial: Estabeleça um Target CPA realista (0,15 € - 0,30 € dependendo do escalão do país de destino) e permita pelo menos 3 a 4 dias de aprendizagem contínua de machine learning.
  • Construir o Funil por Etapas: Comece com um marco inicial acessível (Nível 1) para gerar velocidade de conversão e avance depois para metas de progressão mais profundas.

Ao mudar a sua mentalidade de comprar transferências para comprar marcos de jogabilidade, transforma a publicidade de um encargo imprevisível num motor replicável de crescimento com jogadores fiéis.


Escrito pela equipa de engenharia da Arar Games / Mayhemco (criadores de Paint Trek). Explore Blocked: Pixel Panzer no Google Play para conhecer em primeira mão o nosso combate arcade retro de ritmo frenético.


Hashtags & SEO Topics

#BlockedPixelPanzer #ArarGames #Mayhemco #PaintTrek #MonoGame #GoogleAds #FirebaseAnalytics #GA4 #MobileGameDev #UserAcquisition #GameMarketing #SmartBidding #TargetCPA #InAppActions #IndieGameDev #GameAnalytics #AndroidDev




Hiç yorum yok:

Yorum Gönder