LW IT Solutions
« Blog Overview /Digital Analytics/Tutorials / Tutorial: Naprawa ruchu „Unassigned” w raportach pozyskiwania...
This post in other languages:

Tutorial: Naprawa ruchu „Unassigned” w raportach pozyskiwania GA4

Tutorial: Naprawa ruchu „Unassigned” w raportach pozyskiwania GA4
Spis treści
  1. Krok 1: Rozdzielenie worka po źródle i medium sesji
  2. Krok 2: Gdy pojawia się realna wartość — przypadek tagowania
  3. Krok 3: Gdy pojawia się (not set) — parametry utracone po drodze
  4. Krok 4: Przypadek Consent Mode
  5. Krok 5: Policzenie skali w BigQuery
  6. Pozostając w granicach
  7. Pytania i odpowiedzi
  8. Źródła
  9. Kontrola w praktyce: rzeczywiste wiersze pozyskiwania

„Unassigned” w raporcie pozyskiwania ruchu GA4 nie jest kanałem — to resztka, która zostaje, gdy źródło i medium sesji nie pasują do żadnej reguły w domyślnej grupie kanałów. Czyni to z niego objaw o kilku niepowiązanych ze sobą przyczynach i właśnie dlatego typowa rada, żeby „naprawić UTM-y”, rozwiązuje część przypadków, a przy innych nie zmienia nic.

Niezawodne podejście polega na rozdzieleniu worka, zanim cokolwiek zostanie ruszone: jeden odczyt raportu oddziela problem z tagowaniem od problemu z utratą danych, a każdy z nich ma własne rozwiązanie.

Przepływ diagnostyczny: wiersz Unassigned rozdzielony po źródle i medium sesji na realną wartość (błąd tagowania) albo (not set) (utracony parametr), następnie naprawiony u źródła i zweryfikowany
Unassigned to nie jeden błąd: wymiar dodatkowy rozstrzyga, czy to błąd tagowania, czy utracony parametr.

Krok 1: Rozdzielenie worka po źródle i medium sesji

W raporcie pozyskiwania ruchu dodanie źródła / medium sesji jako wymiaru dodatkowego do wiersza Unassigned rozdziela go na dwa zasadniczo różne przypadki:

  • Pojawia się realna wartość, na przykład newsletter / october-promo — dane dotarły w całości, ale żadna reguła kanału do nich nie pasuje. To problem taksonomii, rozwiązywalny przez poprawienie tagowania.
  • Pojawia się (not set) — sesja zaczęła się zupełnie bez informacji o źródle. Reguły kanałów nie mają z tym nic wspólnego; dane kampanii nigdy nie dotarły do GA4.

Warto wcześniej zrobić jeszcze jedno rozróżnienie: Unassigned w raporcie pozyskiwania użytkowników opisuje atrybucję pierwszej wizyty, a raport pozyskiwania ruchu — każdą pojedynczą sesję. Zestawienie wymiaru o zakresie użytkownika z metryką o zakresie sesji tworzy wiersze Unassigned odzwierciedlające tę rozbieżność zakresów, a nie błąd zbierania danych — oba raporty warto więc sprawdzić osobno przed jakąkolwiek zmianą.

Krok 2: Gdy pojawia się realna wartość — przypadek tagowania

Domyślna grupa kanałów GA4 dopasowuje konkretne wartości, a nie intencje. Medium newsletter nie staje się kanałem E-mail; reguła E-mail wymaga źródła lub medium o wartości dokładnie email, e-mail, e_mail albo e mail. Wielkość liter nie ma przy tym znaczenia, więc Email wielką literą jest w porządku; newsletter, mailing czy crm już nie pasują. Również utm_source zupełnie bez utm_medium pozostawia GA4 bez możliwości zaklasyfikowania sesji.

Zamierzony kanał Pasujące medium Częsta wartość, która nie pasuje
E-mail email, e-mail, e_mail newsletter, mailing, crm
Wyniki organiczne organic seo, search
Płatne wyniki cpc, ppc, paid… (źródło wyszukiwarki) sem, adwords
Paid Social cpc, ppc, paid… (źródło społecznościowe) social-paid, fb-ads
Odesłania referral, link partner
Afiliacja affiliate affiliates, programpartnerski
<!-- Wpada do Unassigned: zadna regula nie pasuje do medium=newsletter -->
https://example.com/oferta?utm_source=mailchimp&utm_medium=newsletter

<!-- Klasyfikowane jako E-mail: medium pasuje do reguly kanalu -->
https://example.com/oferta?utm_source=mailchimp&utm_medium=email&utm_campaign=october-promo

Poprawione tagowanie działa wyłącznie na ruch zebrany od tego momentu; sesje już zapisane zachowują wartość, z jaką dotarły. Własna grupa kanałów potrafi przypisać historyczne wartości do nazwanego kanału na potrzeby raportowania, ale jest to przeetykietowanie tego, co zebrano, a nie naprawa.

Krok 3: Gdy pojawia się (not set) — parametry utracone po drodze

Sesja zaczynająca się zupełnie bez źródła wskazuje na drogę, jaką przebył odwiedzający, a nie na tagowanie kampanii. Trzy mechanizmy odpowiadają za większość takich przypadków:

  • Przejście między domenami bez linkera. Gdy odwiedzający przechodzi z jednej domeny na drugą — sklep przekazuje ruch do operatora płatności i z powrotem — GA4 przenosi tożsamość w parametrze _gl dopisywanym przez pomiar międzydomenowy. Bez skonfigurowania obu domen w ramach tego samego strumienia danych powrót rozpoczyna nową sesję, której odesłaniem jest operator płatności; jeśli ten host znajduje się dodatkowo na liście wykluczeń odesłań, odesłanie zostaje odrzucone i nie zostaje nic, do czego dałoby się przypisać sesję.
  • Redirect gubiący query string. Przekierowanie po stronie serwera dotyczące języka, ukośnika końcowego albo http-na-https, które składa adres na nowo bez przekazania ?utm_…, usuwa parametry kampanii, zanim jakikolwiek tag zdąży je odczytać.
  • Tag odpalający się po zmianie adresu. W aplikacji jednostronicowej zmiana trasy po stronie klienta, następująca przed załadowaniem tagu GA4, sprawia, że tag odczytuje adres już po nawigacji — a ten nie niesie już parametrów kampanii.

Krok 4: Przypadek Consent Mode

Consent Mode dokłada się do Unassigned w konkretny sposób: gdy zgoda na magazyn reklamowy lub analityczny zostaje odmówiona, identyfikatorów kliknięcia ani parametru linkera nie da się utrzymać w ciasteczkach przy przejściu między stronami. Włączone URL Passthrough w tagu Google albo w Conversion Linkerze zatrzymuje gclid i _gl w adresie URL, dzięki czemu źródło przetrwa nawigację nawet bez magazynu.

Poważniejszą przyczyną jest twarde blokowanie. Niedopuszczenie do odpalenia tagów Google aż do momentu udzielenia zgody — przez trigger blokujący zamiast wbudowanych sprawdzeń zgody — oznacza, że wyświetlenie strony docelowej nigdy nie zostaje zmierzone; pierwsze zdarzenie, jakie widzi GA4, dociera już po przejściu dalej, bez pierwotnych parametrów kampanii. Skorzystanie z własnych ustawień zgody w tagach zachowuje ten pierwszy strzał jako ping bez ciasteczek, który wciąż niesie źródło — i który jest zarazem podstawą modelowania behawioralnego.

Krok 5: Policzenie skali w BigQuery

Interfejs GA4 pokazuje udział; eksport do BigQuery pokazuje, z jakimi kombinacjami źródła i medium sesje docierają — i dopiero to czyni naprawę mierzalną. Grupy kanałów eksport nie zawiera, a manual_source i manual_medium w collected_traffic_source według schematu eksportu Google zawierają nie tylko wartości UTM, lecz także wartości odczytane z parametrów odesłań; listę trzeba więc porównać z regułami kanałów:

SELECT
  IFNULL(collected_traffic_source.manual_source, '(not set)') AS source,
  IFNULL(collected_traffic_source.manual_medium, '(not set)') AS medium,
  COUNT(*) AS sessions
FROM `project.analytics_XXXXXXXXX.events_*`
WHERE _TABLE_SUFFIX BETWEEN '20260901' AND '20260930'
  AND event_name = 'session_start'
GROUP BY source, medium
ORDER BY sessions DESC
LIMIT 50;

Wiersze z realnymi, ale niedopasowanymi mediami wyliczają połowę problemu związaną z tagowaniem. Wiersze, w których oba pola mają wartość (not set), są dla połowy związanej z utratą danych tylko górną granicą: zawierają też wejścia bezpośrednie, które nie niosą ani parametrów UTM, ani odesłania i które GA4 jako (direct) / (none) przypisuje do kanału Direct. Ponowne uruchomienie zapytania po każdej zmianie pokazuje, która z tych dwóch faktycznie drgnęła.

Pozostając w granicach

Części brakujących danych kampanii nie da się odzyskać. Od osób odmawiających zgody na magazyn analityczny przy twardym blokowaniu nie dociera nic; przy ustawieniach zgody w tagach ich pingi bez ciasteczek wprawdzie niosą źródło, ale nie pojawiają się w raportach jako osobne sesje, tylko trafiają do modelowania behawioralnego, a żadna konfiguracja nie odtworzy tego, co nigdy nie zostało zebrane. Faktyczne wejścia bezpośrednie i wizyty ze środowisk aplikacji i przeglądarek usuwających odesłania do tej części nie należą: bez żadnego źródła GA4 przypisuje je jako (direct) / (none) do kanału Direct. Realistycznym celem jest niewielki, stabilny udział; rosnący sygnalizuje nową usterkę i to właśnie ten odczyt wart jest obserwowania, a nie wartość bezwzględna.

Pytania i odpowiedzi

Jak znaleźć przekierowanie, które gubi parametry UTM?

Przez wywołanie strony docelowej z parametrami testowymi i obejrzenie każdego etapu łańcucha przekierowań, na przykład w zakładce sieci w narzędziach deweloperskich albo za pomocą curl -sIL. Rozstrzyga nagłówek Location każdej odpowiedzi: jeśli brakuje w nim ciągu zapytania, który był jeszcze w żądaniu, przyczyną jest ten etap. Do próby należą też warianty bez ukośnika końcowego, z http i z prefiksem językowym, bo każdy z nich może uruchomić własną regułę.

Jak zachować parametry kampanii w aplikacji jednostronicowej do chwili, gdy odczyta je tag?

Artykuł nazywa mechanizm: jeśli router zmienia adres, zanim załaduje się tag GA4, tag odczytuje adres bez parametrów. Trzy rozwiązania pozwalają utrzymać parametry:

  1. Wczesne ładowanie tagu Google, w sekcji head strony i przed kodem routera, tak aby pierwsze wyświetlenie strony widziało jeszcze pierwotny adres.
  2. Zapisanie adresu wejściowego w zmiennej zaraz po załadowaniu i przekazanie go jako page_location z pierwszym page_view. GA4 odczytuje parametry kampanii z tej wartości, więc późniejsza zmiana adresu już na nią nie wpływa.
  3. Odroczenie porządkowania adresu. Niektóre aplikacje usuwają parametry zapytania przez history.replaceState(), żeby adres wyglądał schludnie; powinno to nastąpić dopiero po wysłaniu pierwszego trafienia.

Baner zgody pogarsza problem, jeśli opóźnia ładowanie tagu do chwili podjęcia decyzji: do tego czasu router mógł już dawno zmienić adres. Tu również pomaga ten sam zapisany adres wejściowy.

Kontrola w praktyce: rzeczywiste wiersze pozyskiwania

Audyt pozyskiwania w testerze kanałów uzupełnia pojedyncze przykłady reguł o kontrolę danych raportowych. Po autoryzacji Google usługę i jawny zakres dat wykorzystuje się do zapytania. Narzędzie pobiera źródło, medium, kampanię i domyślną grupę kanałów sesji wraz z sesjami. Nie miesza pozyskiwania pierwszego użytkownika z pozyskiwaniem sesji.

  1. Wybór zakończonego okresu raportowania. Najnowsze dane mogą się jeszcze zmieniać.
  2. Kontrola wierszy Unassigned od największych wartości sesji. Porównanie źródła i medium z opisanymi regułami kanałów.
  3. Sprawdzenie wariantów takich jak Email i email oraz dodatkowych spacji w kampanii. Kandydat oznacza niespójność nazewnictwa do zbadania, a nie automatyczną poprawkę.
  4. Kontrola metadanych przed interpretacją. Progi, próbkowanie i wiersz (other) mogą ukrywać szczegóły.
  5. Eksport wskazówek do CSV i poprawienie przyszłych linków kampanii lub konfiguracji tam, gdzie uzasadniają to dane.

Procent Unassigned opiera się na sumie zwróconych wartości sesji, a nie na osobno pobranej sumie usługi. Narzędzie odrzuca niepełną paginację i nie zmienia historycznej atrybucji. Samo (not set) nie rozstrzyga, czy przyczyną braku była zgoda, przekierowanie czy tagowanie.

Źródła techniczne: wymiary i metryki Data API oraz metadane odpowiedzi.

Lukas Wójcik

Lukas Wójcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Get in Touch

Briefly describe your project or inquiry for a tailored response. This site is protected by reCAPTCHA.

Napisanie komentarza

Odmienne wyniki z innych kont i pytania o konfigurację są tu mile widziane.

Adres e-mail nie jest publikowany. Pola obowiązkowe oznaczono gwiazdką.

ALL ARTICLES & CATEGORIES

CCTV

Śledź tę kategorię przez RSS

Cloud & AI

Śledź tę kategorię przez RSS

Data Privacy

Wszystkie artykuły w tej kategorii (18) Śledź tę kategorię przez RSS

Digital Analytics

Wszystkie artykuły w tej kategorii (58) Śledź tę kategorię przez RSS

Digital Marketing

Wszystkie artykuły w tej kategorii (37) Śledź tę kategorię przez RSS

IT & Networks

Wszystkie artykuły w tej kategorii (17) Śledź tę kategorię przez RSS

Music Production

Wszystkie artykuły w tej kategorii (15) Śledź tę kategorię przez RSS

Raspberry Pi

Śledź tę kategorię przez RSS

Smart Home

Wszystkie artykuły w tej kategorii (18) Śledź tę kategorię przez RSS

Tworzenie stron internetowych

Wszystkie artykuły w tej kategorii (11) Śledź tę kategorię przez RSS

Wtyczki i triki WordPress

Wszystkie artykuły w tej kategorii (12) Śledź tę kategorię przez RSS