Modelowane listy odbiorców nie zawierają konkretnych osób, tylko prawdopodobieństwa. Wyjaśniam, jak powstają, gdzie ich szukać w panelu i jak czytać ich raporty.
Najczęstsze pytanie, jakie słyszę od klientów przy migracji pomiaru, brzmi: „gdzie w GA4 są cele?”. Odpowiedź jest krótka i dla wielu osób nieprzyjemna — nie ma ich tam wcale. Nie zostały schowane w innym menu ani przemianowane. Zniknął cały sposób myślenia, w którym cel definiuje się osobno od tego, co użytkownik faktycznie robi na stronie.
W Universal Analytics cel był konfiguracją nałożoną na dane: adres strony docelowej, czas trwania sesji, liczba odsłon albo zdarzenie. W Google Analytics 4 istnieją tylko zdarzenia i to jednemu z nich nadaje się status konwersji. Brzmi jak drobiazg, a w praktyce zmienia kolejność pracy: najpierw musisz mieć zdarzenie, dopiero potem konwersję.
Do wyłączenia Universal Analytics zostało jeszcze kilka miesięcy — Google podał 1 lipca 2023 jako datę, od której usługi standardowe przestaną zbierać dane. To wystarczająco blisko, żeby własne konwersje w GA4 skonfigurować teraz, na spokojnie, mając jeszcze punkt odniesienia w starych raportach.
Poniżej opisuję drogę, którą przechodzę na każdym koncie: co musi być gotowe zawczasu, jak zbudować własne zdarzenie, jak nadać mu status konwersji i jak sprawdzić, że działa.
W GA4 wszystko, co da się zmierzyć, jest zdarzeniem. Odsłona strony to page_view, przewinięcie to scroll, wyjście na inną domenę to click. Nie ma osobnej kategorii „cel”, którą nakładasz na te dane po fakcie.
Konwersja w GA4 to nie obiekt, tylko flaga na zdarzeniu. Wybierasz zdarzenie i mówisz Analytics: to jest dla mnie ważne, licz to jako konwersję. Nic więcej się nie dzieje — zdarzenie zbiera się dalej tak samo, zmienia się tylko sposób jego raportowania.
Ma to dwie konsekwencje. Pierwsza: jeśli zdarzenia nie ma, nie ma z czego zrobić konwersji. Druga: oznaczenie zdarzenia jako konwersji nie działa wstecz — dane historyczne nie zostaną przeliczone, konwersje liczą się od momentu ustawienia flagi. Dlatego ten krok robię jak najwcześniej, nawet jeśli reszta pomiaru jest jeszcze w budowie.
Warto też zapamiętać, jak GA4 zlicza konwersje: przy każdym wystąpieniu zdarzenia. Jeśli ktoś wyśle formularz trzy razy w jednej sesji, dostaniesz trzy konwersje. W Universal Analytics cel był liczony raz na sesję i tego zachowania nie da się dziś w GA4 odtworzyć z panelu. Uwzględnij to, porównując obie usługi — różnica w liczbach nie oznacza, że pomiar jest zepsuty.
Zanim wejdę w konfigurację, sprawdzam trzy rzeczy.
To ostatnie jest ważniejsze, niż wygląda. Kiedy konwersją jest jednocześnie zakup, zapis do newslettera i kliknięcie w numer telefonu, raport konwersji przestaje o czymkolwiek mówić. Trzymam się zasady: konwersja to działanie, po którym mam realną szansę na przychód.
Własne zdarzenie możesz uzyskać na trzy sposoby, różniące się nakładem pracy.
Pierwszy: zdarzenie z Google Tag Managera. Najbardziej elastyczne — tag GA4 z własną nazwą, wywoływany regułą, którą sam definiujesz: kliknięcie w przycisk, wysłanie formularza. Masz pełną kontrolę nad warunkiem i parametrami.
Drugi: funkcja „Utwórz zdarzenie” w samym GA4. Tworzysz nowe zdarzenie na podstawie zdarzenia już zbieranego, zawężając je warunkiem — bierzesz `page_view`, dodajesz warunek na adres strony zawierający `/dziekujemy` i dostajesz nowe zdarzenie o własnej nazwie. Nie potrzebujesz dostępu do kodu, wystarczą uprawnienia edytora w usłudze.
Trzeci: skorzystanie z tego, co GA4 zbiera samo. Pomiar zaawansowany rejestruje między innymi kliknięcia wychodzące i pobrania plików — jeśli konwersją ma być pobranie katalogu PDF, zwykle wystarczy zawęzić `file_download` warunkiem na nazwę pliku.
Wybieram najprostszą z dostępnych dróg. Do Tag Managera schodzę, gdy potrzebuję warunku, którego GA4 sam nie widzi.
Sama flaga to najkrótszy krok. W sekcji Konfiguracja wchodzę w Zdarzenia, odnajduję swoje zdarzenie na liście i przełączam suwak „Oznacz jako konwersję”.
Jest jednak haczyk: na liście zdarzeń widać tylko to, co już wystąpiło. Świeżo zbudowane zdarzenie pojawi się tam z opóźnieniem, więc suwaka nie ma gdzie przełączyć. Rozwiązanie jest w sekcji Konwersje — przycisk nowego zdarzenia konwersji pozwala wpisać nazwę z ręki, zanim Analytics ją zobaczy. Trzeba podać ją znak w znak: literówka nie da komunikatu o błędzie, konwersja nigdy nie zacznie się liczyć, a przyczyny będziesz szukał w tagu.
Standardowe raporty potrzebują czasu na przetworzenie danych, więc godzinę po konfiguracji nie oceniaj, czy konwersja działa. Do tego służą narzędzia do podglądu na żywo, opisane niżej.
Konwersja bez wartości mówi tylko, że coś się stało. Jeśli działanie da się wycenić, przesyłaj ze zdarzeniem parametry value i currency. Bez waluty wartość nie zostanie policzona poprawnie w raportach przychodu — łatwo to pominąć, bo nic nie protestuje.
Przy leadach nie zawsze da się podać kwotę transakcji i wtedy stosuję wartość umowną: tyle, ile dla tego klienta jest wart kontakt danego typu. To nie jest przychód i tak trzeba to nazwać w raportowaniu, ale pozwala odróżnić zapytanie ofertowe od zapisu na newsletter.
Osobna sprawa to parametry opisowe, na przykład nazwa formularza. GA4 przyjmie je bez zastrzeżeń, ale nie zobaczysz ich w raportach, dopóki nie zarejestrujesz ich jako wymiarów niestandardowych. Rejestracja również nie działa wstecz, więc lepiej zrobić ją od razu.
Nowej konwersji nie zostawiam bez sprawdzenia — i nie robię tego w standardowych raportach, bo są za wolne.
Test przechodzę osobiście, całą ścieżką użytkownika, na telefonie i na komputerze. Często okazuje się, że zdarzenie działa na desktopie, a na mobile nie, bo to inny szablon strony.
Konwersje z GA4 można zaimportować do Google Ads po połączeniu usługi z kontem reklamowym. Robię to, gdy klient nie ma własnego tagu konwersji Google Ads albo gdy chodzi o działanie mierzone wyłącznie w Analytics.
Nie warto natomiast liczyć tego samego działania dwa razy — raz tagiem Google Ads, raz importem z GA4. Skończy się to zdublowanymi konwersjami i zepsutą optymalizacją stawek. Jedno źródło na jedno działanie.
Na koniec rzecz, którą tłumaczę na każdym wdrożeniu: liczby w GA4 i Google Ads nie będą identyczne. Google Ads zapisuje konwersję w dniu kliknięcia, GA4 w dniu, w którym wystąpiło zdarzenie, a domyślny model raportowania w GA4 przypisuje ją ostatniemu kanałowi z kliknięciem. Rozjazd sam w sobie nie jest awarią. Jeśli jest naprawdę duży, przyczyna zwykle siedzi w zdublowanym pomiarze albo w źle ustawionym warunku zdarzenia — i wtedy wracam do DebugView, a nie do porównywania tabelek.
Używamy plików cookies, aby ułatwić Ci nawigację oraz wykonywanie określonych funkcji. Szczegółowe informacje o wszystkich plikach cookies znajdziesz w każdej kategorii zgody poniżej.
Pliki cookies oznaczone jako "Niezbędne" są przechowywane w Twojej przeglądarce, ponieważ są one kluczowe dla zapewnienia podstawowych funkcji strony.
Używamy również plików cookies firm trzecich, które pomagają nam analizować, w jaki sposób korzystasz z tej strony, zapamiętują Twoje preferencje oraz dostarczają treści i reklamy odpowiednie dla Ciebie. Te pliki cookies będą przechowywane w Twojej przeglądarce tylko za Twoją uprzednią zgodą.
Możesz zdecydować, czy chcesz włączyć lub wyłączyć niektóre bądź wszystkie te pliki cookies, jednak wyłączenie niektórych z nich może wpłynąć na Twoje doświadczenia podczas przeglądania strony.
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| __cf_bm | 13 minutes | Cloudflare bot management — distinguishes humans from bots. |
| rc::* | Persistent | Google reCAPTCHA — localStorage holding anti-bot challenge state. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| wpEmojiSettingsSupports | Session | WordPress — sessionStorage flag caching whether the browser can render emoji (feature detection). |
| ytidb* | Persistent | YouTube — IndexedDB storing playback/search state for embedded videos. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| _ga_* | 400 days | Google Analytics 4 — persists session state per property. |
| _ga | 400 days | Google Analytics — distinguishes unique users via a client id. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| NID | 183 days | Google — stores preferences for personalized ads. |
| fr | 90 days | Meta — encrypted Facebook id and browser id for ads. |
| _gcl_au | 90 days | Google AdSense/Ads — experiments with advertising efficiency (conversion linker). |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| __Secure-YNID | 180 days | |
| YSC | Session | |
| __Secure-ROLLOUT_TOKEN | 180 days | |
| VISITOR_INFO1_LIVE | 180 days | |
| VISITOR_PRIVACY_METADATA | 180 days | |
| datr | 400 days | |
| sb | 400 days | |
| wd | 7 days |