{"id":13205,"date":"2026-09-29T12:45:00","date_gmt":"2026-09-29T10:45:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=13205"},"modified":"2026-09-25T15:07:51","modified_gmt":"2026-09-25T13:07:51","slug":"tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/","title":{"rendered":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet"},"content":{"rendered":"<p>Eine Adresse in der Browserzeile sieht aus wie eine einzige Zeichenkette. Auf ihrem Weg in einen Bericht durchl\u00e4uft sie vier Systeme, und jedes davon beh\u00e4lt einen anderen Teil.<\/p>\n<p>Das meiste daran ist erwartbar. Ein Teil nicht: Alles hinter der Raute erreicht den Webserver \u00fcberhaupt nie und erreicht die Analyse-Property vollst\u00e4ndig &#8211; das Gegenteil dessen, was die meisten annehmen, und es entscheidet, wo die Routen einer Einzelseitenanwendung landen.<\/p>\n<figure class=\"lw-diagram\">\n<img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/page-location-lesen-de.png\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"Eine Adresse aufgeteilt in Host, Pfad, Abfrage und Fragment, dazu eine Matrix, die je Teil zeigt, ob Serverprotokoll, page_location, pagePathPlusQueryString und pagePath ihn enthalten\"><figcaption>Vier Systeme, vier verschiedene Auswahlen. Die Fragmentzeile ist die, die anders l\u00e4uft als alle anderen.<\/figcaption><\/figure>\n<h2>Die Teile einer Adresse und wer welchen sieht<\/h2>\n<p>Eine Adresse setzt sich aus f\u00fcnf St\u00fccken zusammen, und die Trennzeichen dazwischen sind das, wonach ein Parser sucht.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>https:\/\/shop.example\/kasse\/schritt-2?utm_source=newsletter&amp;gclid=Cj0KEQ#zahlung\n\u2514\u2500\u252c\u2500\u2518   \u2514\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2518\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\u2514\u2500\u2500\u2500\u252c\u2500\u2500\u2518\nSchema     Host          Pfad                  Abfrage                Fragment<\/code><\/pre>\n<p>Der Webserver bekommt den Host in einem Header und Pfad und Abfrage in der Anfragezeile. Das Fragment bekommt er nie, denn der Browser sendet es nicht &#8211; dieser Teil ist als clientseitig festgelegt und bleibt dort. Kein Zugriffsprotokoll, kein vorgelagerter Server und keine serverseitige Regel sieht ihn.<\/p>\n<p>Das Analyse-Tag l\u00e4uft im Browser, liest <code>document.location.href<\/code>, und diese Zeichenkette enth\u00e4lt alles einschlie\u00dflich des Fragments. Der Wert in <code>page_location<\/code> ist damit vollst\u00e4ndiger als alles, was der Server hat.<\/p>\n<h2>Das Fragment und wo es landet<\/h2>\n<p>Am meisten z\u00e4hlt das f\u00fcr Anwendungen, die ihre Wegf\u00fchrung in das Fragment legen. Ein Pfad der Form <code>\/#\/produkt\/42<\/code> ist f\u00fcr den Server eine einzige Seite &#8211; er sieht immer nur <code>\/<\/code> -, w\u00e4hrend die Analyse-Property f\u00fcr jede Route ein eigenes <code>page_location<\/code> erh\u00e4lt.<\/p>\n<p>Daraus folgen drei Dinge, und sie ziehen in verschiedene Richtungen.<\/p>\n<p>Eine serverseitige Messung einer solchen Anwendung ist ohne Hilfe unm\u00f6glich: Eine Protokollauswertung sieht eine Seite und hunderttausend Aufrufe. Das ist das Argument f\u00fcr clientseitige Messung, das nichts anderes ersetzt.<\/p>\n<p>Ein serverseitiges Schw\u00e4rzen einer solchen Anwendung ist ebenso unm\u00f6glich. Ein Fragment mit einer Bestellnummer oder einer Mailadresse l\u00e4sst sich von keinem vorgelagerten Server entfernen, denn dieser bekommt es nie &#8211; die einzige Stelle zum Entfernen ist der Browser, bevor das Tag liest.<\/p>\n<p>Und die Berichtsdimensionen behandeln es uneinheitlich, was der praktische Teil ist.<\/p>\n<h2>Was jede Dimension tats\u00e4chlich enth\u00e4lt<\/h2>\n<p>GA4 speichert einen Parameter und leitet daraus mehrere Dimensionen ab &#8211; und jede Ableitung l\u00e4sst etwas weg.<\/p>\n<table style=\"width:100%;border-collapse:collapse\">\n<thead>\n<tr>\n<th style=\"white-space:nowrap;vertical-align:top\">Dimension<\/th>\n<th style=\"vertical-align:top\">Inhalt f\u00fcr das Beispiel oben<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"white-space:nowrap;vertical-align:top\">Seitenadresse<\/td>\n<td>https:\/\/shop.example\/kasse\/schritt-2?utm_source=\u2026&amp;gclid=\u2026#zahlung<\/td>\n<\/tr>\n<tr>\n<td style=\"white-space:nowrap;vertical-align:top\">Hostname<\/td>\n<td>shop.example<\/td>\n<\/tr>\n<tr>\n<td style=\"white-space:nowrap;vertical-align:top\">Seitenpfad und Abfragezeichenfolge<\/td>\n<td>\/kasse\/schritt-2?utm_source=newsletter&amp;gclid=Cj0KEQ<\/td>\n<\/tr>\n<tr>\n<td style=\"white-space:nowrap;vertical-align:top\">Seitenpfad<\/td>\n<td>\/kasse\/schritt-2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Das Fragment erscheint nur in der ersten Zeile. Das hei\u00dft: Ein nach Seitenpfad gruppierter Bericht zeigt f\u00fcr eine rautengef\u00fchrte Anwendung eine Zeile, und derselbe Bericht nach Seitenadresse gruppiert zeigt hundert &#8211; und beides sind dieselben Daten.<\/p>\n<p>Die Abfragezeichenfolge ist das Zweite, worauf zu achten ist. Sie steht in zwei der vier Dimensionen, und jeder Parameter darin wird Teil des Werts: Eine Seite, die mit einem <code>gclid<\/code> erreicht wurde, und dieselbe Seite ohne sind zwei verschiedene Zeilen. Auf einem Auftritt mit Kampagnenverkehr zerlegt das allein eine einzelne Seite in Dutzende.<\/p>\n<h2>Die L\u00e4ngenbegrenzung<\/h2>\n<p>Die meisten Ereignisparameter in GA4 nehmen hundert Zeichen an. Die Seitenadresse ist ein Sonderfall und nimmt tausend &#8211; gro\u00dfz\u00fcgig und nicht unbegrenzt.<\/p>\n<p>Eine l\u00e4ngere Adresse wird gek\u00fcrzt, und die K\u00fcrzung ist still. Wehtun tut sie genau dort, wo Adressen lang werden: eine gefilterte Kategorieseite mit acht Merkmalen, ein Suchergebnis mit der Anfrage in der Adresse und eine rautengef\u00fchrte Anwendung, deren Route einen Zustand tr\u00e4gt.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>\/\/ vor dem Tag pruefen, wie lang die Adresse tatsaechlich ist\nconsole.log(document.location.href.length,\n            document.location.href.slice(0, 120));<\/code><\/pre>\n<p>Wo die Grenze ein echtes Risiko ist, lautet die Antwort: absichtlich k\u00fcrzen, statt die Plattform schneiden zu lassen. Ein <code>page_location<\/code>-Ersatz, der den Pfad und nur die wichtigen Parameter beh\u00e4lt, ist zugleich k\u00fcrzer und n\u00fctzlicher, denn er entfernt auch die Kampagnenparameter, die die Seite in Dutzende Zeilen zerlegt haben.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>function () {\n  var behalten = [\"seite\", \"sortierung\", \"filter\"];\n  var u = new URL(document.location.href);\n  var neu = new URL(u.origin + u.pathname);\n\n  behalten.forEach(function (name) {\n    if (u.searchParams.has(name)) {\n      neu.searchParams.set(name, u.searchParams.get(name));\n    }\n  });\n  return neu.href;          \/\/ ohne Fragment, ohne Kampagnenparameter\n}<\/code><\/pre>\n<p>Eine Warnung zu dieser Variablen: N\u00f6tig ist sie am Seitenaufruf-Tag und an jedem Ereignis-Tag, sonst f\u00fchrt die Property zwei verschiedene Vorstellungen derselben Seite. Und die Kampagnenparameter m\u00fcssen gelesen werden, bevor sie entfernt werden &#8211; das Konfigurationstag braucht die urspr\u00fcngliche Adresse, sonst verschwindet die Zuordnung mit ihnen.<\/p>\n<h2>Einzelseitenanwendungen: im richtigen Augenblick lesen<\/h2>\n<p>Ein Seitenaufbau liest die Adresse einmal. Ein Wegwechsel in einer Anwendung l\u00e4dt nichts neu, also liest sie niemand erneut, solange es niemandem gesagt wird.<\/p>\n<p>Daraus entsteht die h\u00e4ufigste falsche Zahl in diesem ganzen Bereich: Die zweite Route einer Sitzung meldet die Adresse der ersten, weil das Tag ausgel\u00f6st hat, bevor das Ger\u00fcst die Adresse aktualisiert hatte. Die Reihenfolge dieser beiden Vorg\u00e4nge ist eine Eigenschaft des Ger\u00fcsts und nicht des Tag-Managers.<\/p>\n<pre class=\"wp-block-kevinbatdorf-code-block-pro\"><code>\/\/ erst nach der Adressaenderung melden, nicht davor\n(function () {\n  var alt = document.location.href;\n  [\"pushState\", \"replaceState\"].forEach(function (name) {\n    var original = history[name];\n    history[name] = function () {\n      var r = original.apply(this, arguments);\n      melde();\n      return r;\n    };\n  });\n  window.addEventListener(\"popstate\", melde);\n  window.addEventListener(\"hashchange\", melde);\n\n  function melde() {\n    if (document.location.href === alt) { return; }\n    alt = document.location.href;\n    window.dataLayer.push({\n      event: \"seitenwechsel\",\n      seite_adresse: document.location.href,\n      seite_titel: document.title\n    });\n  }\n})();<\/code><\/pre>\n<p>Zwei Einzelheiten in diesem St\u00fcck leisten echte Arbeit. Der Vergleich mit der vorherigen Adresse unterdr\u00fcckt die Doppelereignisse, die ein Ger\u00fcst erzeugt, wenn es den Zustand ersetzt, ohne die Route zu \u00e4ndern. Und <code>hashchange<\/code> steht eigens da, denn eine reine Rauten\u00e4nderung l\u00e4uft nicht immer \u00fcber <code>pushState<\/code> &#8211; und das ist genau der Fall bei den Anwendungen, die ihre Routen im Fragment f\u00fchren.<\/p>\n<p>Der Titel lohnt sich aus demselben Grund mitzugeben wie die Adresse: Er \u00e4ndert sich nach der Route, und ein Tag, das ihn zu fr\u00fch liest, meldet den Titel der vorigen Seite zum Pfad der aktuellen. Ein solches Paar f\u00e4llt in einem Bericht leicht auf und l\u00e4sst sich ohne dieses Wissen schwer erkl\u00e4ren.<\/p>\n<h2>Entscheiden, was in den Bericht geh\u00f6rt<\/h2>\n<p>Alles Bisherige beschreibt, was m\u00f6glich ist. Die Entscheidung lautet, was dort stehen soll, und drei Fragen kl\u00e4ren das.<\/p>\n<p>Welche Parameter unterscheiden Seiten, und welche kennzeichnen nur, wie jemand angekommen ist. Sortierung und Bl\u00e4tterung unterscheiden; <code>gclid<\/code>, <code>fbclid<\/code> und der Kampagnensatz tun es nicht &#8211; und sie in der Seitendimension zu lassen zerlegt jede Einstiegsseite in einen langen Schwanz von Zeilen mit je einem Aufruf.<\/p>\n<p>Ob das Fragment eine Angabe tr\u00e4gt oder eine Position. Eine Route geh\u00f6rt in den Bericht; ein Anker auf eine \u00dcberschrift ist Rauschen, und beides sieht im Wert gleich aus.<\/p>\n<p>Und ob irgendetwas darin personenbezogen ist. An dieser Stelle kehrt die fr\u00fchere Frage nach dem Schw\u00e4rzen mit sch\u00e4rferer Kante zur\u00fcck: Ein Wert im Fragment l\u00e4sst sich von keiner Regel auf dem Webserver abfangen, von keinem vorgelagerten Server, und ist, bevor er das Ger\u00e4t verl\u00e4sst, allein im Browser entfernbar &#8211; womit das Tag die letzte Linie ist statt einer Bequemlichkeit.<\/p>\n<div class=\"lw-faq\">\n<h2>Fragen und Antworten<\/h2>\n<h3>L\u00e4sst sich eine rautengef\u00fchrte Anwendung per Server-Weiterleitung auf echte Pfade umstellen?<\/h3>\n<p>Nicht allein auf dem Server. Eine Anfrage an \/#\/produkt\/42 kommt dort als \/ an, der Server wei\u00df also nicht, welche Route gemeint war, und kann keine passende Weiterleitung w\u00e4hlen. Leitet er \/ pauschal auf eine neue Adresse um, h\u00e4ngt der Browser das Fragment selbst wieder an: Der HTTP-Standard legt fest, dass ein Weiterleitungsziel ohne eigenes Fragment das Fragment der urspr\u00fcnglichen Adresse erbt. Aus \/#\/produkt\/42 wird so \/app\/#\/produkt\/42, nicht \/app\/produkt\/42.<\/p>\n<p>Die \u00dcbersetzung der alten Routen muss deshalb im Browser geschehen: Ein kleines Skript liest <code>location.hash<\/code> und ersetzt die Adresse per <code>history.replaceState<\/code> oder <code>location.replace<\/code> durch den neuen Pfad. Das sollte passieren, bevor das Analyse-Tag den ersten Seitenaufruf meldet, sonst erscheint jede alte Adresse noch einmal als eigener Aufruf.<\/p>\n<p>In den Berichten bricht die Umstellung die Zeitreihe. Vorher standen alle Routen unter einem einzigen Seitenpfad und unterschieden sich nur in der Seitenadresse, danach verteilen sie sich auf eigene Seitenpfade. Ein Vergleich \u00fcber den Umstellungstag hinweg braucht deshalb eine Zuordnung der alten Fragmente zu den neuen Pfaden.<\/p>\n<h3>Meldet das Skript aus dem Artikel auch Spr\u00fcnge zu Ankern auf derselben Seite?<\/h3>\n<p>Ja. Ein Klick auf einen Anker \u00e4ndert <code>document.location.href<\/code> und l\u00f6st hashchange aus, und der Vergleich mit der vorherigen Adresse l\u00e4sst das Ereignis durch, weil sich die Adresse tats\u00e4chlich ge\u00e4ndert hat. Auf Seiten mit Inhaltsverzeichnis entsteht so ein Seitenwechsel je Sprung. Abhilfe schafft eine zus\u00e4tzliche Bedingung, die das Fragment nur z\u00e4hlt, wenn es eine Route tr\u00e4gt, etwa wenn es mit <code>#\/<\/code> beginnt.<\/p>\n<h3>Sieht ein serverseitiger Container das Fragment?<\/h3>\n<p>Ja, aber auf anderem Weg als der Webserver. Der Container bekommt nicht die Seitenanfrage, sondern die Messanfrage des Tags, und darin steht page_location als Wert, samt Fragment, so wie das Tag es aus <code>document.location.href<\/code> gelesen hat. Dort l\u00e4sst sich der Wert umschreiben oder k\u00fcrzen, bevor er an die Analyse-Property weitergeht.<\/p>\n<p>F\u00fcr personenbezogene Angaben im Fragment \u00e4ndert das wenig: Wenn der Container sie entfernt, haben sie den Browser bereits verlassen und liegen auf dem eigenen Server, wo sie je nach Einstellung auch in Protokollen landen k\u00f6nnen. Soll ein Wert das Ger\u00e4t gar nicht erst verlassen, muss er weiterhin im Browser entfernt werden, bevor das Tag liest.<\/p>\n<\/div>\n<div class=\"lw-quellen\">\n<h2>Quellen<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc3986.html\" target=\"_blank\" rel=\"noopener noreferrer\">RFC 3986: URI Generic Syntax<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Eine Adresse hat f\u00fcnf Teile, und jedes System auf dem Weg sieht eine andere Auswahl davon. Der Teil hinter der Raute ist der \u00fcberraschende: in jedem Serverprotokoll unsichtbar und vom Analyse-Tag vollst\u00e4ndig gespeichert.<\/p>\n","protected":false},"author":1,"featured_media":13271,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[115],"tags":[92091,92235,92110],"class_list":["post-13205","post","type-post","status-publish","format-standard","hentry","category-tutorials-de","tag-google-analytics-4-de","tag-tutorial-de","tag-web-analytics-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-29T10:45:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lukas Wojcik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lukas Wojcik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet\",\"datePublished\":\"2026-09-29T10:45:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/\"},\"wordCount\":1432,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13205-tutorial-was-in-page-location-ankommt-un.png\",\"keywords\":[\"Google Analytics 4\",\"Tutorial\",\"Web Analytics\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/\",\"name\":\"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13205-tutorial-was-in-page-location-ankommt-un.png\",\"datePublished\":\"2026-09-29T10:45:00+00:00\",\"description\":\"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13205-tutorial-was-in-page-location-ankommt-un.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-13205-tutorial-was-in-page-location-ankommt-un.png\",\"width\":1200,\"height\":630,\"caption\":\"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/tutorials-de\\\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"Lukas Wojcik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"Lukas Wojcik\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik","description":"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/","og_locale":"en_US","og_type":"article","og_title":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik","og_description":"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-09-29T10:45:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet","datePublished":"2026-09-29T10:45:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/"},"wordCount":1432,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png","keywords":["Google Analytics 4","Tutorial","Web Analytics"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/","url":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/","name":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png","datePublished":"2026-09-29T10:45:00+00:00","description":"Welcher Teil einer Adresse welches System erreicht, warum das Fragment im Serverprotokoll fehlt und in GA4 steht, und was jede Seitendimension enth\u00e4lt.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-13205-tutorial-was-in-page-location-ankommt-un.png","width":1200,"height":630,"caption":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/tutorials-de\/tutorial-was-in-page_location-ankommt-und-warum-das-fragment-nie-beim\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Tutorial: Was in page_location ankommt und warum das Fragment nie beim Server landet"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"Lukas Wojcik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"Lukas Wojcik"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13205","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=13205"}],"version-history":[{"count":3,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13205\/revisions"}],"predecessor-version":[{"id":20844,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13205\/revisions\/20844"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/13271"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=13205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=13205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=13205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}