Konec složitým SQL dotazům pro session scope atribuční model!
Od 9. 10. 2024 Google Analytics v rámci exportu do BigQuery exportují nově sloupce s atribučním modelem stejným, jako zobrazuje GA4 rozhraní (last-non-direct click). Rozdíly v datech jsou v rámci tolerance, s hodnotami je možné počítat - celé využití dat z Big Query se tak zjednodušuje, session scope atribuční model už není potřeba napočítávat složitými SQL dotazy a propojováním s Google Ads.
V červenci letošního roku se v BigQuery objevilo pole session_traffic_source_last_click a v něm dvě další množiny dat - manual_campaign a google _ads_campaign. Obsahovaly nějakým způsobem napočtené last click atribuce - nicméně nezávisle na sobě, takže v manual_campaign byla jedna hodnota a v ads_campaign jiná a nebylo jednoduše zřejmé, kterou lze pro danou session využít. Stále bylo zapotřebí dopátrávat, které hodnoty přiřadit.
9. 10. 2024 přibylo několik dalších polí v rámci session_traffic_source_last_click dodávajících další identifikátory pro různé typy kampaní, ale především přibylo pole cross_channel_campaign, které podle názvu slibuje, že dokáže last_click model vyhodnotit napříč jednotlivými kanály - tedy jak na základě UTM, tak na základě gclidu a to vše v rámci last click non-direct modelu - tedy toho samého, který používají GA4.
🟡 Žlutá (vnější rámeček) - Nově přidané položky (od července dál)
🔵 Modrá (prostřední rámeček) - Část struktury přidaná 9.10.
🟢 Zelená (vnitřní rámeček) - Atribuce odpovídající GA4 rozhraní
Vzhledem k tomu, že ke dni spuštění nebyla příslušná pole zanesena v oficiální dokumentaci, zbývalo jen hádat - a ověřit si hypotézu na datech.
Vybrali jsme property, na kterém je dosud alespoň část kampaní v Google Ads řešena pomocí autotaggingu bez doplnění UTM parametrů (což jinak nedoporučujeme), reporting identity nastavili na “device based” (aby data byla co nejpodobnější v GA4 a BQ), vybrali stejný časový rozsah (10.10.-12.10., abychom eliminovali riziko neúplných dat v BQ na začátku či GA4 na konci intervalu) a jali se porovnávat data.
V GA4 jsme vybrali session based traffic sources, v BQ jsme napočetli sessions z user_pseudo_id a ga_session_number, vybrali jsme jen consentovaná data (respektive data s user_pseudo_id). Tím jsme nastavili oběma reportům co nejpodobnější podmínky.
WITH test AS ( SELECT PARSE_DATE("%Y%m%d", REGEXP_EXTRACT(_TABLE_SUFFIX, r'[0-9]+')) AS event_date, DATETIME(TIMESTAMP_MICROS(event_timestamp), "Europe/Prague") AS event_datetime, user_pseudo_id || "_" || (SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_number') AS session_id, session_traffic_source_last_click.cross_channel_campaign.source AS cross_channel_source, session_traffic_source_last_click.cross_channel_campaign.medium AS cross_channel_medium, session_traffic_source_last_click.cross_channel_campaign.campaign_name AS cross_channel_campaign, FROM `[REDACTED].events_*` WHERE 1=1 AND REGEXP_EXTRACT(_TABLE_SUFFIX, r'[0-9]+') BETWEEN FORMAT_DATE("%Y%m%d", "2024-10-10") AND FORMAT_DATE("%Y%m%d", "2024-10-12") AND _TABLE_SUFFIX NOT LIKE "%intraday%" AND user_pseudo_id IS NOT NULL ) SELECT cross_channel_source, cross_channel_medium, cross_channel_campaign, COUNT(DISTINCT session_id) AS sessions FROM test WHERE 1=1 GROUP BY ALL ORDER BY sessions DESC
V tabulce uvádíme jen prvních 20 řádků, nicméně shoda pokračuje s podobnou přesností i dále. Vynechané řádky jsem spojil pod řádek (other). Názvy kampaní jsem ve výsledné tabulce cenzuroval, ale zahrnovaly jak běžné kampaně, tak Google Ads včetně PMAX kampaní. Je vidět, že v BQ máme o 31 session méně celkově, ale atribuce session se mezi GA4 a BQ prakticky shoduje. Podobně dopadlo i srovnání transakcí.
Pro úplnost podotýkám, že se jednalo o srovnání dat v GA4 versus BQ a zdroj/médium google/cpc s kampaní (organic) je téma na jiné vyprávění. 🙂
Potřebuješ pomoct s Google Analytics v BigQuery? Ozvi se nám: google-team@etnetera.cz.
Data tedy prokázala, že nová pole velmi přesně kopírují session based atribuční model používaný Google Analytics 4 a je tedy možné je následně využívat pro reporting, který nepřekvapí nesrovnalostmi s GA4. Je možné, že se nějaké problémy ještě v budoucnu objeví nebo že Google do této části schématu bude ještě zasahovat, ale každopádně jde o významný krok ke zvýšení důvěryhodnosti a využitelnosti dat z Big Query.
Jsi odborník na digitální analytiku v Google nástrojích a chtěl bys pracovat ve svobodné firmě? Mrkni na volné pozice a přidej se k nám!