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.
Prośba, którą słyszę najczęściej przy raportowaniu kampanii prowadzonych w kilku miejscach naraz, brzmi: „powiedz, który kanał sprzedaje”. Odpowiadam wtedy, że tego pytania nie da się rozstrzygnąć narzędziem, i zwykle nie jest to odpowiedź, na którą ktoś liczył.
Nie chodzi o wykręcanie się. Atrybucja jest modelem — czyli świadomym uproszczeniem — a nie pomiarem faktu. Przypisanie sprzedaży do jednego punktu styku jest umową, którą przyjmujemy, żeby dało się podejmować decyzje. Nieporozumienia zaczynają się wtedy, gdy zapominamy, że to umowa.
Poniżej opisuję, co konkretnie robię w GA4, żeby wyciągnąć z atrybucji coś użytecznego: jakie warunki muszą być spełnione, żeby dane w ogóle miały sens, jakich raportów używam i dlaczego przestałem oczekiwać, że liczby w dwóch narzędziach się zejdą.
Warto zacząć od trzech pojęć, które w rozmowach zlewają się w jedno.
Pierwsze to zasięg czasowy, czyli okres, w którym punkt styku może jeszcze zostać uznany za powiązany z konwersją. Ustawia się go osobno dla akcji zakupowych i dla pozyskiwania. Domyślne wartości nie pasują do każdego biznesu — przy sprzedaży, gdzie decyzja trwa kilka tygodni, zbyt krótkie okno systematycznie przypisuje sprzedaż wejściom bezpośrednim.
Drugie to zakres kanałów branych pod uwagę. GA4 rozróżnia sytuację, w której liczą się wszystkie źródła ruchu, od tej, w której liczą się tylko kanały płatne. To rozróżnienie zmienia wynik raportu drastycznie, a bywa pomijane w interpretacji.
Trzecie to sam model, czyli reguła podziału. Po uporządkowaniu, jakie Google przeprowadziło w GA4, praktycznie zostały dwa: oparty na danych oraz ostatnie kliknięcie. Modele mechaniczne — pierwsze kliknięcie, liniowy, z rozkładem czasowym, pozycyjny — zostały z raportów usunięte i nie ma sensu budować procesu, który by na nich polegał.
Model oparty na danych rozdziela udział między punkty styku na podstawie tego, jak zachowywały się ścieżki, które doprowadziły do konwersji, i te, które nie doprowadziły. Ma to jedną konsekwencję, o której warto pamiętać: przy małej liczbie konwersji jego wynik jest niestabilny i nie warto go interpretować co tydzień.
Zanim spojrzę w jakikolwiek raport, sprawdzam cztery rzeczy. Bez nich cała analiza opisuje szum.
Czwarty punkt wygląda najbanalniej i psuje najwięcej. Zapisany schemat nazewnictwa, stosowany też przez osoby spoza zespołu reklamowego, jest w moim doświadczeniu warunkiem, od którego zależy, czy w ogóle da się o wielokanałowości rozmawiać liczbami.
Nie przeglądam wszystkiego, co GA4 oferuje. W praktyce wracam do trzech miejsc.
Pierwsze to porównanie modeli. Interesuje mnie w nim jedna rzecz: które kanały tracą przy przejściu z ostatniego kliknięcia na model oparty na danych, a które zyskują. Kanały budujące świadomość — wideo, treści, kampanie zasięgowe — przy ostatnim kliknięciu wypadają blado i tam widać różnicę najmocniej. To nie dowód ich skuteczności, ale przesłanka, żeby nie wyłączać ich odruchowo.
Drugie to ścieżki konwersji. Patrzę na długość ścieżki i na to, jakie kanały pojawiają się na początku, w środku i na końcu. Jeśli ścieżki są w przewadze jednopunktowe, cała rozmowa o atrybucji wielokanałowej jest przedwczesna i lepiej zająć się czymś innym.
Trzecie to raport pozyskiwania ruchu na poziomie sesji, zestawiony z pozyskiwaniem użytkowników. Rozjazd między tymi dwoma perspektywami pokazuje, które kanały sprowadzają nowe osoby, a które obsługują powroty. Kampania brandowa, która w raporcie sesji wygląda świetnie, w perspektywie pierwszego kontaktu bywa niemal niewidoczna — i o tym warto wiedzieć przed decyzją budżetową.
Do porównań w czasie używam eksploracji z ustalonymi wymiarami zamiast raportów standardowych, bo dają powtarzalny widok, którego nikt przypadkiem nie przestawi.
To pytanie pojawia się na każdym spotkaniu i warto mieć na nie gotową, uczciwą odpowiedź, zamiast obiecywać, że się zejdą.
Nie zejdą się, bo oba narzędzia liczą inaczej i nie ma tu błędu do naprawienia. Google Ads przypisuje konwersję do dnia kliknięcia, GA4 do dnia konwersji — przy dłuższym procesie zakupowym to samo z siebie tworzy różnicę w zestawieniach miesięcznych. Google Ads widzi też wyświetlenia i zaangażowane obejrzenia wideo, których GA4 w ogóle nie rejestruje.
Dochodzi do tego różny zakres kanałów. W GA4 model uwzględnia również ruch organiczny, bezpośredni i odesłania, więc udział kampanii płatnych w tej samej sprzedaży musi być mniejszy niż w narzędziu, które widzi wyłącznie własne kliknięcia.
Praktyczny wniosek, który staram się przeforsować w każdym projekcie: jedno narzędzie do decyzji operacyjnych, drugie do obrazu całości. Optymalizacją stawek i budżetów w kampaniach steruję na danych z Google Ads, bo to one karmią algorytm. Rozmowy o podziale budżetu między kanały prowadzę na GA4. Próba uzgodnienia obu do jednej liczby zjada tygodnie i nie kończy się niczym.
Samo słowo „spójność” nie ma w GA4 żadnego odpowiednika, więc trzeba je przetłumaczyć na coś mierzalnego. Robię to na trzy sposoby.
Po pierwsze, sprawdzam, czy kanały mówią o tym samym. Praktycznie oznacza to zestawienie deklarowanej obietnicy kampanii z zachowaniem na stronie docelowej: udziałem sesji z zaangażowaniem, przejściem do kolejnego kroku, dotarciem do koszyka. Kanał, który przynosi ruch odbijający się od strony, zwykle nie ma problemu z kierowaniem, tylko z rozjazdem między komunikatem a treścią.
Po drugie, patrzę na strukturę pierwszych kontaktów. Jeśli działania górnej części lejka faktycznie działają, w danych rośnie liczba użytkowników, dla których pierwszym kontaktem był kanał zasięgowy, a nie zapytanie o markę. To wolno rosnący wskaźnik, ale trudno go podrobić.
Po trzecie, zestawiam wolumen zapytań o markę z okresami aktywności kampanii zasięgowych. To nie jest atrybucja i nie udaję, że nią jest — to sygnał pomocniczy, który przy braku lepszych narzędzi bywa jedynym śladem, że komunikacja dotarła.
Wszystkie trzy patrzę w oknach miesięcznych, nie tygodniowych. Przy krótszym oknie widzę wyłącznie wahania.
Zamknę listą rzeczy, których nie obiecuję, bo obiecywanie ich jest w tej branży zbyt częste.
Atrybucja nie odpowie na pytanie, co by się stało, gdyby kanału nie było. Do tego potrzebny jest eksperyment: wyłączenie części ruchu, podział geograficzny, test z grupą kontrolną. Model dzieli zasługi między to, co się zdarzyło, i milczy na temat wariantów alternatywnych.
Nie obejmie też kontaktów, których nie ma w danych: rozmów telefonicznych bez pomiaru, rekomendacji, wzmianek w miejscach, z których nikt nie kliknie. Zawsze zostaje część niewidoczna i wolę powiedzieć to wprost, niż udawać, że model ją uwzględnia.
I ostatnia rzecz, o której zapominam najczęściej sam. Zmiana ustawień atrybucji nie przelicza wstecz wszystkich raportów w ten sam sposób, a zmiana okna konwersji zmienia obraz historii. Jeśli zamierzasz cokolwiek tu przestawiać, zrób to raz, zapisz datę i przez kolejne miesiące porównuj już tylko okresy po zmianie. Bez tej dyscypliny za pół roku nikt nie odtworzy, dlaczego zestawienia z wiosny nie zgadzają się z niczym.
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 |