{"id":358,"date":"2026-07-15T23:14:27","date_gmt":"2026-07-15T21:14:27","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=358"},"modified":"2026-10-24T01:19:14","modified_gmt":"2026-10-23T23:19:14","slug":"tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/","title":{"rendered":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis"},"content":{"rendered":"<p>Skr\u00f3cenie IP po stronie serwera zmienia adres dost\u0119pny dla kolejnych us\u0142ug. Kr\u00f3tsza warto\u015b\u0107 nie zapewnia anonimowo\u015bci zdarzenia: identyfikatory, adresy URL i inne pola nadal mog\u0105 umo\u017cliwia\u0107 powi\u0105zanie z osob\u0105. Podstaw\u0105 jest okre\u015blenie zakresu wysy\u0142anych danych, wdro\u017cenie regu\u0142y i kontrola rzeczywistych \u017c\u0105da\u0144.<\/p>\n<h2>1. sGTM: regu\u0142a wyj\u015bciowa przed konfiguracj\u0105 tagu<\/h2>\n<p>Google dokumentuje <code>ip_override<\/code> jako wsp\u00f3lne pole danych zdarzenia dla IPv4 lub IPv6. Dane zdarzenia musi najpierw przygotowa\u0107 klient kontenera. Istnienie i znaczenie dodatkowego pola <code>ip<\/code> zale\u017cy od klienta. Nieudokumentowana warto\u015b\u0107 zast\u0119pcza mo\u017ce omin\u0105\u0107 zamierzon\u0105 regu\u0142\u0119.<\/p>\n<p>W kontenerze serwerowym nale\u017cy utworzy\u0107 szablon zmiennej z uprawnieniem odczytu <code>ip_override<\/code>. Poni\u017cszy przyk\u0142ad akceptuje wy\u0142\u0105cznie prawid\u0142owy zapis IPv4 z czterema dziesi\u0119tnymi oktetami i zeruje czwarty oktet. Odrzuca IPv6, brakuj\u0105ce warto\u015bci i b\u0142\u0119dne dane. To przyk\u0142ad dla IPv4, a nie pe\u0142ne wdro\u017cenie dla ruchu IPv4\/IPv6.<\/p>\n<pre class=\"wp-block-code-beautifier-block-code\"><code>const getEventData = require(&#x27;getEventData&#x27;);\nconst createRegex = require(&#x27;createRegex&#x27;);\nconst testRegex = require(&#x27;testRegex&#x27;);\nconst makeNumber = require(&#x27;makeNumber&#x27;);\nconst ip = getEventData(&#x27;ip_override&#x27;);\nconst digits = createRegex(&#x27;^(0|[1-9][0-9]{0,2})$&#x27;);\nif (typeof ip !== &#x27;string&#x27; || !digits) return undefined;\nconst parts = ip.split(&#x27;.&#x27;);\nif (parts.length !== 4) return undefined;\nfor (let i = 0; i &lt; 4; i++) {\n  if (!testRegex(digits, parts[i]) || makeNumber(parts[i]) &gt; 255) {\n    return undefined;\n  }\n}\nreturn parts.slice(0, 3).join(&#x27;.&#x27;) + &#x27;.0&#x27;;<\/code><\/pre>\n<p>Po zapisaniu szablonu nale\u017cy utworzy\u0107 zmienn\u0105 i przypisa\u0107 wynik do nadpisania <code>ip_override<\/code> w tagu GA4. Osobny warunek wyzwalacza musi blokowa\u0107 wysy\u0142k\u0119 w tym przyk\u0142adzie, gdy zmienna nie zwraca warto\u015bci. Sam wynik undefined nie dowodzi pomini\u0119cia pierwotnego adresu; konieczna jest kontrola warto\u015bci zast\u0119pczych w szablonie tagu. Obs\u0142uga IPv6 w produkcji wymaga sprawdzonego parsera adres\u00f3w i okre\u015blonej regu\u0142y prefiksu.<\/p>\n<p>Transformacje mog\u0105 r\u00f3wnie\u017c zmienia\u0107 lub wyklucza\u0107 parametry zdarze\u0144 dla wybranych tag\u00f3w. Znaczenie ma wyb\u00f3r tag\u00f3w i kolejno\u015b\u0107 transformacji. Zmiana danych zdarzenia nie usuwa przychodz\u0105cego \u017c\u0105dania HTTP ani log\u00f3w infrastruktury.<\/p>\n<figure class=\"lw-diagram\"><img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/dia-358-serverip-20261024.png\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"R\u00f3\u017cne etapy przetwarzania wymagaj\u0105 osobnych regu\u0142 i test\u00f3w.\"><figcaption>R\u00f3\u017cne etapy przetwarzania wymagaj\u0105 osobnych regu\u0142 i test\u00f3w.<\/figcaption><\/figure>\n<h2>2. Adobe: osobne ustawienia maskowania i geolokalizacji<\/h2>\n<p>W <strong>Datastreams \u2192 Advanced Options \u2192 IP Obfuscation<\/strong> opcja <em>Partial<\/em> zeruje ostatni oktet IPv4 lub ostatnie 80 bit\u00f3w IPv6, a <em>Full<\/em> ca\u0142y adres. Geo Lookup dzia\u0142a wcze\u015bniej i wymaga osobnego ograniczenia. Kolejne us\u0142ugi mog\u0105 reagowa\u0107 inaczej; pe\u0142ne maskowanie wp\u0142ywa np. na filtry IP w Adobe Analytics. To ustawienie strumienia, nie prze\u0142\u0105cznik \u201eMask IP Address\u201d us\u0142ugi Analytics.<\/p>\n<h2>3. Jentis: funkcje przekszta\u0142cania a tryb dzia\u0142ania<\/h2>\n<p>Jentis dokumentuje funkcje IPv4 losowo zast\u0119puj\u0105ce jedn\u0105, dwie, trzy lub wszystkie cz\u0119\u015bci adresu. Og\u00f3lna pseudonimizacja tekstu mo\u017ce tworzy\u0107 nieprawid\u0142owe adresy IP. Nie oznacza to uniwersalnej regu\u0142y \u201eostatni oktet na zero\u201d. Funkcja, typ wej\u015bcia i odbiorca wymagaj\u0105 sprawdzenia.<\/p>\n<p>Essential Mode jest odr\u0119bnym trybem z ustawieniami zale\u017cnymi od dostawcy, tagu i zgody. Jentis opisuje zast\u0119powanie IP adresem serwera w komunikacji z podmiotami trzecimi w tym trybie. Rozstrzyga konkretna konfiguracja.<\/p>\n<h2>4. Raporty lokalizacji: pomiar skutk\u00f3w<\/h2>\n<p>Wed\u0142ug Google GA4 okre\u015bla lokalizacj\u0119 podczas zbierania danych, po czym odrzuca IP przed zapisaniem w logach. Wcze\u015bniejsze skr\u00f3cenie zmienia dane wej\u015bciowe. Dok\u0142adno\u015b\u0107 miasta i kraju zale\u017cy od zakresu adres\u00f3w, bazy geolokalizacji oraz \u015bcie\u017cki zbierania. Usuni\u0119cie oktetu nie oznacza gwarantowanego wzrostu \u201e(not set)\u201d ani gwarancji poprawnego kraju.<\/p>\n<p>W GA4 Measurement Protocol pole <code>user_location<\/code> przekazuje jawn\u0105 lokalizacj\u0119 i ma pierwsze\u0144stwo przed <code>ip_override<\/code>. To osobny interfejs; nie wynika z tego obs\u0142uga przez ka\u017cdy tag sGTM. Lokalizacja ustalona lokalnie tak\u017ce jest informacj\u0105 przekazywan\u0105 odbiorcy i wymaga okre\u015blonego zakresu.<\/p>\n<h2>5. Osobna walidacja Conversions API<\/h2>\n<p>Poprawna sk\u0142adnia adresu nie dowodzi zgodno\u015bci z wymaganym przez reklamowe API adresem urz\u0105dzenia. Meta u\u017cywa <code>user_data.client_ip_address<\/code>; LinkedIn u\u017cywa typowanych wpis\u00f3w w <code>user.userIds<\/code>, a dokumentowane typy IP obecnie akceptuj\u0105 tylko IPv4. Mapowanie p\u00f3l nie potwierdza obs\u0142ugi dowolnie skr\u00f3conych warto\u015bci. Zale\u017cnie od p\u00f3l obowi\u0105zkowych regu\u0142a prywatno\u015bci mo\u017ce wymaga\u0107 pomini\u0119cia identyfikatora lub zablokowania wysy\u0142ki.<\/p>\n<h2>6. Weryfikacja przed publikacj\u0105<\/h2>\n<ol>\n<li>Testy powinny obejmowa\u0107 zwyk\u0142e IPv4, skr\u00f3cone i pe\u0142ne IPv6, brak danych, b\u0142\u0119dne warto\u015bci oraz listy adres\u00f3w z nag\u0142\u00f3wk\u00f3w proxy. B\u0142\u0105d nie mo\u017ce po cichu przywraca\u0107 pe\u0142nego adresu.<\/li>\n<li>Podgl\u0105d serwera powinien obejmowa\u0107 wszystkich odbiorc\u00f3w, wychodz\u0105ce payloady i istotne nag\u0142\u00f3wki, r\u00f3wnie\u017c po zmianie zgody i dla wszystkich wariant\u00f3w tag\u00f3w.<\/li>\n<li>Raporty lokalizacji nale\u017cy por\u00f3wna\u0107 z udokumentowanym punktem odniesienia. Brakuj\u0105ce miasta i przesuni\u0119cia wymagaj\u0105 pomiaru, nie za\u0142o\u017cenia sta\u0142ej straty.<\/li>\n<li>Osobnej kontroli wymagaj\u0105 piksele przegl\u0105darki i logi dost\u0119pu; zmiana tagu serwerowego nie obejmuje tych \u015bcie\u017cek.<\/li>\n<\/ol>\n<div class=\"lw-faq\">\n<h2>Pytania i odpowiedzi<\/h2>\n<h3>Dlaczego pierwsze trzy grupy IPv6 rozdzielone dwukropkiem nie wystarcz\u0105?<\/h3>\n<p>Skr\u00f3cony zapis mo\u017ce pomija\u0107 grupy w r\u00f3\u017cnych miejscach. Dla <code>2001::1:2:3:4:5:6<\/code> prefiks \/48 to <code>2001:0:1::<\/code>. Podzia\u0142 na <code>::<\/code> i zachowanie lewej cz\u0119\u015bci b\u0142\u0119dnie daje <code>2001::<\/code>. Przed zastosowaniem regu\u0142y bitowej parser musi rozwin\u0105\u0107 i zweryfikowa\u0107 adres.<\/p>\n<h3>Czy haszowanie wystarczy?<\/h3>\n<p>Haszowanie i skracanie to r\u00f3\u017cne operacje. Deterministyczny skr\u00f3t IPv4 bez soli ma ma\u0142\u0105 przestrze\u0144 kandydat\u00f3w: 2<sup>32<\/sup> adres\u00f3w. Sam skr\u00f3t nie zapewnia anonimowo\u015bci. Wymaganego przez API haszowania nie mo\u017cna te\u017c zast\u0105pi\u0107 dowoln\u0105 regu\u0142\u0105 maskowania.<\/p>\n<\/div>\n<div class=\"lw-quellen\">\n<h2>\u0179r\u00f3d\u0142a<\/h2>\n<ul>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\" target=\"_blank\" rel=\"noopener noreferrer\">Server-side tagging overview<\/a><\/li>\n<li><a href=\"https:\/\/eur-lex.europa.eu\/eli\/reg\/2016\/679\/oj\" target=\"_blank\" rel=\"noopener noreferrer\">Regulation (EU) 2016\/679 (GDPR)<\/a><\/li>\n<li><a href=\"https:\/\/developers.facebook.com\/docs\/marketing-api\/conversions-api\/parameters\/customer-information-parameters\" target=\"_blank\" rel=\"noopener noreferrer\">Meta Conversions API: Customer Information Parameters<\/a><\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/linkedin\/marketing\/integrations\/ads-reporting\/conversions-api-schema\" target=\"_blank\" rel=\"noopener noreferrer\">LinkedIn Conversions API Schema<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/common-event-data\" target=\"_blank\" rel=\"noopener noreferrer\">sGTM: Common event data<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/api\" target=\"_blank\" rel=\"noopener noreferrer\">sGTM: APIs<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/tag-manager\/server-side\/transformations\" target=\"_blank\" rel=\"noopener noreferrer\">sGTM: Transformations<\/a><\/li>\n<li><a href=\"https:\/\/experienceleague.adobe.com\/en\/docs\/experience-platform\/datastreams\/configure\" target=\"_blank\" rel=\"noopener noreferrer\">Adobe: Datastream configuration<\/a><\/li>\n<li><a href=\"https:\/\/jentis.atlassian.net\/wiki\/spaces\/DD\/pages\/845611086\" target=\"_blank\" rel=\"noopener noreferrer\">Jentis: Anonymization and pseudonymization functions<\/a><\/li>\n<li><a href=\"https:\/\/docs.jentis.com\/jentis-dcp-elements\/legal-hub\/jentis-essential-mode\" target=\"_blank\" rel=\"noopener noreferrer\">Jentis: Essential Mode<\/a><\/li>\n<li><a href=\"https:\/\/support.google.com\/analytics\/answer\/11598602?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">GA4: Regional data collection<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/analytics\/devguides\/collection\/protocol\/ga4\/reference\" target=\"_blank\" rel=\"noopener noreferrer\">GA4 Measurement Protocol<\/a><\/li>\n<li><a href=\"https:\/\/www.edpb.europa.eu\/sme\/find-practical-info\/faq_en\" target=\"_blank\" rel=\"noopener noreferrer\">EDPB: FAQ<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji. Poradnik rozr\u00f3\u017cnia konfiguracj\u0119 platform, przekazywanie zamaskowanych adres\u00f3w i wp\u0142yw na raporty geograficzne.<\/p>\n","protected":false},"author":1,"featured_media":13748,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[117],"tags":[92151,92100,92412,92136,92044,92238],"class_list":["post-358","post","type-post","status-publish","format-standard","hentry","category-tutorials-pl","tag-prywatnosc-danych-pl-pl","tag-google-analytics-4-pl","tag-pii-protection-pl","tag-server-side-gtm-pl","tag-tracking-pl","tag-tutorial-pl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.\" \/>\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\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-15T21:14:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-23T23:19:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis\",\"datePublished\":\"2026-07-15T21:14:27+00:00\",\"dateModified\":\"2026-10-23T23:19:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/\"},\"wordCount\":849,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-358-tutorial-anonimizacja-ip-server-side-g.png\",\"keywords\":[\"Data Privacy\",\"Google Analytics 4\",\"PII Protection\",\"Server-Side GTM\",\"Tracking\",\"Tutorial\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/\",\"name\":\"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-358-tutorial-anonimizacja-ip-server-side-g.png\",\"datePublished\":\"2026-07-15T21:14:27+00:00\",\"dateModified\":\"2026-10-23T23:19:14+00:00\",\"description\":\"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-358-tutorial-anonimizacja-ip-server-side-g.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-358-tutorial-anonimizacja-ip-server-side-g.png\",\"width\":1200,\"height\":630,\"caption\":\"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-analytics-pl\\\/tutorials-pl\\\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis\"}]},{\"@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: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik","description":"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.","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\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/","og_locale":"en_US","og_type":"article","og_title":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik","og_description":"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-07-15T21:14:27+00:00","article_modified_time":"2026-10-23T23:19:14+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis","datePublished":"2026-07-15T21:14:27+00:00","dateModified":"2026-10-23T23:19:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/"},"wordCount":849,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.png","keywords":["Data Privacy","Google Analytics 4","PII Protection","Server-Side GTM","Tracking","Tutorial"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/","url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/","name":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.png","datePublished":"2026-07-15T21:14:27+00:00","dateModified":"2026-10-23T23:19:14+00:00","description":"Maskowanie adres\u00f3w IP po stronie serwera: sGTM, Adobe i Jentis oraz wp\u0142yw na geolokalizacj\u0119 GA4 i interfejsy API konwersji.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-358-tutorial-anonimizacja-ip-server-side-g.png","width":1200,"height":630,"caption":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-analytics-pl\/tutorials-pl\/tutorial-anonimizacja-ip-server-side-ga4-adobe-launch-i-jentis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Tutorial: Anonimizacja IP Server-Side: GA4, Adobe Launch i Jentis"}]},{"@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\/358","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=358"}],"version-history":[{"count":6,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/358\/revisions"}],"predecessor-version":[{"id":22978,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/358\/revisions\/22978"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/13748"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=358"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=358"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}