Análise & Tracking
/
13 min de leitura
/
Atualizado mai 2026
GA4: Setup Completo pra Quem Usa Mídia Paga
O setup mínimo viável de GA4 pra quem precisa decidir budget de Google Ads e Meta Ads na segunda-feira de manhã. Eventos custom, Enhanced Conversions e BigQuery do jeito que faço em conta real.
O que você vai entender lendo isso
- GA4 default report é fraco. Pra mídia paga, o setup que importa é evento custom mapeado pro funil, conversão importada no Google Ads e Enhanced Conversions ligado. Sem isso, GA4 vira gráfico bonito que não decide nada.
- Discrepância entre Pixel Meta e GA4 server-side fica em 15-40% se mal configurado. Calibre antes de comparar painel. GA4 quase sempre tem o número mais baixo e mais real.
- Modelo data-driven exige volume (300+ conversões/mês por property). Abaixo disso, o GA4 cai pra last-click disfarçado. Retenção default de 14 meses precisa virar 14 meses + BigQuery export se você quer atribuição séria.
Configurei GA4 em mais de 40 contas nos últimos 3 anos, entre e-commerce de moda, SaaS B2B, edtech e serviço local. Posso dizer com tranquilidade: GA4 é confuso, a curva de aprendizado é brutal e o Universal Analytics era melhor pra muita coisa. Mas é o que temos, e quem opera mídia paga sem GA4 decente tá voando cego em 2026.
Esse post é o setup completo que faço quando entro numa conta nova. Não é o setup que vem no curso de 4 horas do YouTube com “GA4 do zero ao avançado”. É o setup mínimo viável pra quem precisa decidir budget de Google Ads e Meta Ads na segunda-feira de manhã.
Não acredito em GA4 default. Acredito em GA4 com eventos custom mapeados pra funil de mídia paga, conversão importada certo no Google Ads e Enhanced Conversions ligado com server-side. Resto é decoração.
Por que GA4 importa pra quem opera mídia paga?
Resumo rápido: GA4 é a fonte de verdade neutra entre Google Ads, Meta Ads, TikTok Ads e SEO. Sem ele, você compara painel de plataforma com painel de plataforma e cada um superestima atribuição. Segundo a documentação oficial do Google Analytics, GA4 usa um modelo de eventos unificado que permite comparação cross-channel real, diferente do UA que era session-based.
O ponto prático é simples. Meta Ads diz que gerou 100 conversões. Google Ads diz que gerou 80. Painel do site mostra 110 vendas. Quem mente? Todos mentem um pouco. Meta atribui por view-through de 1 dia mesmo sem clique. Google atribui por data-driven inflado. GA4 atribui por click do último canal não-direto. Você precisa de um árbitro, e GA4 é o mais imparcial dos três.
Outro motivo: audiências. GA4 permite criar segmentos comportamentais (usuários que viram página de pricing e não converteram, por exemplo) e exportar pro Google Ads como audience de remarketing. Sem GA4, você fica preso no remarketing de visitante puro, que tem qualidade de lead bem pior. Já escrevi sobre gestão de tráfego pago e o ponto recorrente é esse: dado bom é o que separa quem escala de quem queima.
Como criar property GA4 do zero (passo a passo)?
Resumo rápido: Property GA4 é criada dentro de uma Account do Google Analytics. Cada Account suporta até 100 properties no plano gratuito. Pra mídia paga, recomendo 1 property por domínio web e, se tiver app, 1 stream de app dentro da mesma property pra rodar cross-platform. O guia de setup do Google Analytics cobre o passo técnico, mas pula a parte de planejamento.
Passo a passo que sigo:
- Acesso analytics.google.com com a conta Google que tem permissão administrativa do site (não use conta pessoal, use email corporativo ou dedicado de marketing).
- Crio Account com nome da empresa (ex: “Cliente XYZ”). Account é o nível mais alto, agrupa properties.
- Dentro da Account, crio Property com nome do domínio (ex: “clientexyz.com.br – Web”). Defino fuso horário pra Brasília (GMT-3) e moeda pra BRL. Errar fuso horário é o erro mais comum em conta brasileira; depois disso, todo dado de tempo fica deslocado 3-4 horas.
- Crio Data Stream tipo Web, colando URL do site. O Google gera um Measurement ID (formato G-XXXXXXX). Esse ID vai no GTM ou direto no head do site.
- Ativo Enhanced Measurement (default vem ligado). Isso captura page_view, scroll, outbound_click, site_search, video_engagement e file_download automaticamente.
- Em Admin > Data Settings > Data Retention, mudo de 2 meses pra 14 meses (máximo no plano gratuito). Default de 2 meses é uma pegadinha do Google. Se você não mudar, perde histórico longo de atribuição.
- Conecto property com Google Ads em Admin > Product Links > Google Ads Links. Isso libera audiência GA4 pro Ads e importação de conversão.
GA4 default não é setup de mídia paga. É setup de tráfego genérico. Quem opera anúncio precisa mapear eventos custom pra cada etapa do funil (lead, view_item, add_to_cart, begin_checkout, purchase) e marcar como Key Event antes de importar pro Google Ads. Sem isso, Smart Bidding otimiza por sinal errado e queima budget.
Esse passo 6 é crítico. A retenção default de 14 meses ainda é chata pra quem trabalha com ciclo de venda longo (B2B SaaS, imóvel, educação). Pra essas verticais, recomendo ligar BigQuery export desde o dia 1 e guardar dado raw pra sempre. BigQuery custa pouco em volume baixo-médio e resolve o problema de retenção pra sempre. Quem fica só no GA4 interface tem teto de 14 meses, ponto.
Quais eventos default vir já configurados (e quais você precisa criar)?
Resumo rápido: GA4 vem com 9 eventos automáticos (page_view, session_start, first_visit, user_engagement, scroll, click outbound, view_search_results, video, file_download). Pra mídia paga, isso não basta. Você precisa criar pelo menos mais 5 eventos custom mapeados ao funil: form_submit qualificado, view_pricing, add_to_cart, begin_checkout e purchase com valor. O blog do Simo Ahava tem o repositório técnico mais completo sobre eventos GTM/GA4 que conheço.
Eventos automáticos GA4 são úteis pra análise comportamental, mas péssimos pra otimização de mídia paga. Veja por quê:
page_view é interessante pra entender tráfego mas inútil pra otimizar campanha. Algoritmo de Google Ads otimizando por page_view enche teu funil de quem só rola Reels e abre tudo.
scroll dispara em 90% de scroll, que é tarde demais. Crio scroll_50 e scroll_75 custom pra ter sinal mais cedo.
click só rastreia outbound. Pra clicks internos importantes (botão WhatsApp, botão CTA específico), precisa criar custom click event via GTM.
Pra mídia paga, esses são os eventos custom mínimos que configuro em toda conta:
- generate_lead: form_submit qualificado, com email validado e não-descartável. Disparo via GTM no submit success do form, com user_data hash (email, phone) pra Enhanced Conversions.
- view_item (e-commerce): visualização de produto com value, currency, item_id e item_category.
- add_to_cart: adicionou produto ao carrinho. Importante pra remarketing dinâmico.
- begin_checkout: iniciou checkout. Esse é o evento que mais correlaciona com purchase em e-commerce.
- purchase: comprou. Manda transaction_id, value, currency, items array. Esse é o evento de conversão principal pra otimização de Google Ads e Meta Ads.
Pra SaaS, troco o conjunto de e-commerce por sign_up, start_trial e qualified_trial (custom event que disparo via API quando o usuário completa onboarding ativando uma ação core do produto). Detalhei isso no post sobre conversion tracking no Google Ads com GTM, que explica o disparo prático via Tag Manager.
Como configurar eventos custom de conversão (lead, purchase, scroll, video play)?
Resumo rápido: Eventos custom em GA4 são criados via Google Tag Manager (recomendado) ou via código direto no site. Depois de criados, você marca o evento como “Key Event” (novo nome do Conversion em GA4 pós-2024) no Admin > Events > Mark as Key Event. Só Key Events são importáveis pro Google Ads. O blog do Charles Farina tem walkthroughs práticos disso, incluindo armadilhas comuns de naming.
Fluxo prático:
- Em GTM, crio uma Tag tipo Google Analytics: GA4 Event.
- Defino Measurement ID (variable G-XXXXXXX).
- Defino Event Name (snake_case obrigatório: generate_lead, purchase, qualified_trial). Nunca uso espaço, hífen ou camelCase.
- Adiciono Event Parameters: value, currency, transaction_id, user_data (objeto com email_hash, phone_hash, address_hash pra Enhanced Conversions).
- Conecto a um Trigger (form submit success, button click específico, dataLayer event do checkout).
- Salvo, publico GTM, valido no DebugView do GA4.
- Depois que vejo o evento chegando em Realtime e DebugView por 24-48h, vou em Admin > Events e marco como Key Event.
Naming convention que sigo: uso os event names recomendados pelo Google sempre que aplicável (generate_lead, purchase, sign_up, view_item, add_to_cart, begin_checkout). Eventos custom 100% proprietários ficam com prefixo da empresa (ex: xyz_calculator_used). Isso evita conflito com Enhanced Measurement e facilita parsing em BigQuery.
Erro recorrente: pessoal cria evento com nome “Lead” ou “Compra” em português, com maiúscula. GA4 aceita, mas Google Ads quebra na importação, Enhanced Conversions não casa, e BigQuery vira um caos. Use snake_case minúsculo sempre. É chato, é técnico, e é o que funciona.
Como conectar GA4 com Google Ads e importar conversões?
Resumo rápido: Conexão GA4-Google Ads se faz em GA4 Admin > Product Links > Google Ads Links. Depois, importa-se a conversão em Google Ads > Goals > Conversions > New Conversion Action > Import > Google Analytics 4 properties. Segundo a documentação do Google Ads, conversões importadas de GA4 demoram 24-48h pra começar a popular dados.
Setup em 4 passos:
- GA4 Admin > Product Links > Google Ads Links > Link. Seleciona conta Google Ads, ativa “Enable Personalized Advertising” (libera audiência GA4 pro Ads) e “Enable auto-tagging” (passa GCLID automaticamente).
- Em Google Ads, vou em Goals > Conversions > New Conversion Action > Import > Google Analytics 4 properties.
- Seleciono os Key Events que quero importar (geralmente purchase, generate_lead, qualified_trial dependendo do tipo de negócio).
- Pra cada conversão importada, defino: Conversion Category (Lead, Purchase, Sign-up), Conversion Window (30 dias default, mudo pra 90 em ciclo longo), Count (One pra lead, Every pra compra recorrente), Attribution Model (data-driven se tem volume, last-click se não tem).
Pergunta que sempre cai: importar conversão do GA4 ou usar Google Ads conversion tag nativa direto via GTM? Resposta curta: depende do volume e do tipo de negócio. Pra e-commerce com 200+ vendas/mês, uso tag nativa Google Ads (mais rápido reportar, melhor pra Smart Bidding). Pra lead gen ou volume menor, uso GA4 import (uma fonte só de verdade, evita discrepância de número entre painel).
Setup ruim mata performance. Vi conta com mesmo evento contado 2x (uma vez nativo, uma vez importado), inflando conversão em 80% e fazendo a campanha parecer ótima até o cliente cobrar receita real. Pra entender atribuição melhor, leia sobre como funciona o Google Ads antes de mexer em conversão.
Como configurar Enhanced Conversions?
Resumo rápido: Enhanced Conversions é o recurso do Google que recupera dado de conversão perdido por bloqueio de cookie, ITP do Safari e adblockers. Envia email/telefone hash pro Google, que cruza com a base logada Google do usuário e atribui a conversão de volta. Segundo a documentação oficial, contas com Enhanced Conversions ligado recuperam 5-25% de conversão fantasma, dependendo de vertical.
Setup tem 2 caminhos: via Google Tag (mais simples, menos completo) ou via Google Ads API/server-side (completo, exige dev). Pra 90% dos casos, faço via Google Tag.
Passo a passo via GTM:
- Em Google Ads > Conversions, abro a conversion action e ativo Enhanced Conversions for Web.
- Seleciono Google Tag Manager como método.
- Em GTM, na tag GA4 Event de generate_lead ou purchase, adiciono user_data parameter como objeto contendo: sha256_email_address (email do usuário hashado SHA-256), sha256_phone_number (telefone hashado), address (nome, cidade, estado, CEP hashado).
- Hashing tem que ser SHA-256 do email em lowercase, sem espaço. Existe variável GTM custom JavaScript que faz isso. Não passa email em plaintext nunca, viola LGPD e Google Ads bloqueia.
- Salvo, publico GTM, espera 24-48h pra Google Ads diagnosticar e mostrar status “Recording” em Enhanced Conversions setup.
Enhanced Conversions é a coisa de maior ROI técnico que vi nos últimos 2 anos. Tempo de implementação de 2-4 horas, ganho de 5-25% de conversão atribuída, sem custo adicional. É proibido não ligar em conta de mídia paga em 2026.
Pra Meta, o equivalente é Conversions API + Advanced Matching, que funciona igual: hash de email/telefone enviado server-side. Cobri o passo a passo de Meta no post sobre como funciona o Meta Ads.
Como integrar Meta Ads no GA4 (UTMs e API)?
Resumo rápido: Meta Ads não tem integração nativa com GA4 (Google não vai entregar isso de graça). A integração é feita 100% via UTM parameter padronizado e, opcionalmente, via Measurement Protocol pra mandar evento server-side direto pro GA4. UTM bem feito resolve 95% dos casos. Segundo a Search Engine Land, falha de UTM é a causa #1 de discrepância de atribuição entre Meta e GA4.
UTM padrão que uso em toda campanha Meta:
- utm_source: facebook ou instagram (depende de placement principal)
- utm_medium: paid_social ou cpc (consistência importa, escolhe um e mantém pra sempre)
- utm_campaign: nome da campanha (ex: 2026-q2-blackfriday-prospect)
- utm_content: nome do criativo ou ad set (ex: video-15s-femalemoms-25-40)
- utm_term: variação ou ângulo do criativo
Crio template UTM no Meta Ads Manager > Settings > URL Parameters, com placeholder dinâmico que pega ID da campanha automaticamente: utm_campaign={{campaign.name}}&utm_content={{ad.name}}. Isso garante consistência sem manual.
Integração avançada: mandar evento de purchase do site direto pro Meta via Conversions API e pro GA4 via Measurement Protocol no mesmo trigger. Faço isso em conta acima de R$50k/mês de mídia, onde diferença de 10-15% de atribuição vira dinheiro real. Não vale pra conta pequena, complexidade não compensa.
Quando comparar painel Meta com GA4, espera discrepância de 15-40%. GA4 sempre vai ter o número menor porque atribui por last-click não-direto, enquanto Meta atribui por view-through 1 dia + click 7 dias. Os dois tão certos, só medem coisas diferentes. Já cobri isso no post de ROAS Meta Ads.
Audiências GA4 pra remarketing: como criar e ativar?
Resumo rápido: Audiências GA4 são segmentos comportamentais criados em Admin > Audiences. Podem ser exportadas pro Google Ads automaticamente (se Google Ads Link tá ativo) e usadas em remarketing display, YouTube, search RLSA e Performance Max. Pra Meta não dá pra exportar audiência GA4 direto, apenas via integração third-party tipo Segment. O guia oficial de Audiences documenta as condições e operadores.
Stack de audiência que uso em e-commerce:
- Visitantes de pricing/produto não-convertedores: usuários que visitaram página de pricing ou produto principal nos últimos 30 dias e não dispararam purchase. Audiência mais valiosa pra remarketing search RLSA.
- Carrinho abandonado: disparou add_to_cart mas não begin_checkout, últimos 14 dias. Pra display dinâmico e Performance Max.
- Checkout abandonado: disparou begin_checkout mas não purchase, últimos 7 dias. Audiência de altíssima intenção, bid agressivo.
- Compradores recentes: disparou purchase nos últimos 30 dias. Exclusão (não pagar pra impactar) e/ou cross-sell.
- Usuários engajados: scroll_75 + time_on_page > 60s + 2+ páginas, últimos 14 dias. Pra topo de funil reaquecido.
Audiência leva 24-48h pra popular depois de criada. Tamanho mínimo pra ativação em Google Ads é 100 usuários ativos pra search, 1.000 pra display/YouTube. Abaixo disso, GA4 cria mas Ads não consegue usar.
Erro comum: criar 30 audiências de uma vez. Não vale. Comece com 5-7 que listei acima, valida volume e performance, depois expande. Audiência mal definida (tipo “usuários que clicaram qualquer botão”) gera lista enorme mas inútil. Pra Performance Max, audiência GA4 vira sinal pra otimização, não targeting estrito. Já escrevi sobre Performance Max no Google Ads e o papel de audience signal.
Como interpretar Modelo de Atribuição Data-Driven?
Resumo rápido: Data-Driven Attribution (DDA) é o modelo default do GA4 desde 2023. Usa machine learning pra distribuir crédito de conversão entre touchpoints baseado em padrão real de jornada da tua conta. Exige volume: segundo a documentação oficial, DDA precisa de pelo menos 300 conversões e 3.000 interações de path em 30 dias pra entregar modelo confiável. Abaixo disso, GA4 cai pra last-click silenciosamente.
Como ler relatório de atribuição em GA4:
Vou em Advertising > Attribution > Conversion Paths. Vejo a jornada média (quantos touchpoints até converter, quais canais aparecem mais cedo vs mais tarde). Pra e-commerce típico no Brasil, jornada tem 2-5 touchpoints e leva 1-14 dias. Pra SaaS B2B, 4-12 touchpoints e 7-90 dias.
Comparison de modelos em Advertising > Attribution > Model Comparison: ver lado a lado como cada modelo (data-driven vs last-click vs position-based) distribui crédito. Isso mostra qual canal é subvalorizado pelo last-click. Em conta com mídia paga e SEO ativo, last-click sempre subvaloriza paid_social topo de funil (Meta, TikTok) e supervaloriza search marca (Google Ads brand).
Realidade chata: DDA exige volume que muita conta não tem. Se você tá rodando R$10k/mês com 50 conversões/mês, DDA não funciona direito, mesmo que GA4 mostre o gráfico. Nesses casos, configuro atribuição last-click no GA4 e uso painel cross-channel manual pra decisão estratégica. Forçar DDA em volume baixo gera decisão ruim baseada em modelo unreliable.
Pra acompanhar atribuição séria, exporto dado de GA4 pra BigQuery via integração nativa (gratuita até 1M eventos/dia) e construo dashboard de atribuição custom no Google Data Studio. Isso eu detalhei no post sobre dashboards de KPIs no Data Studio.
Quais erros eu mais vejo em conta GA4 de e-commerce e SaaS?
Resumo rápido: Os 8 erros mais comuns que pego em auditoria GA4 são: retenção em 2 meses default, conversão duplicada (Ads nativo + GA4 import), evento purchase sem value, Enhanced Conversions não ligado, UTM inconsistente entre canais, ausência de BigQuery export, fuso horário errado e Key Events configurados como evento normal. O checklist oficial de migração GA4 cobre parte disso mas não tudo.
Lista comentada dos erros:
- Data retention em 2 meses: default do GA4 é 2 meses, perde histórico longo. Mudar pra 14 meses sempre, no setup inicial.
- Conversão dupla contada: evento purchase chegando via tag nativa Google Ads E via GA4 import. Inflado em 80-100%. Escolher um caminho só.
- Purchase sem value/currency: evento dispara mas sem valor de transação. Google Ads não consegue otimizar por ROAS, Meta não consegue value-based optimization. Sempre passar value e currency obrigatórios.
- Enhanced Conversions desligado: 5-25% de conversão perdida sem motivo. Ligar é 2-4h de trabalho.
- UTM inconsistente: meta_ads num lugar, paid_social em outro, facebook num terceiro. Vira sopa de canais e relatório fica inutilizável. Padronizar source/medium/campaign de uma vez e nunca mudar.
- Sem BigQuery export: limita atribuição ao teto de 14 meses do GA4 interface. Ligar export desde o dia 1 é gratuito até 1M eventos/dia.
- Fuso horário errado: property criada em GMT-5 (default americano) ao invés de GMT-3 (Brasília). Todo report de hora do dia fica deslocado.
- Key Events não marcados: evento dispara normal, mas não foi marcado como Key Event em Admin > Events. Não importável pro Google Ads. Erro mais bobo e mais comum.
Não acredito em conta GA4 que nunca passou por auditoria. 9 de 10 vezes que entro numa conta, encontro pelo menos 3 desses erros. O setup default do GA4 não é setup de mídia paga, é setup de tráfego genérico. Quem opera anúncio precisa configurar a casa direito antes de escalar budget. Se você precisa de referência de operação, escrevi sobre benchmarks de mídia paga no Brasil com números reais de conta.
Perguntas frequentes
GA4 substitui Google Tag Manager?
Não. GA4 é a ferramenta de analytics; GTM é o gerenciador de tags que dispara eventos pra GA4, Google Ads, Meta Pixel, etc. Ambos coexistem. Recomendo usar GTM como camada única de tagging e enviar pra GA4 a partir dali. Instalar GA4 direto no head do site sem GTM funciona, mas dificulta manutenção quando aparecer Meta Pixel, TikTok Pixel, Hotjar.
Posso usar GA4 sem GTM?
Pode, via Google Tag instalada direto no site. Mas pra eventos custom (que é o que importa pra mídia paga), você acaba mexendo em código toda vez que precisa adicionar evento. GTM resolve isso sem dev no meio do caminho. Pra qualquer operação séria de mídia paga, use GTM.
Quanto tempo leva pra GA4 começar a popular dado?
Realtime aparece em segundos depois de instalar tag. Relatórios padrão (Acquisition, Engagement) demoram 24-48h pra estabilizar. Audiências levam 24-48h pra popular tamanho mínimo. Modelo de atribuição data-driven precisa de 30 dias de volume pra calibrar. Conta nova precisa de paciência nas primeiras 4-6 semanas.
BigQuery export gratuito tem limite?
Sim, 1 milhão de eventos por dia no plano grátis do GA4. Acima disso, paga storage e query do BigQuery (geralmente R$50-300/mês em conta média). Pra 95% dos sites brasileiros, o limite grátis é suficiente. Vale a pena ligar desde o início.
GA4 funciona pra LGPD?
Funciona se configurado certo. Ative Consent Mode v2, anonimize IP (já é default no GA4), evite armazenar PII (email plaintext, CPF) em parameter de evento. Hash de email pra Enhanced Conversions é permitido sob LGPD se o usuário deu consentimento explícito. Cookie banner com opt-in granular resolve a parte legal.
Posso comparar dado de GA4 com painel de Google Ads direto?
Sim, mas com cuidado. GA4 atribui por last-click não-direto; Google Ads atribui por data-driven ou last-click do Ads. Discrepância de 5-20% é normal. Acima de 30% indica problema (UTM errado, conversão duplicada, Enhanced Conversions não ligado, evento purchase sem value). Calibre antes de tomar decisão estratégica baseado em painel divergente.
