Guia completo sobre eventos e parâmetros no ga4

textHoje o Google Analytics 4 (Vulgo GA4), já não pode ser considerado novidade e precisamos ficar atentos as mudanças que temos em relação a sua versão anterior para não cometer nenhum tipo de deslize no processo de configuração dos nossos eventos, uma das suas principais mudanças inclusive é sua propria estrutura, você lembra como era no Universal Analytics? kkk

Table of contents

O que são eventos?

Antes de começar vamos fazer um parentese para gente ir bem didáticamente para galera que está começando, quero desmitificar o que é e qual a necessidade de um evento dentro do processo de jornada de um usuário. Primeiro, evento é a interação do usuário dentro do seu site, clique em links, envio de formulários, scroll na página, play em um vídeo, são exemplos de eventos que podem ser disparados em um navegador.

Um evento serve para gente medir comportamentos importantes do usuário dentro do nosso site ou app, para que com esses dados quantitativos consigamos gerar insights sobre o nosso usuários para tomada de decisão.

Como funcionava a coleta de eventos no Universal Analytics

google-analytics-como-funcionava-os-evento.png

Dentro do Google Analytics um evento tinha uma estrutura padrão aninhada, Categoria, Ação, Rótulo, Valor e suas configurações. Essas informações tinham uma grande flexibilidade na hora de definir sua nomenclatura o que acabava gerando uma certa confusão e um legado ruim quando você não documenta o processo de criação desses eventos.

Então uma coisa que não muda é o processo de planejamento de toda as interações do seu usuário ou como eu gosto de chamar o plano de mensuração do seu negócio, onde você vai definir todo as informações e comportamentos personalizados para serem enviados para suas plataformas de mensuração, onde você vai definir todas as tags que serão implementadas de todos os seus parceiros vigentes.

Em breve você vai ver mais alguns posts falando sobre isso, prometo passar nesse post atualizando ele com o link, caso eu esqueça me manda mensagem la no instagram que vai me ajudar a lembrar de fazer mais conteúdos para vocês.

Mudança no escopo da informação do Google Analytics 4

No Google Analytics 4 (Vulgo GA4), a primeira grande mudança no processo de mensurar o comportamento do usuário veio da sua nova estutruta de dados, no Universal Analytics o nome da requisição que levava as informações para basse de dados do Google Analytics era chamada de hit, e cada escopo levava a cruzavasse com um grupo informações e preenchiam relatórios especifico.

Dentro do GA4 tudo é evento, ou seja, não existe diferença de escopo, uma vez que tudo é tratado da mesma forma e se você for parar para analisar isso é algo bom. A partir de agora todos dados se cruzam de maneira mais fluida uma vez que não existe escopos diferentes no processo de coleta desses dados.

Estrutura de evento no GA4

ga4-como-funciona-a-estrutura-de-eventos.png

É como eu disse anteriormente nada muda do GTM para frente, o processo do usuário interargir com o site e a gente medir esse comportamento continua o mesmo. O que muda é o tipo de tag e o escopo do dado que agora por padrão segue o seguinte schema:

  • Nome do evento
    • Propriedades

Tipos de eventos do GA4

Dentro dessa nova estrutura viabilizada pela gtag e afins inclusive temos uma série de eventos que são coletados de maneira automática, por padrão os eventos do GA4 se dividem em:

  • Eventos coletados automáticamente;
  • Eventos pré-definidos;
  • Eventos personalizados.

Eventos coletados automáticamente

Esses eventos são acionados por interações padrões do seu usuário com seu site ou app, quando você utiliza o modelo de implementação do GA4, seja via gtag, seja via Google Tag Manager não é necessário coletar os seguintes eventos:

Eventos que disparam automáticamente no app e um overview sobre os parâmetros

Abaixo a gente vai ver uma lista de eventos que são coletados automaticamente pelo SDK do firebase, para esses eventos não precisamos fazer absolutamente nada, ele coleta de maneira automática tantos os eventos quantos os parâmetros. Fato importante de observar é que nem todo evento é possivel ser exportado para o Big Query :(

Nome do EventoDispara automaticamente quando...Pode ser exportado para o Big QueryParâmetros
ad_clickO usuário clica em um anúncioNãoad_event_id
ad_exposureQuando pelo menos um anúncio veiculado em exposição na telaNãofirebase_screen, firebase_screen_id, firebase_screen_class, exposure_time
ad_impressionQuando usuário vê uma impressão de anúncioNãoad_event_id
ad_queryQuando uma solicitação de anúncio é realizadaNãoad_event_id
ad_rewardQuando uma recompensa é concedida por um anúncioSimad_unit_code, reward_type, reward_value
adunit_exposureQuando um bloco de anúncios está sendo exibido na telaNãofirebase_screen, firebase_screen_id, firebase_screen_class, exposure_time
app_clear_dataQuando o usuário limpa os dados do app e remove todas as informações de configuração e loginNão possui parâmetros vinculados
app_exceptionQuando o app falha ou gera uma exceçãofatal, timestamp, engagement_time_msec
app_removeQuando um pacote de aplicativos é removido de um dispositivo AndroidNão possui parâmetros vinculados
app_store_refundQuando uma compra é reembolsada pelo Google PlayNãoproduct_id, value, currency, quantity
app_store_subscription_cancelQuando uma assinatura paga é cancelada no Google PlayNãoproduct_id, price, value, currency, cancellation_reason
app_store_subscription_convertQuando um periodo de teste gratuito é convertido em uma assinaturaNãoproduct_id, price, value, currency, quantity
app_store_subscription_renewQuando uma assinatura paga é renovadaNãoproduct_id, price, value, currency, quantity, renewal_count
app_updateQuando o app é atualiza para uma nova versão e reiniciadoprevious_app_version
dynamic_link_app_openQuando um usuário abre novamente o app utilizando um link dinâmicosource, medium, campaign, link_id, accept_time
dynamic_link_app_updateQuando o app é atualizado para uma nova versão e aberto com o uso de um link dinâmicosource, medium, campaign, link_id, accept_time
dynamic_link_first_openQUando um usuário abre o app pela primeira vez usando um link dinâmicosource, medium, campaign, link_id, accept_time
errorÉ registrado em vez de um evento invalido que não pode ser coletadoNãofirebase_error, firebase_error_value
firebase_campaignQuando o app é iniciado com parâmetro de campanhaNãosource, medium, campaign, term, content, gclid, aclid, cp1, anid, click_timestamp, campaign_info_source
firebase_in_app_message_actionQuando um usuário realiza uma ação em uma mensagem no app Firebase.message_name, message_device_time, message_id
firebase_in_app_message_dismissquando um usuário dispensa uma mensagem no app Firebasemessage_name, message_device_time, message_id
firebase_in_app_message_impressionquando um usuário vê uma mensagem no app Firebaseproduct_id, price, value, currency, cancellation_reason
first_openna primeira vez que um usuário inicia um app após a instalação ou reinstalaçãoprevious_gmp_app_id, updated_with_analytics, previous_first_open_count, system_app, system_app_update, deferred_analytics_collection, reset_analytics_cause, engagement_time_msec
first_visitna primeira vez que um usuário visita um site ou inicia um Instant App Android com o Google Analytics ativadoNão possui parâmetros vinculados
in_app_purchasequando um usuário conclui uma compra no app, incluindo uma assinatura inicial, que é processada pela App Store no iTunes ou pelo Google Playproduct_id, price, value, currency, quantity, subscription, free_trial, introductory_price
notification_dismissquando um usuário dispensa uma notificação enviada pelo Firebase Cloud Messaging (FCM)message_name, message_time, message_device_time, message_id, topic, label, message_channel
notification_foregroundquando uma notificação enviada pelo FCM é recebida enquanto o app está em primeiro planomessage_name, message_time, message_device_time, message_id, topic, label, message_channel, message_type
notification_openquando um usuário abre uma notificação enviada pelo FCMmessage_name, message_time, message_device_time, message_id, topic, label, message_channel
notification_receivequando uma notificação enviada pelo FCM é recebida por um dispositivo com o app em segundo planomessage_name, message_time, message_device_time, message_id, topic, label, message_channel, message_type
notification_sendquando uma notificação é enviada pelo FCM.message_name, message_time, message_device_time, message_id, topic, label, message_channel
os_updatequando o sistema operacional do dispositivo é atualizado para uma nova versãoprevious_os_version
screen_viewquando ocorre uma transição de telafirebase_screen, firebase_screen_class, firebase_screen_id, firebase_previous_screen, firebase_previous_class, firebase_previous_id, engagement_time_msec
session_startQuando um usuário interage com o app ou siteNão possui parâmetros vinculados
user_engagementquando o app está em primeiro plano ou a página da Web está em foco por pelo menos 10 segundosengagement_time_msec
Eventos disparados apenas no Android

Como nem tudo são flores, nem todo evento que é coletado automáticamente é coletado em todas as plataformas, veja abaixo a listas de eventos coletados automáticamente que só é possivel medir no android:

  • app_clear_data
  • app_remove
  • app_store_refund
  • dynamic_link_app_update
  • notification_receive
  • notification_send
  • notification_dismiss

Eventos que disparam automáticamente no web

Nome do EventoDispara automaticamente quando...Pode ser exportado para o Big QueryParâmetros
clickSempre que um usuário clica em um link que não for do domínio atual-Não possui parâmetros vinculados
file_downloadquando um usuário clica em um link que leva a um arquivo-file_extension, file_name link_classes, link_domain, link_id, link_text, link_url
first_visitna primeira vez que um usuário visita um site-Não possui parâmetros vinculados
page_viewcada vez que a página é carregada ou o estado do histórico de navegação é alterado pelo site ativo-page_location (URL da página), page_referrer (URL da página anterior), engagement_time_msec
scrollna primeira vez que um usuário chega ao fim de cada página-engagement_time_msec
session_startQuando um usuário interage com o app ou site-Não possui parâmetros vinculados
video_completeQuando o vídeo terminar-video_current_time, video_duration, video_percent, video_provider, video_title, video_url, visible (booleano)
video_progressquando o vídeo passa dos 10%, 25%, 50% e 75% de duração-video_current_time, video_duration, video_percent, video_provider, video_title, video_url, visible (booleano)
video_startquando o vídeo começa a ser reproduzido-video_current_time, video_duration, video_percent, video_provider, video_title, video_url, visible (booleano)
view_search_resultscada vez que um usuário realiza uma pesquisa no site, indicada pela presença de um parâmetro de consulta de URL.-search_term

Eventos recomendados

Diferente do Universal Analytics, o Google Analytics 4 passou a definir alguns dos eventos que ajudam a medir o comportamento do seu usuário. Esse eventos não são coletados automáticamente e necessita de implementação deles dentro do seu GTM, o GA4 os categoriza inclusive por tipo de negócios. Eles ficam divididos em:

  • Eventos para todas e qualquer propriedade;
  • Vendas online;
  • Jogos.

Eventos para todas e qualquer propriedade

Trata-se se uma lista de eventos genéricos que se aplicam a qualquer negócio e você os implementa de acordo com a sua necessidade de mensuração, são eles:

Nome do EventoDisparar quandoParâmetros
ad_impressionUm usuário vê uma impressão de anúncio (somente para apps)AD_PLATFORM, AD_SOURCE, AD_FORMAT, AD_UNIT_NAME, CURRENCY, VALUE
ad_impressionUm usuário vê uma impressão de anúncio (somente para apps)virtual_currency_name, value
join_groupUm usuário entra em um grupo para medir a popularidade de cada grupogroup_id
loginUm usuário faz loginmethod
purchaseUm usuário conclui uma compracurrency, transaction_id, value, affiliation, coupon, shipping, tax, items
refundUm usuário recebe um reembolsocurrency, transaction_id, value, affiliation, coupon, shipping, tax, items
searchUm usuário pesquisa seu conteúdosearch_term
select_contentUm usuário seleciona conteúdoitem_id, content_type
shareUm usuário compartilha conteúdomethod, content_type, item_id
sign_upUm usuário se inscreve para medir a popularidade de cada método de inscriçãosign_up
spend_virtual_currencyUm usuário gasta moeda virtualvalue, virtual_currency_name, item_name
tutorial_beginUm usuário inicia um tutorialNão coleta parâmetros
tutorial_completeUm usuário conclui um tutorialNão coleta parâmetros

Eventos para e-commerce

A implementação dos eventos de e-commerce para o GA4 é basicamente o que tinhamos para o Enhanced Commerce dentro do Universal Analytics. Mensurar a jornada do usuário dentro do processo de compra, a diferença que temos é justamente a adaptação que teve que ser feita devido ao GA4 ser baseado em eventos.

Antes você tinha uma implementação que separavam dados de impressão de produto, das interações do usuário, justamente pela diferença que temos de paradigma de sair para pageview based e ir para um modelo event based.

Tendo em vista esse ponto vamos aos eventos do GA4 para e-commerces:

Nome do EventoDisparar quandoParâmetros
add_payment_infoUm usuário envia informações de pagamentocurrency, value, coupon, payment_type, items
add_shipping_infoUm usuário envia informações de fretecurrency, value, coupon, shipping_tier, items
add_to_cartUm usuário adiciona itens ao carrinhocurrency, value, items
begin_checkoutUm usuário inicia o processo de finalização da compracurrency, value, items
generate_leadUm usuário envia um formulário ou pede informaçõescurrency, value
purchaseUm usuário conclui uma compracurrency, transaction_id, value, affiliation, coupon, shipping, tax, items
refundUm reembolso é emitidocurrency, transaction_id, value, affiliation, coupon, shipping, tax, items
remove_from_cartUm usuário remove itens do carrinhocurrency, items, value
select_itemUm usuário seleciona o item de uma listaitem_list_id, item_list_name, items
select_promotionUm usuário seleciona uma promoçãocreative_name, creative_slot,location_id, promotion_id, promotion_name, items
view_cartUm usuário visualiza o carrinhocurrency, value, items
view_itemUm usuário visualiza um itemcurrency, value, items
view_item_listUm usuário vê uma lista de itens/ofertasitem_list_id, item_list_name, items
view_promotionUma promoção é exibida para o usuáriocreative_name, creative_slot,location_id, promotion_id, promotion_name, items

Eventos para jogos

Novidade no GA4, coletar informações em jogos pode ser uma boa não só para jogos, mas para gameficação se a sua plataforma utiliza esse recurso de uma olhada nesses eventos:

Nome do EventoDisparar quandoParâmetros
earn_virtual_currencyUm usuário ganha moeda virtual (moedas, pedras preciosas, tokens etc.)virtual_currency_name, value
join_groupUm usuário entra em um grupo para medir a popularidade de cada grupogroup_id
level_endUm usuário conclui uma fase no jogolevel_name, success
level_startUm usuário inicia uma nova fase no jogolevel_name
level_upUm usuário sobe de nível no jogolevel_name, character
post_scoreUm usuário publica uma pontuaçãoscore, level, character
select_contentUm usuário seleciona conteúdocontent_type, item_id
spend_virtual_currencyUm usuário gasta moeda virtual (moedas, pedras preciosas, tokens etc.)virtual_currency_name, value
tutorial_beginUm usuário inicia um tutorialNão coleta parâmetros
tutorial_completeUm usuário conclui um tutorialNão coleta parâmetros
unlock_achievementUm usuário desbloqueia uma conquistaachievement_id

Eventos personalizados

Os eventos personalizados são todos os eventos que não estão dentro dessas listas acima, dentro do GA4 temos a possibilidade de não só implementar eventos pré-definidos mais criar comportamentos customizados e de acordo com a jornada do nosso usuário. Tente ao máximo utilizar dos eventos pré-definidos, principalmente se a gente estiver falando de eventos para e-commerce, não tente reinventar a roda pois, essa nomenclatura é fundamental para preencher os relatórios de monetização.

Outro ponto importante sobre eventos personalizados, é que o GA4 é case sensitive, então cuidado na hora de criar eventos com capitalização diferentes, exemplo:

add_to_cart é diferente de Add_to_cart

Logo, padronizar os eventos é importante, hoje o padrão utilizado pelo GA4 é o snake case. O snake case é um padrão de escrita utilizados por programadores que substitui o espaço das palavras por underline, e a primeira letra de cada palavra é em minuscula. Sinceramente é o melhor padrão possivel para se adotar uma vez que os parâmetros UTMS também utilizam essa base, então fica a dica!

Conclusão

Na minha opinião o GA4 mudou e mudou para melhor no quesito eventos, dentro do Universal Analytics a liberdade que tinhamos em relação a criação de eventos acabava gerando um Frankenstein ao longo do tempo. Padronizar os eventos, não só coloca todo mundo na mesma página, mas define o básico a se mensurar em cada uma das plataformas.

Quer saber mais sobre eventos e parâmetros no GA4? Confira o vídeo completo abaixo:

10 AULAS GRATUITAS SOBRE WEB ANALYTICS
Comece a aprender hoje mesmo! 100% online e sem custo!

Métricas Boss: © 2021 - Versão 4.0 - Web Analytics é mais que um gráfico bonitinho!