Reporting Automation
Esta skill capacita o Claude Code a automatizar a extração, transformação e visualização de dados de marketing digital, com foco em Google Analytics 4, para a geração eficiente de relatórios periódicos e dashboards dinâmicos.
Keywords
Google Analytics 4, GA4 API, BigQuery Export, Looker Studio, Python, Pandas, SQL, ETL, Automação de Relatórios, Dashboards Dinâmicos, Atribuição de Marketing, Métricas de Performance, Google Cloud Functions, Cloud Scheduler, Data Studio.
Quick Start
- Configurar GA4 BigQuery Export: Habilitar a exportação contínua de eventos do seu Google Analytics 4 para um projeto no Google BigQuery.
- Credenciais de Acesso: Criar uma Service Account no Google Cloud Platform com os papéis
BigQuery Data Viewer e Analytics Hub Viewer e gerar uma chave JSON.
- Script de Extração Inicial: Desenvolver um script Python para extrair dados brutos do BigQuery usando a biblioteca
google-cloud-bigquery.
- Conexão no Looker Studio: Conectar o Looker Studio (antigo Data Studio) à tabela resultante no BigQuery ou ao Google Analytics 4 Data API.
- Agendamento da Automação: Agendar a execução do script Python em ambiente serverless, como Google Cloud Functions, utilizando o Cloud Scheduler para periodicidade diária.
Core Workflows
Workflow 1: Automação de Relatório Mensal de Performance de Campanhas GA4 para Google Sheets
Este workflow detalha a criação de um processo automatizado para extrair dados de performance de campanhas do Google Analytics 4 via BigQuery, processá-los com Python e atualizar um relatório no Google Sheets, com envio de e-mail.
Extração de Dados Brutos via BigQuery Export:
- Ação: Escrever e executar uma query SQL no BigQuery para extrair métricas de campanhas do GA4 para o mês anterior.
- Exemplo de Query SQL:
SELECT
FORMAT_DATE('%Y-%m-%d', PARSE_DATE('%Y%m%d', event_date)) AS data,
traffic_source.source AS fonte,
traffic_source.medium AS meio,
traffic_source.name AS campanha,
SUM(CASE WHEN event_name = 'session_start' THEN 1 ELSE 0 END) AS sessoes_iniciadas,
COUNT(DISTINCT user_pseudo_id) AS total_usuarios,
SUM(CASE WHEN event_name = 'purchase' THEN 1 ELSE 0 END) AS total_compras,
SUM(CASE WHEN event_name = 'purchase' THEN (SELECT value.double_value FROM UNNEST(event_params) WHERE key = 'value') ELSE 0 END) AS receita_total
FROM
`seu-projeto-gcp.seu-dataset-ga4.events_*`
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 1 MONTH)) AND FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))
GROUP BY 1, 2, 3, 4
ORDER BY data DESC, receita_total DESC;
- Ferramenta: Google BigQuery Console ou
google-cloud-bigquery library em Python.
Transformação e Agregação com Python/Pandas:
- Ação: Carregar os dados extraídos para um DataFrame Pandas, calcular métricas derivadas (e.g., Taxa de Conversão, Receita por Sessão) e agrupar por canal/campanha.
- Exemplo de Código Python:
import pandas as pd
# df_raw é o DataFrame resultante da query BigQuery
df_processed = df_raw.copy()
df_processed['taxa_conversao_compra'] = (df_processed['total_compras'] / df_processed['sessoes_iniciadas']) * 100
df_processed['receita_por_sessao'] = df_processed['receita_total'] / df_processed['sessoes_iniciadas']
# Agregação para o relatório final
df_report = df_processed.groupby(['fonte', 'meio']).agg(
total_sessoes=('sessoes_iniciadas', 'sum'),
total_compras=('total_compras', 'sum'),
receita_total=('receita_total', 'sum')
).reset_index()
df_report['taxa_conversao_compra'] = (df_report['total_compras'] / df_report['total_sessoes']) * 100
- Ferramenta: Python com biblioteca Pandas.
Geração e Atualização de Relatório em Planilha Google Sheets:
- Ação: Utilizar a API do Google Sheets (via
gspread ou pygsheets) para atualizar abas específicas em uma planilha pré-formatada com os dados processados.
- Exemplo de Código Python:
import gspread
# gc é o cliente gspread autenticado
spreadsheet_name = "Relatório Mensal GA4 - MAI2024"
sh = gc.open(spreadsheet_name)
worksheet = sh.worksheet("Performance por Canal") # Nome da aba no Sheets
# Limpar e atualizar a aba
worksheet.clear()
worksheet.update([df_report.columns.values.tolist()] + df_report.values.tolist(), 'A1')
- Ferramenta: Python com biblioteca
gspread.
Disparo de E-mail com Resumo Executivo:
- Ação: Enviar um e-mail com um resumo dos principais insights e um link para o relatório atualizado.
- Exemplo de Código Python:
import smtplib
from email.mime.text import MIMEText
sender_email = "automatizacao@suaempresa.com"
receiver_email = "gerencia@suaempresa.com"
password = "SUA_SENHA_APP" # Ou token de autenticação
msg = MIMEText(f"""
Prezado(a) Gerente,
O relatório mensal de performance do GA4 para MAI/2024 foi atualizado.
Destaques:
- Receita Total: R$ {df_report['receita_total'].sum():,.2f}
- Taxa de Conversão Média: {df_report['taxa_conversao_compra'].mean():.2f}%
Acesse o relatório completo aqui: [Link para o Google Sheet]
Atenciosamente,
Seu Time de Analytics Automatizado
""")
msg['Subject'] = "Relatório Mensal GA4 - MAI/2024 Disponível"
msg['From'] = sender_email
msg['To'] = receiver_email
with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp:
smtp.login(sender_email, password)
smtp.send_message(msg)
- Ferramenta: Python com biblioteca
smtplib.
Workflow 2: Automação de Dashboard de Monitoramento de Tráfego em Tempo Próximo Real com GA4 Data API e Looker Studio
Este workflow foca na extração de dados do GA4 Data API para monitoramento quase em tempo real, disponibilizando-os para um dashboard dinâmico no Looker Studio.
Configuração de Credenciais GA4 Data API:
- Ação: Garantir que a Service Account criada no GCP tenha o papel
Google Analytics Data API Viewer.
- Exemplo: O arquivo
key.json da Service Account deve estar acessível ao ambiente de execução do script.
- Ferramenta: Google Cloud IAM & Admin.
Extração de Dados com GA4 Data API (Python):
- Ação: Desenvolver um script Python para buscar métricas e dimensões específicas do GA4 Data API. Para "quase em tempo real", a janela de dados é curta (e.g., últimos 30 minutos, último dia).
- Exemplo de Código Python:
from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import RunReportRequest, Dimension, Metric, DateRange
client = BetaAnalyticsDataClient.from_service_account_json('path/to/your/key.json')
property_id = 'SEU_GA4_PROPERTY_ID' # Ex: '123456789'
request = RunReportRequest(
property=f"properties/{property_id}",
dimensions=[
Dimension(name="date"),
Dimension(name="sessionSource"),
Dimension(name="sessionMedium")
],
metrics=[
Metric(name="sessions"),
Metric(name="conversions"),
Metric(name="totalRevenue")
],
date_ranges=[DateRange(start_date="1daysAgo", end_date="today")]
)
response = client.run_report(request)
# Processar a resposta para um DataFrame Pandas
data_rows = []
for row in response.rows:
row_data = {
"data": row.dimension_values[0].value,
"fonte": row.dimension_values[1].value,
"meio": row.dimension_values[2].value,
"sessoes": int(row.metric_values[0].value),
"conversoes": int(row.metric_values[1].value),
"receita": float(row.metric_values[2].value)
}
data_rows.append(row_data)
df_realtime = pd.DataFrame(data_rows)
- Ferramenta: Python com biblioteca
google-analytics-data.
Publicação de Dados para Dashboard Dinâmico (Looker Studio):
- Ação: Armazenar os dados extraídos em uma tabela BigQuery para que o Looker Studio possa consumi-los. O Looker Studio pode se conectar diretamente ao GA4 Data API, mas para transformações ou enriquecimento, o BigQuery é preferível.
- Exemplo de Código Python (continuando do passo 2):
from google.cloud import bigquery
bq_client = bigquery.Client.from_service_account_json('path/to/your/key.json')
table_id = "seu-projeto-gcp.seu-dataset-ga4.realtime_traffic_data"
# Configurar esquema da tabela BigQuery
job_config = bigquery.LoadJobConfig(
schema=[
bigquery.SchemaField("data", "DATE"),
bigquery.SchemaField("fonte", "STRING"),
bigquery.SchemaField("meio", "STRING"),
bigquery.SchemaField("sessoes", "INTEGER"),
bigquery.SchemaField("conversoes", "INTEGER"),
bigquery.SchemaField("receita", "FLOAT"),
],
write_disposition="WRITE_TRUNCATE", # Sobrescrever a cada atualização
)
# Carregar DataFrame para BigQuery
job = bq_client.load_table_from_dataframe(df_realtime, table_id, job_config=job_config)
job.result() # Esperar o job completar
print(f"Dados carregados para {table_id}")
- Ferramenta: Python com biblioteca
google-cloud-bigquery e Looker Studio.
Agendamento da Extração/Atualização:
- Ação: Configurar o script Python para rodar periodicamente (e.g., a cada 15 ou 30 minutos) usando Google Cloud Functions e Cloud Scheduler.
- Exemplo: Uma Cloud Function acionada por HTTP, que é chamada por um job do Cloud Scheduler.
- Ferramenta: Google Cloud Functions, Google Cloud Scheduler.
Templates
Template de Query BigQuery para Análise de Conversão por Canal
SELECT
FORMAT_DATE('%Y-%m-%d', PARSE_DATE('%Y%m%d', event_date)) AS data_referencia,
traffic_source.source AS fonte_trafego,
traffic_source.medium AS meio_trafego,
traffic_source.name AS nome_campanha,
COUNT(DISTINCT user_pseudo_id) AS total_usuarios_unicos,
SUM(CASE WHEN event_name = 'session_start' THEN 1 ELSE 0 END) AS sessoes_iniciadas,
SUM(CASE WHEN event_name = 'add_to_cart' THEN 1 ELSE 0 END) AS itens_adicionados_carrinho,
SUM(CASE WHEN event_name = 'purchase' THEN 1 ELSE 0 END) AS compras_efetuadas,
SUM(CASE WHEN event_name = 'purchase' THEN (SELECT value.double_value FROM UNNEST(event_params) WHERE key = 'value') ELSE 0 END) AS receita_total_compra,
SUM(CASE WHEN event_name = 'generate_lead' THEN 1 ELSE 0 END) AS leads_gerados
FROM
`seu-projeto-gcp.seu-dataset-ga4.events_*`
WHERE
_TABLE_SUFFIX BETWEEN '20240501' AND '20240531'
GROUP BY 1, 2, 3, 4
ORDER BY data_referencia DESC, receita_total_compra DESC;
Template de Estrutura de Relatório Mensal de E-commerce (Google Sheets)
Relatório de Performance Digital - MAI/2024
Visão Geral
Sessões: 485.678 (+12% vs Abr/24)
Usuários: 398.123 (+10% vs Abr/24)
Receita Total: R$ 387.900 (+18% vs Abr/24)
Compras Efetuadas: 7.210 (+15% vs Abr/24)
Taxa de Conversão (Compras/Sessões): 1.48% (+0.04 pp vs Abr/24)
Custo por Aquisição (Compras): R$ 53.79 (excluindo custos de mídia não integrada)
Performance por Canal (Top 5 em Receita)
| Canal (Fonte/Meio) | Sessões | Receita Total | Compras | Taxa Conv. |
|--------------------|---------|---------------|---------|------------|
| google / cpc | 120.000 | R$ 150.000 | 3.000 | 2.50% |
| google / organic | 150.000 | R$ 120.000 | 1.800 | 1.20% |
| email / newsletter | 50.000 | R$ 45.000 | 900 | 1.80% |
| (direct) / (none) | 40.000 | R$ 30.000 | 400 | 1.00% |
| facebook / cpc | 30.000 | R$ 25.000 | 500 | 1.67% |
Destaques e Próximos Passos
- A campanha de Dia das Mães via Google Ads (google / cpc) foi a principal alavanca da receita em MAI/24, gerando R$ 85.000,00 especificamente.
- Houve uma queda de 5% no tráfego orgânico proveniente de buscas por "promoções de verão" em relação ao mês anterior, apesar do aumento geral. Investigar sazonalidade ou ranqueamento de palavras-chave específicas.
- Próximo passo: Testar segmentação de público semelhante para campanhas de display com foco em usuários que abandonaram o carrinho, visando aumentar a taxa de conversão em 0.2 pp.
- Aumentar o budget para campanhas de e-mail marketing, que apresentaram um ROAS de 4.5x (assumindo custo de R$10.000 para email).
Checklist
Métricas de Referência
| Métrica |
Benchmark (E-commerce) |
Meta (E-commerce) |
| Taxa de Conversão (Compras) |
1.5% - 2.5% |
> 2.8% |
| Receita por Usuário |
R$ 30 - R$ 60 |
> R$ 70 |
| ROAS (Retorno sobre Investimento em Anúncios) |
3.0x - 5.0x |
|
1---2name: reporting-automation3description: Reporting Automation — Skill especializada para automação de relatórios de marketing e análise de dados.4license: MIT5---67# Reporting Automation89Esta skill capacita o Claude Code a automatizar a extração, transformação e visualização de dados de marketing digital, com foco em Google Analytics 4, para a geração eficiente de relatórios periódicos e dashboards dinâmicos.1011---1213## Keywords1415Google Analytics 4, GA4 API, BigQuery Export, Looker Studio, Python, Pandas, SQL, ETL, Automação de Relatórios, Dashboards Dinâmicos, Atribuição de Marketing, Métricas de Performance, Google Cloud Functions, Cloud Scheduler, Data Studio.1617---1819## Quick Start20211. **Configurar GA4 BigQuery Export:** Habilitar a exportação contínua de eventos do seu Google Analytics 4 para um projeto no Google BigQuery.222. **Credenciais de Acesso:** Criar uma Service Account no Google Cloud Platform com os papéis `BigQuery Data Viewer` e `Analytics Hub Viewer` e gerar uma chave JSON.233. **Script de Extração Inicial:** Desenvolver um script Python para extrair dados brutos do BigQuery usando a biblioteca `google-cloud-bigquery`.244. **Conexão no Looker Studio:** Conectar o Looker Studio (antigo Data Studio) à tabela resultante no BigQuery ou ao Google Analytics 4 Data API.255. **Agendamento da Automação:** Agendar a execução do script Python em ambiente serverless, como Google Cloud Functions, utilizando o Cloud Scheduler para periodicidade diária.2627---2829## Core Workflows3031### Workflow 1: Automação de Relatório Mensal de Performance de Campanhas GA4 para Google Sheets3233Este workflow detalha a criação de um processo automatizado para extrair dados de performance de campanhas do Google Analytics 4 via BigQuery, processá-los com Python e atualizar um relatório no Google Sheets, com envio de e-mail.34351. **Extração de Dados Brutos via BigQuery Export:**36 * **Ação:** Escrever e executar uma query SQL no BigQuery para extrair métricas de campanhas do GA4 para o mês anterior.37 * **Exemplo de Query SQL:**38 ```sql39 SELECT40 FORMAT_DATE('%Y-%m-%d', PARSE_DATE('%Y%m%d', event_date)) AS data,41 traffic_source.source AS fonte,42 traffic_source.medium AS meio,43 traffic_source.name AS campanha,44 SUM(CASE WHEN event_name = 'session_start' THEN 1 ELSE 0 END) AS sessoes_iniciadas,45 COUNT(DISTINCT user_pseudo_id) AS total_usuarios,46 SUM(CASE WHEN event_name = 'purchase' THEN 1 ELSE 0 END) AS total_compras,47 SUM(CASE WHEN event_name = 'purchase' THEN (SELECT value.double_value FROM UNNEST(event_params) WHERE key = 'value') ELSE 0 END) AS receita_total48 FROM49 `seu-projeto-gcp.seu-dataset-ga4.events_*`50 WHERE51 _TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 1 MONTH)) AND FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))52 GROUP BY 1, 2, 3, 453 ORDER BY data DESC, receita_total DESC;54 ```55 * **Ferramenta:** Google BigQuery Console ou `google-cloud-bigquery` library em Python.56572. **Transformação e Agregação com Python/Pandas:**58 * **Ação:** Carregar os dados extraídos para um DataFrame Pandas, calcular métricas derivadas (e.g., Taxa de Conversão, Receita por Sessão) e agrupar por canal/campanha.59 * **Exemplo de Código Python:**60 ```python61 import pandas as pd62 # df_raw é o DataFrame resultante da query BigQuery63 df_processed = df_raw.copy()64 df_processed['taxa_conversao_compra'] = (df_processed['total_compras'] / df_processed['sessoes_iniciadas']) * 10065 df_processed['receita_por_sessao'] = df_processed['receita_total'] / df_processed['sessoes_iniciadas']66 67 # Agregação para o relatório final68 df_report = df_processed.groupby(['fonte', 'meio']).agg(69 total_sessoes=('sessoes_iniciadas', 'sum'),70 total_compras=('total_compras', 'sum'),71 receita_total=('receita_total', 'sum')72 ).reset_index()73 df_report['taxa_conversao_compra'] = (df_report['total_compras'] / df_report['total_sessoes']) * 10074 ```75 * **Ferramenta:** Python com biblioteca Pandas.76773. **Geração e Atualização de Relatório em Planilha Google Sheets:**78 * **Ação:** Utilizar a API do Google Sheets (via `gspread` ou `pygsheets`) para atualizar abas específicas em uma planilha pré-formatada com os dados processados.79 * **Exemplo de Código Python:**80 ```python81 import gspread82 # gc é o cliente gspread autenticado83 spreadsheet_name = "Relatório Mensal GA4 - MAI2024"84 sh = gc.open(spreadsheet_name)85 worksheet = sh.worksheet("Performance por Canal") # Nome da aba no Sheets86 87 # Limpar e atualizar a aba88 worksheet.clear()89 worksheet.update([df_report.columns.values.tolist()] + df_report.values.tolist(), 'A1')90 ```91 * **Ferramenta:** Python com biblioteca `gspread`.92934. **Disparo de E-mail com Resumo Executivo:**94 * **Ação:** Enviar um e-mail com um resumo dos principais insights e um link para o relatório atualizado.95 * **Exemplo de Código Python:**96 ```python97 import smtplib98 from email.mime.text import MIMEText99 100 sender_email = "automatizacao@suaempresa.com"101 receiver_email = "gerencia@suaempresa.com"102 password = "SUA_SENHA_APP" # Ou token de autenticação103 104 msg = MIMEText(f"""105 Prezado(a) Gerente,106 107 O relatório mensal de performance do GA4 para MAI/2024 foi atualizado.108 109 Destaques:110 - Receita Total: R$ {df_report['receita_total'].sum():,.2f}111 - Taxa de Conversão Média: {df_report['taxa_conversao_compra'].mean():.2f}%112 113 Acesse o relatório completo aqui: [Link para o Google Sheet]114 115 Atenciosamente,116 Seu Time de Analytics Automatizado117 """)118 msg['Subject'] = "Relatório Mensal GA4 - MAI/2024 Disponível"119 msg['From'] = sender_email120 msg['To'] = receiver_email121 122 with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp:123 smtp.login(sender_email, password)124 smtp.send_message(msg)125 ```126 * **Ferramenta:** Python com biblioteca `smtplib`.127128### Workflow 2: Automação de Dashboard de Monitoramento de Tráfego em Tempo Próximo Real com GA4 Data API e Looker Studio129130Este workflow foca na extração de dados do GA4 Data API para monitoramento quase em tempo real, disponibilizando-os para um dashboard dinâmico no Looker Studio.1311321. **Configuração de Credenciais GA4 Data API:**133 * **Ação:** Garantir que a Service Account criada no GCP tenha o papel `Google Analytics Data API Viewer`.134 * **Exemplo:** O arquivo `key.json` da Service Account deve estar acessível ao ambiente de execução do script.135 * **Ferramenta:** Google Cloud IAM & Admin.1361372. **Extração de Dados com GA4 Data API (Python):**138 * **Ação:** Desenvolver um script Python para buscar métricas e dimensões específicas do GA4 Data API. Para "quase em tempo real", a janela de dados é curta (e.g., últimos 30 minutos, último dia).139 * **Exemplo de Código Python:**140 ```python141 from google.analytics.data_v1beta import BetaAnalyticsDataClient142 from google.analytics.data_v1beta.types import RunReportRequest, Dimension, Metric, DateRange143 144 client = BetaAnalyticsDataClient.from_service_account_json('path/to/your/key.json')145 property_id = 'SEU_GA4_PROPERTY_ID' # Ex: '123456789'146 147 request = RunReportRequest(148 property=f"properties/{property_id}",149 dimensions=[150 Dimension(name="date"),151 Dimension(name="sessionSource"),152 Dimension(name="sessionMedium")153 ],154 metrics=[155 Metric(name="sessions"),156 Metric(name="conversions"),157 Metric(name="totalRevenue")158 ],159 date_ranges=[DateRange(start_date="1daysAgo", end_date="today")]160 )161 response = client.run_report(request)162 163 # Processar a resposta para um DataFrame Pandas164 data_rows = []165 for row in response.rows:166 row_data = {167 "data": row.dimension_values[0].value,168 "fonte": row.dimension_values[1].value,169 "meio": row.dimension_values[2].value,170 "sessoes": int(row.metric_values[0].value),171 "conversoes": int(row.metric_values[1].value),172 "receita": float(row.metric_values[2].value)173 }174 data_rows.append(row_data)175 df_realtime = pd.DataFrame(data_rows)176 ```177 * **Ferramenta:** Python com biblioteca `google-analytics-data`.1781793. **Publicação de Dados para Dashboard Dinâmico (Looker Studio):**180 * **Ação:** Armazenar os dados extraídos em uma tabela BigQuery para que o Looker Studio possa consumi-los. O Looker Studio pode se conectar diretamente ao GA4 Data API, mas para transformações ou enriquecimento, o BigQuery é preferível.181 * **Exemplo de Código Python (continuando do passo 2):**182 ```python183 from google.cloud import bigquery184 185 bq_client = bigquery.Client.from_service_account_json('path/to/your/key.json')186 table_id = "seu-projeto-gcp.seu-dataset-ga4.realtime_traffic_data"187 188 # Configurar esquema da tabela BigQuery189 job_config = bigquery.LoadJobConfig(190 schema=[191 bigquery.SchemaField("data", "DATE"),192 bigquery.SchemaField("fonte", "STRING"),193 bigquery.SchemaField("meio", "STRING"),194 bigquery.SchemaField("sessoes", "INTEGER"),195 bigquery.SchemaField("conversoes", "INTEGER"),196 bigquery.SchemaField("receita", "FLOAT"),197 ],198 write_disposition="WRITE_TRUNCATE", # Sobrescrever a cada atualização199 )200 201 # Carregar DataFrame para BigQuery202 job = bq_client.load_table_from_dataframe(df_realtime, table_id, job_config=job_config)203 job.result() # Esperar o job completar204 print(f"Dados carregados para {table_id}")205 ```206 * **Ferramenta:** Python com biblioteca `google-cloud-bigquery` e Looker Studio.2072084. **Agendamento da Extração/Atualização:**209 * **Ação:** Configurar o script Python para rodar periodicamente (e.g., a cada 15 ou 30 minutos) usando Google Cloud Functions e Cloud Scheduler.210 * **Exemplo:** Uma Cloud Function acionada por HTTP, que é chamada por um job do Cloud Scheduler.211 * **Ferramenta:** Google Cloud Functions, Google Cloud Scheduler.212213---214215## Templates216217### Template de Query BigQuery para Análise de Conversão por Canal218219```sql220SELECT221 FORMAT_DATE('%Y-%m-%d', PARSE_DATE('%Y%m%d', event_date)) AS data_referencia,222 traffic_source.source AS fonte_trafego,223 traffic_source.medium AS meio_trafego,224 traffic_source.name AS nome_campanha,225 COUNT(DISTINCT user_pseudo_id) AS total_usuarios_unicos,226 SUM(CASE WHEN event_name = 'session_start' THEN 1 ELSE 0 END) AS sessoes_iniciadas,227 SUM(CASE WHEN event_name = 'add_to_cart' THEN 1 ELSE 0 END) AS itens_adicionados_carrinho,228 SUM(CASE WHEN event_name = 'purchase' THEN 1 ELSE 0 END) AS compras_efetuadas,229 SUM(CASE WHEN event_name = 'purchase' THEN (SELECT value.double_value FROM UNNEST(event_params) WHERE key = 'value') ELSE 0 END) AS receita_total_compra,230 SUM(CASE WHEN event_name = 'generate_lead' THEN 1 ELSE 0 END) AS leads_gerados231FROM232 `seu-projeto-gcp.seu-dataset-ga4.events_*`233WHERE234 _TABLE_SUFFIX BETWEEN '20240501' AND '20240531'235GROUP BY 1, 2, 3, 4236ORDER BY data_referencia DESC, receita_total_compra DESC;237```238239### Template de Estrutura de Relatório Mensal de E-commerce (Google Sheets)240241```242Relatório de Performance Digital - MAI/2024243244Visão Geral245Sessões: 485.678 (+12% vs Abr/24)246Usuários: 398.123 (+10% vs Abr/24)247Receita Total: R$ 387.900 (+18% vs Abr/24)248Compras Efetuadas: 7.210 (+15% vs Abr/24)249Taxa de Conversão (Compras/Sessões): 1.48% (+0.04 pp vs Abr/24)250Custo por Aquisição (Compras): R$ 53.79 (excluindo custos de mídia não integrada)251252Performance por Canal (Top 5 em Receita)253| Canal (Fonte/Meio) | Sessões | Receita Total | Compras | Taxa Conv. |254|--------------------|---------|---------------|---------|------------|255| google / cpc | 120.000 | R$ 150.000 | 3.000 | 2.50% |256| google / organic | 150.000 | R$ 120.000 | 1.800 | 1.20% |257| email / newsletter | 50.000 | R$ 45.000 | 900 | 1.80% |258| (direct) / (none) | 40.000 | R$ 30.000 | 400 | 1.00% |259| facebook / cpc | 30.000 | R$ 25.000 | 500 | 1.67% |260261Destaques e Próximos Passos262- A campanha de Dia das Mães via Google Ads (google / cpc) foi a principal alavanca da receita em MAI/24, gerando R$ 85.000,00 especificamente.263- Houve uma queda de 5% no tráfego orgânico proveniente de buscas por "promoções de verão" em relação ao mês anterior, apesar do aumento geral. Investigar sazonalidade ou ranqueamento de palavras-chave específicas.264- Próximo passo: Testar segmentação de público semelhante para campanhas de display com foco em usuários que abandonaram o carrinho, visando aumentar a taxa de conversão em 0.2 pp.265- Aumentar o budget para campanhas de e-mail marketing, que apresentaram um ROAS de 4.5x (assumindo custo de R$10.000 para email).266```267268---269270## Checklist271272- [x] Conectar o Google Analytics 4 ao BigQuery para exportação contínua de eventos.273- [x] Criar e configurar Service Accounts no GCP com permissões adequadas para GA4 Data API e BigQuery.274- [x] Desenvolver scripts Python robustos para extração de dados (BigQuery ou GA4 Data API).275- [x] Implementar tratamento de erros (ex: retentativas, logging) nos scripts de automação.276- [x] Configurar o agendamento dos scripts (e.g., Cloud Functions + Cloud Scheduler, ou Airflow/Composer).277- [x] Desenvolver ou atualizar dashboards no Looker Studio/Power BI para consumir as fontes de dados automatizadas.278- [x] Validar a integridade e consistência dos dados automatizados versus a interface do GA4.279- [x] Configurar alertas automáticos para anomalias em métricas chave (ex: queda de receita > 15% em 24h).280- [x] Documentar o fluxo completo de ETL (Extração, Transformação, Carga) e a lógica de qualquer métrica customizada.281- [x] Automatizar o envio de relatórios sumários ou notificações por e-mail/Slack.282283---284285## Métricas de Referência286287| Métrica | Benchmark (E-commerce) | Meta (E-commerce) |288|------------------------------|------------------------|-------------------|289| Taxa de Conversão (Compras) | 1.5% - 2.5% | > 2.8% |290| Receita por Usuário | R$ 30 - R$ 60 | > R$ 70 |291| ROAS (Retorno sobre Investimento em Anúncios) | 3.0x - 5.0x