Denní export dat do BigQuery je jedním z trháků, které se tradičně uvádějí mezi hlavními přínosy nových Google Analytics 4. Když si ho však aktivujete, najdete v BigQuery jenom hromadu surových událostí, nad kterými se velice obtížně dotazuje a reportuje. Jak se z toho všeho vyhrabat? Jak se dostat k použitelné databázi? Jak to celé strukturovat, postavit a automatizovat?
2. Realtime
Endpoint Storage
Linked Products
Ads
Reporting
Query Engine
Processing
Collection
Google Analytics 4 Platform Architecture
JanTichý, www.jantichy.cz
Browser
Web Server
CRM, ERP
Measurement
Protocol
Endpoint
Prepro-
cessing
Core Data
Processing
Realtime Data Processing
BigQuery
Data API
DWH, ETL, BI
CRM, ERP
Google Analytics
Reports
Data Studio
Power BI
Tableau
Mobile Apps
(Firebase)
Logs
Realtime Data Storage
Raw
Event
Data
Pre-aggreg.
& Expanded
Data
Search Console
Modelling
&
Aggregation
GTM / Gtag
Container
Signals
Data Import
Collection/Processing Time Data Reporting/Query Time Data
Configuration
Google Analytics Admin Admin API Provisioning API User Deletion API
SGTM
3. Kdy se hodí jaký přístup?
Běžná webová analytika pro většinové
běžné uživatele
Stačí vám agregované reporty
Využijete veškerého luxusu
předpočítaného modelu
Atribuce, cross-device párování,
modelování chybějících uživatelů…
Signály a demografie
Publika a export do Google Ads
Potřebujete jít na detailní granularitu
uživatelů, objednávek nebo událostí
Nevyhovuje vám výchozí metodika
Google Analytics 4
Chcete si napočítávat vlastní modely,
atribuce, predikce…
Chcete mít vše na jednom místě a
spojovat si to s dalšími datovými sily
Tohle vše umíte a chcete dělat sami
Google Analytics 4 Google BigQuery
5. Výchozí GA4 data v BigQuery stojí za pendrek
Nenapočítává sám vůbec žádné
metriky, modely, atribuce…
Nic nepredikuje, nemodeluje
chybějící uživatele, nespojuje
cross-device
Jen surová eventová data,
vše si musím spočítat sám
Pro přímý reporting je to
komplikované a drahé
Nešikovně ukládané zdroje návštěv
Nemá unikátní ID událostí
Nemá unikátní ID návštěv
Slabě propojená různá zařízení
stejného přihlášeného uživatele
Zanořené parametry, uživatelské
proměnné i produkty
Vše s sebou nese jen dílčí event,
i zdroje návštěv nebo uživatelské
proměnné
Chyby ve sbíraných datech
(Google Ads jako google/organic)
7. Základní principy, co od toho očekáváte
Připravit model přímo použitelný pro reporting
Pokud má něco dělat pokročilý geek, tak jen setup toho modelu
Vše v redundantních flat tabulkách již připravené, dopočítané, rozpočítané
Běžní uživatelé si musí vystačit v nejhorším s triviálními operacemi
SELECT, FROM jedna tabulka,WHERE, AVG/SUM/COUNT, GROUP BY, ORDER BY
Přímé napojení vizualizačního nástroje bez dalšího dopočítávání
Intuitivní naming všech tabulek i sloupců
Šetřit výkon a cenu za dotazy, inkrementální aktualizace
Dlouhodobá udržitelnost, přehlednost, rozšiřitelnost
8. 4 vrstvy datového modelu v BigQuery
Původní raw event data z Google Analytics 4
Normalizovaná granulární event tabulka
all_events (+ recent_events)
Další granulární tabulky
all_users, all_sessions, all_pageviews, all_transactions… (+ recent_...)
Agregované tabulky pro reporting
daily_events, daily_users, daily_sessions, daily_acquisition, daily_items,
daily_pageviews, daily_downloads…
9. Už třeba jenom definice návštěvy nebo zdroje návštěvnosti:
Nejdřív si vyjasněte metodiku, jakou chcete
page_view
Uživatel page_view page_view
session_start
first_visit
session_start
purchase
Facebook Sklik
10. Opravte a doplňte data z původní event tabulky
Deduplikované duplicitní události
Dopočítaná unikátní session_id a event_id
Oddělení consentovaných a neconsentovaných eventů
Unnestované všechny parametry a proměnné
Napočítání variantních sloupců
rok, měsíc, den, hodina, minuta, týden… z timestampu
hostname, path, parametry… z page_location
Dotáhnutí detailů o Google Ads kampaních podle GCLID
Očištění a oprava zdrojů dat a dalších nepřesnosti s pomocí „filtrů“
11. Domodelujte vše, co potřebujete
Spojení uživatelů a prohlížečů pod společnou reporting identity
Dopočítat k uživatelům poslední hodnoty jejich uživatelských proměnných
Provést sessionizaci
Dopočítat k jednotlivým návštěvám jejich zdroje podle zvolené metodiky
First user acquisition, last-click, last-session
Tohle všechno pak zpětně promítnout do úplně každé události
Výsledkem jsou základní granulární tabulky
all_events, all_users, all_sessions, all_pageviews, all_transactions…
12. Agregujte si nad tím dle potřeby do reporting tabulek
Pro každý reporting usecase připravte jeho ad hoc agregovanou tabulku
Anebo využijte či lehce rozšiřte některou již existující
Ale většinou spíš nereportovat nad základními granulárními tabulkami!
daily_pageviews, daily_downloads, daily_menuclicks, weekly_users,
monthly_acquisitions…
Je OK mít třeba i desítky malých agregovaných reporting tabulek
Hlavní kritérium – kardinalita
13. Jak to celé udržet a zautomatizovat?
Scheduled queries
DBT + GA4 package
DataForm
Jednoduchý cron přes Cloud Scheduler
Spustit hned po exportu z GA4 přes Pub/Sub event + CloudWorkflow
14. Související zdroje
Školení GA4 Masterclass
https://academy.taste.cz/google-analytics-4-masterclass
Vašek Jelen: GA4 - vyhodnocování kampaní v Google BigQuery
https://www.linkedin.com/pulse/ga4-vyhodnocov%C3%A1n%C3%AD-kampan%C3%AD-v-google-bigquery-
va%C5%A1ek-jelen
BigQuery SQL Cheat Sheet for GA4
https://tanelytics.com/ga4-bigquery-cheat-sheet/
GA4 package pro DBT
https://hub.getdbt.com/velir/ga4/
Automatické spuštění DataFormu hned po GA4 exportu
https://tanelytics.com/trigger-dataform-after-ga4-bigquery-export/
15. Díky za pozornost!
Digitální agenturaTaste
taste.cz
info@taste.cz
Google CertifiedTrainer
jantichy.cz
jan.tichy@taste.cz