Debugging GA4 — jak sprawdzić czy tracking działa poprawnie
Spis treści
Widzisz w GA4 dziwne liczby — event się nie pojawia, wartość jest zerowa, albo raport pokazuje coś, czego się nie spodziewałeś? Zanim zaczniesz podejrzewać kod, przejdź przez systematyczny proces debugowania. Oto kolejność, w jakiej ja to sprawdzam.
Krok 1: DebugView — pierwsza linia obrony
GA4 Admin → DebugView pokazuje eventy w czasie rzeczywistym z Twojego urządzenia. Żeby to działało, musisz włączyć tryb debug:
- Chrome extension — zainstaluj Google Analytics Debugger, eventy z tej przeglądarki lecą do DebugView
- GTM Preview mode — jeśli tagi są w GTM, Preview automatycznie włącza debug mode
- Parametr URL — dodaj
?_dbg=1(dla gtag.js) do adresu strony
Czego szukać: czy event w ogóle się pojawia (może być do 30 sekund opóźnienia), czy ma oczekiwane parametry, czy user_properties są ustawione.
Krok 2: Network tab — czy request w ogóle wyleciał
DebugView pokazuje tylko to, co GA4 zdążyło przetworzyć. Czasem event nie dociera wcale — sprawdź w DevTools → Network, filtruj po collect? (domena google-analytics.com/g/collect lub regionalna).
Jeśli requestu nie ma:
- Sprawdź, czy gtag.js/GTM w ogóle się załadował (blocker reklam? CSP blokuje domenę?)
- Sprawdź, czy event jest triggerowany zanim dataLayer ma potrzebne dane (typowy błąd przy
purchase)
Jeśli request jest, ale ma status inny niż 200 — sprawdź payload, często problem leży w złym formacie parametrów.
Krok 3: GTM Preview — czy tag w ogóle się odpalił
W GTM Preview widzisz dokładnie, które tagi się wystrzeliły dla danego eventu, i dlaczego inne nie. Najczęstsze przyczyny "tag się nie odpalił":
- Trigger warunek nie spełniony — np. trigger czeka na
dataLayer.event === 'purchase', a kod wysyła'Purchase'(wielkość liter ma znaczenie) - Tag sequencing — tag GA4 Config musi się odpalić przed eventem, inaczej event leci bez konfiguracji
- Consent mode — jeśli użytkownik nie zaakceptował zgód, a tag ma ustawiony consent check, nie odpali się wcale
Krok 4: Realtime Report — weryfikacja na żywym ruchu
DebugView pokazuje tylko Twoje urządzenie. Żeby sprawdzić, czy event realnie działa na produkcji dla innych użytkowników — GA4 → Reports → Realtime. Filtruj po nazwie eventu, poczekaj kilka minut.
Jeśli w DebugView widzisz event, a w Realtime go nie ma — prawdopodobnie tag jest wdrożony tylko w wersji preview/staging GTM, nie w opublikowanym kontenerze.
Najczęstsze przyczyny "eventu, którego nie ma"
- Kontener GTM niepublikowany — Preview działa na wersji roboczej, produkcja widzi ostatnią opublikowaną wersję
- Podwójny GA4 config tag — dwa tagi Configuration z tym samym Measurement ID = zduplikowane eventy albo konflikt
- Blokery reklam / przeglądarki z ITP — Safari i Firefox coraz agresywniej blokują trackery, licz się z niedoszacowaniem realnego ruchu
- Cross-domain tracking źle skonfigurowany — sesja się urywa między subdomenami, event leci, ale bez ciągłości sesji
TL;DR
- Kolejność debugowania: DebugView → Network tab → GTM Preview → Realtime Report
- DebugView pokazuje tylko Twoje urządzenie — do weryfikacji na produkcji użyj Realtime
- Trigger w GTM wrażliwy na wielkość liter i dokładną nazwę eventu w dataLayer
- Kontener GTM musi być opublikowany — Preview nie równa się produkcji
- Blokery reklam i ITP w Safari/Firefox to normalna przyczyna niedoszacowania ruchu, nie błąd w kodzie
Masz podobny problem w swoim GA4?
Sprawdzę Twoją konfigurację w ramach audytu GA4. Pierwsza rozmowa jest bezpłatna.
Umów konsultacjęWięcej artykułów o data analytics:
Wróć do bloga