Nieprzypisane wizyty w GA4: wyszukiwanie i usuwanie przyczyn „Unassigned”

Management Summary
Google Analytics przypisuje wizyty do kanałów, takich jak wyszukiwanie czy reklama, aby wyjaśniać źródła ruchu na stronie. „Unassigned” oznacza, że dostępne informacje nie pasują do reguły żadnego kanału. Utrudnia to porównania marketingowe, ale nie dowodzi konkretnej awarii pomiaru. Artykuł wyjaśnia wpływ nazw kampanii, linków i przebiegu wizyty na klasyfikację. Poprawa przyszłych danych i inne pogrupowanie historii to dwa odrębne działania.
Spis treści
„Unassigned” w GA4 oznacza brak pasującej reguły kanału. Wartość wskazuje brak klasyfikacji, ale nie konkretną przyczynę. Znaczenie mogą mieć nietypowe wartości kampanii, brak informacji o sesji lub błędna kolejność zdarzeń. Diagnoza zaczyna się od właściwego raportu i wizyty testowej z możliwym do prześledzenia przebiegiem.
1. Ustalenie zakresu raportu
Dla sesji należy zestawić Session default channel group z Session source / medium. Pozyskiwanie użytkowników opisuje pierwsze źródło użytkownika, a wymiary kanałów o zakresie zdarzenia odpowiadają na inne pytania. Różne zakresy mogą dawać różne wyniki, lecz nie tworzą automatycznie Unassigned.
Kontrola obejmuje zakończony okres, spójne filtry i wskaźnik jakości danych. (other) jest zbiorczym wierszem używanym, gdy raport zawiera zbyt wiele różnych wartości wymiarów, nie Unassigned. (not set) oznacza brak informacji dla danego wymiaru, ale nie wskazuje miejsca awarii.

2. Porównanie wartości kampanii z rzeczywistymi regułami
Przy ręcznym tagowaniu utm_medium=email jest czytelnym wyborem dla kampanii e-mailowej. Medium newsletter samo nie spełnia reguły E-mail. Nie musi to jednak oznaczać Unassigned: źródło, nazwa kampanii lub inne reguły mogą wskazać inny kanał. Organic Search może zostać rozpoznane także przez znane źródło wyszukiwania. Ruch Google Ads dodatkowo wykorzystuje dane integracji, takie jak sieć i typ kampanii.
https://example.com/oferta?utm_source=mailchimp&utm_medium=email&utm_campaign=october-promo
Domyślne definicje kanałów nie rozróżniają wielkości liter. Różna pisownia nadal może tworzyć osobne wiersze źródła lub kampanii, dlatego spójne nazwy pozostają potrzebne. Brak medium może utrudnić klasyfikację, lecz nie uniemożliwia jej w każdym przypadku.
Grupa domyślna nie jest edytowalna. Własna grupa kanałów może inaczej sklasyfikować istniejące wartości historyczne, ale nie naprawia samych danych. Poprawione linki zmieniają przyszłe zbieranie. Pełna ocena uwzględnia reguły łącznie, zamiast uznawać pojedyncze wartości medium za zawsze poprawne albo błędne.
3. Techniczne badanie brakujących wartości
Google wskazuje brak session_start jako przyczynę (not set) dla źródła i medium sesji. Kontrola obejmuje więc konfigurację tagu Google przed tagami zdarzeń, spójne ustawienia cookies, identyfikatory sesji i prawidłowe aktualizacje zgody. Rzeczywista wartość źródła również nie dowodzi kompletności pozostałych pól.
- Przekierowania: Prześledzenie parametrów testowych przez cały łańcuch aż do żądania pomiarowego. Utrata UTM może prowadzić także do Direct, zamiast Unassigned.
- Aplikacje jednostronicowe: Kontrola, czy router albo porządkowanie URL zmienia adres wejściowy przed dozwolonym pomiarem. Konfiguracja i pierwszy page view wymagają właściwego adresu bez przypadkowego podwójnego pomiaru.
- Zmiany domeny: Dla wspólnie mierzonych własnych domen kontrola tej samej G-ID, konfiguracji domen i przyjęcia parametru
_gl. Operator płatności bez własnego tagu witryny nie jest po prostu kolejną mierzoną własną domeną.
Powrót od operatora płatności nie musi rozpoczynać nowej sesji. Ignorowanie niepożądanych odesłań wyłącza ich użycie jako źródła, ale nie usuwa automatycznie całej istniejącej atrybucji. Pomiar międzydomenowy i lista niepożądanych odesłań rozwiązują różne problemy.

4. Poprawna interpretacja zgody
Basic Consent Mode z blokowaniem tagów przed zgodą jest udokumentowanym sposobem wdrożenia. Brak pomiaru w tym czasie nie uzasadnia dowolnego omijania przyjętej logiki zgody. Advanced Consent Mode może wysyłać sygnały bez cookies przy odmowie zapisu, lecz nie gwarantuje kompletnej atrybucji sesji.
Aktualizacja zgody musi zadziałać na stronie, na której decyzja się zmienia. Ponowne polecenie default zamiast update albo natychmiastowa nawigacja mogą zakłócić przypisanie danych. Zapis reklamowy i analityczny to osobne stany.
URL passthrough jest opcjonalnym mechanizmem z określonymi warunkami, dotyczącym linków w tej samej domenie. Nie zastępuje pełnej konfiguracji międzydomenowej ani wszystkich brakujących danych kampanii. Modelowane liczby użytkowników i sesji wymagają wystarczających odpowiednich danych; nie każda usługa spełnia warunki. Surowe zdarzenia, obserwowane sesje i modelowane wyniki raportu to różne poziomy.
5. BigQuery jako diagnostyka zdarzeń
collected_traffic_source zawiera źródło zebrane ze zdarzeniem. Nie jest automatycznie przypisanym źródłem sesji; dla atrybucji sesji istnieje session_traffic_source_last_click. Dostępne pola zagnieżdżone i ich historyczne wypełnienie wymagają sprawdzenia w rzeczywistym schemacie eksportu. Ogólne założenie, że eksport nigdy nie zawiera informacji o kanałach, nie jest wiarygodną podstawą.
Poniższe zapytanie celowo liczy wiersze zdarzeń i zdarzenia session_start, nie unikalne sesje ani procent Unassigned. Wartości null pozostają widoczne. Projekt, zbiór i daty wymagają dostosowania; używane są tabele dzienne.
SELECT
collected_traffic_source.manual_source AS collected_source,
collected_traffic_source.manual_medium AS collected_medium,
COUNT(*) AS event_rows,
COUNTIF(event_name = 'session_start') AS session_start_events
FROM `project.analytics_XXXXXXXXX.events_*`
WHERE _TABLE_SUFFIX BETWEEN '20260901' AND '20260930'
GROUP BY collected_source, collected_medium
ORDER BY event_rows DESC, collected_source, collected_medium;
Zdarzenia jednej sesji mogą mieć różne zebrane wartości źródła. Null nie dowodzi utraty parametrów ani Direct. Unikalne sesje eksportu wymagają właściwego zestawu identyfikatorów strumienia, użytkownika i sesji, z osobną kontrolą braków. Filtr session_start ukryłby właśnie zdarzenia bez początku sesji. Porównanie z raportami uwzględnia także modelowanie, aktualność i odmienną atrybucję.
Pytania i odpowiedzi
Jak wykazać problem przekierowania?
Zachowany dziennik sieci przeglądarki pokazuje nawigację i żądanie pomiarowe. curl -sIL sprawdza nagłówki HTTP, ale używa HEAD i nie uruchamia JavaScriptu. Decydują rzeczywisty adres docelowy oraz wysłane wartości, nie pojedynczy nagłówek Location.
Czy zapisanie adresu wejściowego pomaga?
Aplikacja jednostronicowa (SPA) może zmieniać widok i adres URL bez pobierania nowego dokumentu. Zachowanie pierwotnego adresu wejściowego może zapobiec przypadkowemu użyciu późniejszego adresu w pomiarze po takiej zmianie. Przekazanie jako page_location musi odpowiadać pierwszemu pomiarowi i respektować decyzję o zgodzie. Adres nie powinien zawierać zbędnych danych osobowych. Nie odtwarza to automatycznie utraconej tożsamości ani pełnej atrybucji.
Czy mały stabilny udział Unassigned jest nieszkodliwy?
Liczba i procent wymagają interpretacji względem wolumenu, kampanii i wdrożenia. Sama stabilność nie dowodzi poprawnego pomiaru. Porównanie przed zmianą i po zmianie wymaga tych samych definicji i dostatecznie zakończonych danych.
Źródła
- GA4: Domyślna grupa kanałów
- GA4: Wartości (not set)
- GA4: Dobre praktyki tagowania
- GA4: Własne grupy kanałów
- GA4: Ruch bezpośredni
- GA4: Pomiar międzydomenowy
- GA4: Niepożądane odesłania
- Google: Wdrażanie trybu zgody
- Google: Podstawowy i zaawansowany tryb zgody
- GA4: Modelowanie behawioralne
- GA4: Schemat eksportu BigQuery
- GA4: Eksport BigQuery
- GA4: Przewodnik programisty
Kontrola w praktyce: rzeczywiste wiersze pozyskiwania
Audyt pozyskiwania w testerze kanałów uzupełnia przykłady reguł kanałów o sprawdzenie danych z raportów. Po autoryzacji Google zapytanie dotyczy wybranej usługi i jawnie określonego zakresu dat. Narzędzie pobiera źródło, medium, kampanię oraz domyślną grupę kanałów na poziomie sesji, razem z liczbą sesji. Dane o pozyskaniu użytkownika po raz pierwszy pozostają oddzielone od danych o pozyskiwaniu poszczególnych sesji.
- Wybór zakończonego okresu raportowania. Najnowsze dane mogą się jeszcze zmieniać.
- Kontrola wierszy Unassigned od największych wartości sesji. Porównanie źródła i medium z opisanymi regułami kanałów.
- Sprawdzenie wariantów takich jak
Emailiemailoraz dodatkowych spacji w kampanii. Kandydat oznacza niespójność nazewnictwa do zbadania, a nie automatyczną poprawkę. - Kontrola metadanych przed interpretacją. Progi, próbkowanie i wiersz
(other)mogą ukrywać szczegóły. - 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 wyniki, jeśli przy pobieraniu kolejnych stron danych brakuje którejś strony, 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.


