Conheça o Firebase Analytics e seus principais recursos
O Firebase é uma plataforma desenvolvida pela Google para facilitar a criação e o acompanhamento de aplicações Mobile e Web. Ela oferece uma grande quantidade de produtos com uma cota de uso gratuita bastante gentil, ajudando muito alguns aplicativos a darem seus primeiros passos.
É importante levar alguns pontos sobre o Firebase em consideração: como toda ferramenta terceira — e especialmente uma tão grande — coisas podem ser feitas fora de nosso conhecimento. Um exemplo disso é bastante relacionado a questões de tracking. Normalmente, isso é um problema apenas para se preocupar quando realizamos anúncios, mas tem ganhado novos nuances agora, com as leis gerais de proteção a dados, como o LGPD e a regulação Europeia equivalente, a GDPR. Como o Firebase coleta dados de Analytics e referencia contra outras bases de anunciantes, é um ponto que deve ser levado em consideração em todo o processo de privacidade do aplicativo — seja na App Store ou no próprio App, com o App Tracking Transparency.
Um produto muito interessante do Firebase — e que vamos nos aprofundar aqui — é o Firebase Analytics.
Alternativas de Analytics
Outras ferramentas de Analytics também existem, podendo oferecer um produto tão bom quanto até melhor que o próprio Firebase. Entretanto, nem todas possuem uma quota gratuita ou integram tão facilmente com outros produtos (como realizar testes A/B)
Heap — Illuminate the Full User Journey — Heap
Mixpanel: Product Analytics for Mobile, Web, & More
O Firebase Analytics
O Firebase Analytics é o produto do Firebase voltado para Analytics dentro do app. A ferramenta acaba tendo dois pontos muito fortes a seu favor: baixo custo e integração com o Google Analytics, uma das ferramentas de Analytics mais poderosas que existem. Todo projeto dentro do Firebase Analytics pode ser conectado com o Google Analytics, permitindo até integrações com campanhas de marketing e tracking de resultados.
A Google oferece um projeto demo bem interessante, chamado Flood It! Para acessar, é só abrir o console do Firebase.
O projeto demo possui vários produtos ativos — incluindo o Analytics — e é um excelente lugar para se começar a explorar e ter ideias.
Estatísticas Automáticas
Apesar de ser uma ferramenta que oferece bastante customização, um ponto muito legal do Firebase é a quantidade de informações e estatísticas automáticas que a ferramenta já possui. Alguns eventos são coletados automaticamente (como ver uma página, iniciar uma sessão, fazer um in-app-purchase) e a partir disso o Firebase já é capaz de gerar uma série de relatórios poderosíssimos.
A página Dashboard
do Analytics já oferece uma grande quantidade de métricas, como pode ser visto abaixo:
Estatísticas Demográficas
Através do cruzamento de informações como o IDFA, o Firebase é capaz de descobrir dados a respeito da demografia do usuário (como faixa de idade, localização, gênero). Essas estatísticas também podem ser usadas em todos os relatórios do Firebase para a realização de filtros e análises mais avançados.
⚠️ Para realizar análises demográficas, o Firebase usa um framework adicional: o AdSupport. Com mudanças nas questões de privacidade, o desenvolvedor não tem a garantia de que o IDFA está sendo capturado ou não — e consequentemente estas propriedades.
Alguns exemplos de análise que podem ser feitas:
- De que país tenho mais usuários?
- Qual a principal faixa etária que meu app atinge?
- Minha retenção é alterada de acordo com a idade?
- Qual o perfil dos meus usuários pagantes?
Propriedades de Usuário
As propriedades de usuário são funcionam de maneira bastante similar as Estatísticas Demográficas, sendo a principal diferença de que elas cobrem outros aspectos do usuário — além do desenvolvedor poder customiza-las.
🚨 Existe um limite de 25 propriedades de usuário customizadas!
Alguns exemplos de propriedades de usuário que podem ser configuradas — e análises subsequentes:
- Esse usuário completou o Onboarding inteiro?
- Quantos níveis esse usuário já completou do meu jogo?
- Como a retenção é alterada para usuários que completaram mais de 30 níveis?
- Usuários com a característica X tem uma tendência maior a comprar in-app-purchases?
💡 Pensando em Marketing…
Do ponto de vista do marketing, o ideal é identificar características que diferenciam o público-alvo o suficiente para monitorar o perfil de uso desses públicos específicos de interesse pro negócio. Como são apenas 25, priorize características de usuário relevantes pro negócio.
Eventos
Os eventos são a cereja do bolo de qualquer análise de aplicativo. Com os eventos bem definidos, tornamos o processo de análise e coleta de dados extremamente poderoso. Um evento é, como o nome diz, uma ação realizada. Existem alguns eventos que o Firebase coleta automaticamente (como a abertura do app) assim como o desenvolvedor pode criar novos eventos. O Firebase também oferece alguns eventos existentes que o desenvolvedor pode implementar, integrando automaticamente em vários relatórios.
🚨 Existe um limite de 500 eventos customizados!
Eventos Padrão
Os eventos padrão do Firebase são eventos que o Firebase “entende” e integra de maneira automática em vários relatórios. Devem sempre ser preferidos em comparação a eventos customizados (ou seja, ao invés de implementar seu próprio evento de sign_up
, use o do Firebase!)
Alguns eventos padrão que já existem são:
tutorial_begin
tutorial_complete
earn_virtual_currency
sign_up
login
share
search
join_group
in_app_purchase
Existem vários outros eventos padrão existentes, e mais podem ser encontrados aqui!
Eventos Customizados
Caso o evento que você queira acompanhar não exista por padrão no Firebase, é possível criar um evento customizado. O evento tem um name
definido por você e pode ter parâmetros também. Para monitorar os parâmetros, é necessário realizar a declaração dos mesmos no console do Firebase.
Eventos de Conversão
Qualquer evento pode ser marcado como um “Evento de Conversão” — ou seja, vai ser utilizado como uma ação de conversão para campanhas de anúncio.
O AdMob, FacebookAds e outras redes de anúncio podem obter esses eventos caso integradas com o Firebase. São bastante importantes para realizar uma boa análise da campanha para se obter resultados específicos.
💡 Pensando em Marketing…
É possível criar uma campanha que tente otimizar um evento como por exemploin_app_purchase
. Ou seja, a campanha tentará achar apenas usuários que realizem esse evento dentro do app. Para esse objetivo, o eventoin_app_purchase
deverá ser marcado como evento de conversão. Outras campanhas podem tentar otimizar outros eventos, como tempo in-app, número de fases jogadas, número de sessões, ads assistidos, entre outros.Também tem a ver com os interesses e objetivos de campanha do negócio.
Parâmetros de Eventos (ou Propriedades de Eventos)
Eventos, padrões ou customizados, podem ter parâmetros. Por exemplo, o evento level_complete
pode ter como parâmetros:
- número da fase
- tempo de duração
- pontuação
entre outros.
Existe algumas limitações quanto a tipo de dado que o parâmetro pode ter: apenas Strings e números podem ser usados. Veja mais sobre na página de eventos para iOS.
💡 Pensando em Marketing… Entenda quais parâmetros podem ser usados para extrair informações úteis de decisão para o negócio. Por exemplo, pode ser interessante para um jogo monitorar se, ao completar um level, determinado
video-reward
foi usado. Depois, conseguimos visualizar se usar ovideo-reward
contribui ou não para vitória no level, ou taxa de finalização da fase, ou replays ou até uma in-app-purchase.
Funis
Os funis são uma ferramenta de análise bastante interessante para entender a relação entre sequências de eventos e a jornada dos usuários dentro do app. Um funil muito utilizado em jogos, por exemplo, é o funil para a relação de level_started
e level_ended
. Esse funil, especificamente, nos auxilia bastante a entender possíveis frustrações de um usuário e realizar um balanceamento melhor do jogo.
No exemplo acima, pode-se perceber que o evento level_start
aconteceu 7405 vezes, enquanto o level_end
apenas 1606. Ou seja, apenas 22% das fases iniciadas são terminadas. Algumas hipóteses podem ser levantadas: a fase é muito difícil, ou muito longa, ou confusa ou outras N coisas. Assim, podemos pensar em estratégias para melhorar o app.
💡 Pensando em Marketing… Funis de vendas são extremamente comuns, e em um app comercial seria possível criar funis com progressão de uma esteira de compras: 1. assinou o trial 2. assinou efetivamente 3. renovou assinatura Diversos funis podem ser pensados, mas dependem das necessidades de análise do negócio.
Casos de Uso
O Firebase oferece muitas ferramentas e facilidades. Para mais informações e dicas, alguns links abaixo podem auxiliar:
How to use Google Analytics for Firebase — Market Finder by Google
Firebase Traffic Source Attribution Guide
Outras Ferramentas Úteis do Firebase
Crashlytics
O Crashlytics é uma ferramenta extremamente útil para se analisar crashes do aplicativo. Ele oferece informações como a versão que o usuário está, quantidade de ocorrências e, se configurado corretamente, até a linha de código onde o programa falhou. Mensagens customizadas também podem ser adicionadas para facilitar o debug.
Previsões
O Previsões do Firebase é uma ferramenta que aplica machine learning e ria segmentos dinâmicos de usuário, que podem posteriormente analisados nos relatórios ou utilizados como base para um teste A/B
A/B Testing
Bastante conectado ao Remote Config, o Firebase possui um conjunto de ferramentas para a realização de testes A/B. Com o bom uso disso, é possível analisar o impacto de certas adições no aplicativo na experiência geral de um grupo de usuários. Por exemplo:
- Adicionar tal botão aumentou minha taxa de conversões?
- Essa mudança no onboarding aumentou minha retenção?
Remote Config
O Firebase Remote Config é uma ferramenta muito útil para realizar o rollout de features gradualmente. Com ele, conseguimos customizar a experiência de usuários específicos com uma mudança no servidor (feature toggle).
Cloud Messaging
O Cloud Messaging é uma outra ferramenta do Firebase para auxiliar no envio de notificações. O FCM (como é abreviado) permite uma interface simples para que um servidor envie notificações para um usuário independente da plataforma (iOS, Android, Web) tornando múltiplos produtos bastante integrados.
Dynamic Links
O Firebase Dynamic Links tem um propósito bastante prático: permitir que o desenvolvedor crie deeplinks (aqueles links que redirecionam para dentro do App) de maneira bastante simples e dinâmica. Os dynamic links também podem redirecionar o usuário para a loja, por exemplo, caso o usuário não possua o app.
Integrações Externas
BigQuery
Por ser uma plataforma da Google, o Firebase possuí algumas integrações nativas com outras ferramentas de dados, como o BigQuery. O BigQuery é uma base de dados SQL (e mais algumas coisas) que atual como uma data warehouse, permitindo a realização de análises e integração com relatórios customizados.
O Firebase Analytics é capaz de exportar dados nativamente para o BigQuery sem a necessidade de escrever código algum. Por outro lado, o BigQuery é uma ferramenta paga que pode sair bastante cara no longo prazo.
—
Escrito por Luiz Veloso e Enzo Maruffa.
Este artigo foi apoiado pelo programa PPI Softex/, Convênio nº 0200–12/2021/SOFTEX/PPI/PUCPR/Res TIC5, financiado pelo Ministério da Ciência, Tecnologia e Inovações com recursos da Lei nº 8.248, de 23 de outubro de 1991.