Kontrola denního limitu exportu GA4 do BigQuery

Google spustil placenou verzi Analytics 360 pro GA4. Spolu s tím byla zavedena omezení pro bezplatnou verzi GA4. Sledování limitů parametrů událostí a konverzí je snadné, ale co když chcete sledovat denní exporty do BigQuery? Standardní reporty GA nestačí.

Když se podíváte na obrázek výše, je zde jen několik prvků, na které je třeba si dát pozor. Nejdůležitější je ten úplně poslední – denní export do BQ.

Pomocí těchto dvou SQL dotazů zjistíte, jak blízko jste k dosažení denního limitu jednoho milionu událostí.

Použití v malých data setech

Tento dotaz spočítá všechny události za den a aplikuje jednoduchou logiku na výsledek. Pokud množství exportovaných událostí za den překročí limit, dotaz vrátí hodnotu „nad limitem“.

Jestliže množství exportovaných událostí spadá do 95., 75. nebo 50. percentilu, dotaz vrátí percentilový rozsah.

Následující dotaz použijte pouze v případě, že jeho spuštění nepřekročí 10 MB kapacity BQ. Odhad kapacity zpracování se zobrazuje v pravém horním rohu uživatelského rozhraní BQ.

^^ Použijte tento dotaz.

^^ Tento dotaz nepoužívejte.

Úprava dotazu

Než kód zkopírujete a vložíte, je třeba přizpůsobit pár věcí, aby dotaz fungoval.

  • Řádek 5: změňte jméno zdrojové tabulky
  • Řádek 7: změňte počáteční a koncové datum
  • Řádky 24 a 25: pokud chcete vidět jen dny, kdy je vše v pořádku, odkomentujte řádek 24 a zakomentujte řádek 25
with ga4_data as (
select
    format_date( '%Y-%m-%d', extract (date from timestamp_micros (event_timestamp) ) ) as date,
    count (event_name) as event_count
from `projectId.analytics_000000000.events_*` -- change to your source table
where
    _table_suffix between '20210901' and '20210930' -- change to your desired date range
group by 1
),
logic as (
select
    date,
    event_count,
    case
        when event_count > 1000000 then 'over the limit'
        when event_count between 950000 and 1000000 then '95% of the limit'
        when event_count between 750000 and 949999 then '75%-94.9% of the limit'
        when event_count between 500000 and 749999 then '50%-74.9% of the limit'
        else 'all good'
        end as limit_status
from ga4_data
)
select * from logic
where limit_status in ('over the limit', '95% of the limit', '75%-94.9% of the limit', '50%-74.9% of the limit')
-- where limit_status = 'all good'
order by date desc

Použití ve velkých data setech

Tento dotaz dělá přesně totéž, co předchozí dotaz. Tedy téměř přesně...

Místo počítání všech řádků v tabulce událostí GA4 se dotazujeme na informační schéma. Výhodou tohoto postupu je úspora kapacity zpracování. Dotazy na schéma spotřebovávají pouze 10 MB na jedno použití, bez ohledu na velikost tabulky.

Následující dotaz použijte pouze v případě, že by spuštění předchozího dotazu pro malé datové sady přesáhlo 10 MB kapacity BQ.

Úprava dotazu

Než kód zkopírujete a vložíte, je třeba přizpůsobit pár věcí, aby dotaz fungoval.

  • Řádek 15: změňte zdrojovou tabulku. Vyměňte projectId za vaše vlastní ID projektu. Také vyměňte analytics_123456789 za název vaší GA4 tabulky. Na .INFORMATION_SCHEMA.PARTITIONS nesahejte.
SELECT 
PARSE_DATE("%Y%m%d", RIGHT(table_name, 8)) as date,
total_rows,
-- total_logical_bytes,
-- total_billable_bytes,
-- last_modified_time,
-- storage_tier, 
case
    when total_rows > 1000000 then 'over the limit'
    when total_rows between 950000 and 1000000 then '95% of the limit'
    when total_rows between 750000 and 949999 then '75%-94.9% of the limit'
    when total_rows between 500000 and 749999 then '50%-74.9% of the limit'
    else 'all good'
end as limit_status
FROM `projectId.analytics_123456789.INFORMATION_SCHEMA.PARTITIONS`
WHERE table_name NOT LIKE 'events_intraday%'
ORDER BY date DESC;

Analýza

Co vlastně můžete z výsledků této query zjistit? To závisí na vašich datech.

Několik anomálií

Pokud překračujete limit jen několik dní v měsíci, zjistěte, co se stalo. Příliš mnoho uživatelů z akvizičních kampaní? Off-line kampaně ovlivňující růst přímých návštěv? Tyto dotazy vám pomohou dobrat se k pravdě a zjistit, co se na vašem webu dělo.

Trvalé překračování limitu

Pokud limity překračujete trvale, zvažte odesílání menšího počtu událostí do GA4. Například odesílání událostí měřících Core Web Vitals může způsobit překročení.

Další možnosti je špatná architektura webu nebo špatná průchodnost webu návštěvníky. Uživatelé mohou mít problém udělat na vašem webu to, co chtějí. Doporučuji přijít s nějakou hypotézou a ověřit ji. Tento dotaz na analýzu toku uživatelů vám výrazně pomůže.

A možná jste doopravdy příliš velcí na bezplatnou úroveň GA4.

Pokud se dostanete do problémů s GA4 nebo BigQuery, napište nám!

Tohle nic není!

Tvoříme sofistikované datové modely, se kterými jsou spokojené firmy
všech velikostí. Určitě umíme postavit report i pro vás.

Napište nám

Ozveme se do 24 hodin.

Jiří Šantora
Jiří Šantora

Datový inženýr

Jirka využívá rozsáhlých zkušeností z datového inženýrství a stavění datových modelů při psaní o BigQuery a novinkách ve světě datové analytiky.