Orbital

Explore o conhecimento.

Digite pelo menos 2 caracteres para buscar artigos, stories e páginas.

↑ ↓ para navegar · Enter para abrirEsc para fechar
Neste artigo

TL;DR

  • Criamos um painel em Streamlit que lê os eventos da landing page no BigQuery, enviados pelo Google Analytics 4 (GA4).
  • Assim, o time consulta indicadores de funil, termos de busca e frases personalizadas sem montar uma consulta a cada análise.
  • A conexão usa uma conta de serviço do Google Cloud, com permissão só de leitura e a chave guardada nos segredos do Streamlit.
  • Em geral, o cache das consultas reduz o custo no BigQuery e deixa o painel mais rápido.
  • Por fim, o ponto de partida é definir as perguntas que o time quer responder, antes de montar os gráficos.

A exportação do GA4 para o BigQuery grava cada evento em uma linha, dentro de tabelas diárias. Esse formato guarda muito detalhe, mas dificulta a leitura rápida.

Foi o que encontramos na landing page da Orbital. Para resolver, criamos uma análise de dados de landing page com Streamlit, ferramenta que cria aplicações web interativas com Python.

O painel lê os eventos no BigQuery, trata os dados e mostra indicadores, gráficos e filtros em uma única tela.

Hoje, mostramos como conectamos o Streamlit ao BigQuery, quais dados extraímos e que cuidados a solução exige.

O que você encontrará no conteúdo:

  1. Por que a análise de dados de landing page fica subutilizada no BigQuery?
  2. Como conectar o Streamlit ao BigQuery com segurança?
  3. Quais dados da landing page vale extrair?
  4. Como transformar eventos em indicadores de funil?
  5. Quais visualizações ajudam a decidir?
  6. Que cuidados a solução exige?
  7. Perguntas frequentes

Por que a análise de dados de landing page fica subutilizada no BigQuery?

Porque o volume de eventos e a estrutura em tabelas tornam cada consulta lenta e trabalhosa.

A landing page da Orbital é uma das principais portas de entrada de potenciais clientes. Por isso, entender o comportamento dos visitantes importa para a equipe.

Os eventos chegam ao BigQuery pelo GA4, como acontece em muitas empresas. No entanto, o GA4 guarda os detalhes em campos aninhados, que exigem comandos específicos para a leitura. Como resultado, cada consulta toma tempo para ser montada e interpretada.

Além disso, o título da página exibe uma frase personalizada. A equipe precisa entender como essa variação se relaciona com a busca que trouxe cada visitante.

Assim, os dados ficavam guardados, mas pouco usados. Precisávamos de uma forma de coletar, processar e visualizar as informações, para que o time avaliasse a performance com dados atualizados.

Tabela do BigQuery com os eventos da landing page da Orbital exportados pelo GA4

Como conectar o Streamlit ao BigQuery com segurança?

Com uma conta de serviço do Google Cloud, permissão de leitura e a chave guardada nos segredos do Streamlit.

Primeiro, criamos a conta de serviço, que acessa os registros do BigQuery por API (Application Programming Interface). Em seguida, geramos a chave, um arquivo JSON (JavaScript Object Notation) com as credenciais de acesso.

A documentação oficial do Streamlit recomenda a permissão de visualizador. Ela permite ler os dados, mas não alterá-los.

Além disso, a chave fica no arquivo de segredos do aplicativo, e esse arquivo não vai para o GitHub. Dessa forma, o código acessa as credenciais pelo recurso de segredos do Streamlit, e a chave não aparece no repositório.

Quais dados da landing page vale extrair?

Os campos que ligam o comportamento do visitante à origem e à mensagem exibida.

Pela API, extraímos cinco informações de cada evento:

  • data e hora do evento;
  • nome do evento;
  • identificador pseudônimo do usuário;
  • UTM (Urchin Tracking Module) term, o termo de busca que trouxe o visitante até a página;
  • frase personalizada do título da página.

Com esses campos, o painel acompanha a jornada de cada visitante dentro dos eventos. Além disso, cruza essa jornada com a busca de origem e com a frase exibida.

Como transformar eventos em indicadores de funil?

Com o Pandas, biblioteca Python que organiza os eventos e calcula os números de cada etapa.

Depois da coleta, tratamos os dados e os transformamos em informação de uso diário. A aplicação mostra os indicadores das etapas do funil, uma prévia dos dados e a nuvem de palavras da frase personalizada.

Além disso, o time filtra eventos, períodos e termos UTM. Cada filtro recalcula a tela, então a análise acompanha a pergunta de quem usa o painel.

Quais visualizações ajudam a decidir?

Gráficos de linha, nuvem de palavras, tabelas interativas e cartões de KPI (Key Performance Indicator).

O Plotly cria os gráficos interativos, em que o usuário explora os valores direto na tela. Os gráficos de linha mostram o crescimento do tráfego ao longo do tempo. Já a nuvem de palavras destaca os termos mais frequentes na frase personalizada.

Por fim, as tabelas interativas e os cartões de KPI facilitam a leitura rápida dos números. Dessa forma, quem acompanha a landing page encontra a resposta sem abrir o BigQuery.

Veja como o painel se apresenta:

Gráfico de linha no painel em Streamlit com a evolução do tráfego da landing page

Nuvem de palavras com os termos mais frequentes na frase personalizada da landing page

Painel em Streamlit com gráfico de linha e filtros de eventos, períodos e termos UTM

Que cuidados a solução exige?

Três cuidados ajudam: controlar o custo das consultas, usar cache e proteger as credenciais.

A exportação do GA4 é gratuita, mas o uso do BigQuery tem custo. Por isso, vale filtrar as consultas por data, de modo que o painel leia apenas os dias necessários.

Além disso, o cache do Streamlit guarda o resultado de uma consulta por um tempo definido. O exemplo da documentação oficial mantém o resultado por dez minutos, o que evita consultas repetidas.

O Streamlit também recebe versões com frequência. Portanto, registre a versão usada e teste cada atualização em um ambiente separado.

Por fim, revise de tempos em tempos quem tem acesso à conta de serviço e à chave.

Perguntas frequentes

O que é o Streamlit?

É uma ferramenta que cria aplicações web interativas com Python. No nosso caso, ela leu os dados do BigQuery e os exibiu em gráficos e filtros.

Quem usa o painel precisa saber programar?

Não. Quem usa o painel filtra os dados e lê os gráficos na tela. A criação do painel, porém, exige conhecimento de Python.

Por que usar o BigQuery com o GA4?

Porque a exportação guarda o detalhe de cada evento. Assim, é possível fazer análises que os relatórios agregados do GA4 não mostram.

A conta de serviço precisa de permissão para alterar dados?

Não. A documentação oficial do Streamlit indica a permissão de visualizador, que apenas lê os dados.

Com que frequência os dados são atualizados?

Depende da exportação do GA4. Ela cria uma tabela por dia e, se o envio contínuo estiver ativo, uma tabela intradiária atualizada ao longo do dia.


Posts Relacionados

Se gostou desse post
leia esses também...