„(not set)" in GA4 - wo das Auditing wirklich anfängt
(not set) ist das vielleicht häufigste Symptom in GA4-Reports - und
gleichzeitig das am häufigsten ignorierte. Wer einen Page-Title nicht
weiß, einen Channel nicht zuordnen kann oder eine sessionSource
verliert, hat im Reporting nichts mehr in der Hand. Der Auditor prüft
das auf zwei Ebenen.
Was im Code passiert
Page-Title (BigQuery-Sicht)
Der Check in app/queries/checks/page_quality.sql
klassifiziert jeden Page-View in eine Status-Klasse:
CASE
WHEN page_title IS NULL OR page_title = '' OR page_title = '(not set)'
THEN 'not_set_page'
WHEN page_title LIKE '%404%' OR page_title LIKE '%not found%'
THEN 'error_page'
ELSE 'ok'
END AS page_status
Traffic-Source (Data-API-Sicht)
Auf der Live-API-Seite prüft
app/services/ga4_api_check_service.py
den Anteil der Sessions mit sessionSource = (not set):
not_set_sessions = _safe_int(_get_single_metric_value(source_not_set_report))
share = (not_set_sessions / total_sessions) if total_sessions > 0 else 0.0
status_traffic = _evaluate_threshold(
share,
warning=THRESHOLDS["traffic_not_set_share"]["warning"], # 5 %
fail=THRESHOLDS["traffic_not_set_share"]["fail"], # 15 %
)
Schwellenwerte (kombiniert)
| Check | Grün | Gelb | Rot |
|---|---|---|---|
Page-Title (not set) |
<1 % | 1-5 % | >5 % |
sessionSource = (not set) |
<5 % | 5-15 % | >15 % |
Die beiden Schwellen sind bewusst unterschiedlich: Ein (not set)-Page-Title
ist immer ein Tracking-Bug (jede Seite hat einen Titel), während eine
gewisse (not set)-Quote bei Traffic-Sources unvermeidbar ist
(z. B. direkte Adress-Eingaben).
Typische Ursachen
<title>-Tag fehlt oder kommt zu spät - Single-Page-Applications, die den Titel erst nach dem erstenpage_viewüber JavaScript setzen, liefern dem GTM-Trigger einen leeren Wert.- UTM-Parameter fehlen - Organische Sessions landen im Fallback,
sobald
utm_sourcenicht durchgereicht wird. Newsletter-Klicks, Social-Posts und Affiliate-Links ohne UTM landen alle hier. - No-Referrer-Policy im Browser - Wenn die Site oder die
Werbeplattform
Referrer-Policy: no-referrersetzt, sieht GA4 weder Source noch Medium. - Bot-/Crawler-Traffic - Suchmaschinen-Bots ohne User-Agent-Klassifikation
landen oft als
(not set). - Ungetaggte Affiliate-Links - Partner setzen Links ohne UTM, der
Traffic landet als Direct oder
(not set).
„(not set)" vs. „Unassigned" und „landing page (not set)"
Drei Begriffe, die oft verwechselt werden:
(not set)- GA4 hat gar keinen Wert erhalten (Erfassungs- oder Timing-Problem). Betrifft Page-Title,sessionSourceund auch die Landing Page: „landing page(not set)" heißt, die erste Sitzung hatte kein gültigespage_viewmitpage_location- meist SPA-Timing, Consent-Lücke oder Redirect-Kette.- „Unassigned" - ein Wert ist da, lässt sich aber keiner Kanalgruppe zuordnen. Das ist ein Channel-/UTM-Problem, kein Erfassungsproblem - Details in Unassigned Traffic in GA4.
(not provided)- historisches UA-Relikt für verschlüsselte organische Keywords.
Wo der Auditor das Problem zeigt
Die Sektion create_page_quality_section in
app/components/dashboard/sections/content.py
zeigt die Page-Title-Probleme:
- Summary-Karten zu
(not set)- und Error-Page-Anteilen. - Detail-Tabelle mit konkreten URLs, Views und Status.
Den Traffic-Source-Anteil siehst du im Live-Check als eigene Karte - ohne dedizierte BigQuery-Sektion, aber mit klarer Ampel.
So gehst du vor
- Page-Title-
(not set)-Anteil zuerst - er ist immer behebbar.
- Bei SPAs den Titel direkt vor dem ersten
page_view-Tag setzen (z. B. via History-Change-Listener im GTM, der wartet bisdocument.titlebefüllt ist). - Bei Multi-Page-Apps prüfen, ob jede Seite einen
<title>-Tag im<head>hat.
sessionSource = (not set)zerlegen - über die GA4-UI nach Landing-Page gruppieren und die Top-Landing-Pages auditieren.- UTM-Disziplin etablieren - Newsletter-Tool, Social-Scheduler und Affiliate-Programme verpflichten, UTMs zu setzen.
- Referral-Exclusion prüfen - siehe Blog Bank- und Payment-Provider als Referrer und Self-Referrals.
- Im Auditor unter Attribution & Akquisitions-Qualität den Fortschritt nach 48 h prüfen.
Verwandte Themen
- Blog Unassigned Traffic in GA4 beheben
- Blog GA4-Audit-Checkliste
- Hilfeseite Attribution & Akquisitions-Qualität
- Hilfeseite Event-Qualität & PII-Hinweise
- Blog E-Commerce-Attribution: Live API vs. BigQuery
- Blog Wenn der
gclidda ist - und Google Ads trotzdem nicht
Häufig gestellte Fragen
- Was bedeutet (not set) in GA4?
- (not set) bedeutet, dass GA4 für ein Feld keinen Wert erhalten hat - etwa keinen Page-Title oder keine Traffic-Quelle. Bei Page-Titles ist es immer ein Tracking-Bug (jede Seite hat einen Titel), bei Traffic-Quellen ist ein kleiner Anteil normal (z. B. Direkteingaben).
- Was ist der Unterschied zwischen (not set), (not provided) und Unassigned?
- (not set): GA4 hat keinen Wert erhalten - ein Erfassungs- oder Timing-Problem. (not provided): historisch aus Universal Analytics für verschlüsselte organische Keywords. Unassigned: ein Wert ist vorhanden, passt aber in keine Kanalgruppe - ein Channel-Definitions- oder UTM-Problem.
- Wie behebe ich landing page (not set) in GA4?
- landing page (not set) entsteht meist, wenn die erste Sitzung kein gültiges page_view mit page_location hatte - durch Tag-Timing in Single-Page-Apps, Consent-Lücken oder Redirect-Ketten. Stelle sicher, dass page_view mit gültiger URL vor allen anderen Events feuert.