{"id":8105,"date":"2026-08-11T13:22:00","date_gmt":"2026-08-11T11:22:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=8105"},"modified":"2026-08-10T18:23:13","modified_gmt":"2026-08-10T16:23:13","slug":"server-side-gtm-data-enrichment-firestore-bigquery-pl","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/","title":{"rendered":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery"},"content":{"rendered":"\r\n<h2 class=\"wp-block-heading\">Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Nowoczesne architektury marketingu cyfrowego wymagaj\u0105 przesy\u0142ania warto\u015bci konwersji, warto\u015bci \u017cyciowej klienta (LTV) oraz mar\u017cy zysku do platform reklamowych, takich jak Google Analytics 4 (GA4) czy Meta Conversions API (CAPI). Jednocze\u015bnie rygorystyczne regulacje prawne oraz zasady bezpiecze\u0144stwa danych zabraniaj\u0105 ujawniania danych osobowych (PII), wska\u017anik\u00f3w scoringowych czy mar\u017c operacyjnych w warstwie DataLayer po stronie przegl\u0105darki.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Rozwi\u0105zaniem tego problemu jest <strong>serwerowe wzbogacanie danych (Server-Side Data Enrichment)<\/strong>. Poprzez przechwytywanie przychodz\u0105cych zdarze\u0144 analitycznych w kontenerze Server-Side Google Tag Manager (ssGTM), anonimowe identyfikatory mog\u0105 by\u0107 w czasie rzeczywistym dopasowywane do baz danych przed wys\u0142aniem pakiet\u00f3w do zewn\u0119trznych system\u00f3w reklamowych.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">1. Architektura chroni\u0105ca prywatno\u015b\u0107<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Zamiast przesy\u0142ania poufnych atrybut\u00f3w CRM bezpo\u015brednio do przegl\u0105darki klienta, za pomoc\u0105 standardowych tag\u00f3w \u015bledz\u0105cych emitowany jest wy\u0142\u0105cznie anonimowy identyfikator \u2014 taki jak zaszyfrowane User-ID, numer klienta lub token sesji. Pakiet wysy\u0142any po stronie klienta pozostaje ca\u0142kowicie wolny od danych PII oraz krytycznych wska\u017anik\u00f3w biznesowych.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Warstwa<\/th><th>Dozwolone dane<\/th><th>Dane chronione (Zablokowane)<\/th><\/tr><\/thead><tbody><tr><td><strong>Przegl\u0105darka (DataLayer)<\/strong><\/td><td>Anonimowe User-ID, Session-ID, SKU, Transaction-ID<\/td><td>PII (E-mail, Telefon), Mar\u017ce zysku, Segmenty klienta, Scoring LTV<\/td><\/tr><tr><td><strong>Server-Side GTM (Edge)<\/strong><\/td><td>Zapytania w czasie rzeczywistym do API Firestore \/ BigQuery<\/td><td>Niezakodowane PII w logach lub \u017c\u0105daniach HTTP<\/td><\/tr><tr><td><strong>Systemy docelowe (CAPI \/ GA4)<\/strong><\/td><td>Wzbogacone atrybuty: <code>customer_tier<\/code>, <code>profit_margin<\/code>, haszowane PII<\/td><td>Surowe schematy baz danych lub niehaszowane dane osobowe<\/td><\/tr><\/tbody><\/table><\/figure>\r\n\r\n\r\n\r\n<figure class=\"lw-diagram\">\n<img loading=\"lazy\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/hand-ssgtm-pl.png\" width=\"1120\" height=\"740\" decoding=\"async\"\n     alt=\"Server-Side GTM przechwytuje zdarzenie z przegl\u0105darki, wzbogaca je wyszukaniem w Firestore i przekazuje wzbogacony \u0142adunek do Meta CAPI, GA4 i BigQuery\">\n<figcaption>Przegl\u0105darka wysy\u0142a minimum. Wszystko, co ma warto\u015b\u0107 handlow\u0105, dochodzi po stronie serwera z Firestore i dopiero potem rusza dalej \u2014 to trzyma mar\u017ce poza \u017ar\u00f3d\u0142em strony.<\/figcaption>\n<\/figure>\n\n<h2 class=\"wp-block-heading\">2. Firestore a BigQuery w zapytaniach czasu rzeczywistego<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Wyb\u00f3r odpowiedniego silnika bazodanowego w Google Cloud Platform (GCP) ma kluczowe znaczenie dla utrzymania niskich op\u00f3\u017anie\u0144 w ca\u0142ej architekturze analitycznej:<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Google Cloud Firestore:<\/strong> Nierelacyjna baza dokumentowa zaprojektowana do zapyta\u0144 o czasach odpowiedzi poni\u017cej milisekundy. Stanowi rekomendowany standard dla zapyta\u0144 czasu rzeczywistego w ssGTM. Atrybuty takie jak segment klienta, prawdopodobie\u0144stwo zwrotu czy mar\u017ca mog\u0105 by\u0107 pobierane b\u0142yskawicznie przy u\u017cyciu anonimowego identyfikatora User-ID jako klucza dokumentu.<\/li>\r\n\r\n\r\n<li><strong>Google BigQuery:<\/strong> Hurtownia danych skalowalna do petabajt\u00f3w. Cho\u0107 BigQuery idealnie sprawdza si\u0119 w zaawansowanych analizach i modelowaniu LTV, wy\u017csze op\u00f3\u017anienia zapyta\u0144 sprawiaj\u0105, \u017ce silnik ten jest mniej odpowiedni do synchronicznego wzbogacania tag\u00f3w. Zamiast tego BigQuery s\u0142u\u017cy do okresowego wyliczania metryk klient\u00f3w i eksportowania ich do bazy Firestore.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">3. Kroki wdro\u017ceniowe w Server-Side GTM<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Techniczna realizacja opiera si\u0119 na trzyetapowym potoku wzbogacania danych:<\/p>\r\n\r\n\r\n\r\n<ol start=\"1\" class=\"wp-block-list\">\r\n<li><strong>Przechwycenie \u017c\u0105dania:<\/strong> Przychodz\u0105ce \u017c\u0105danie HTTP GA4 dociera do kontenera ssGTM, nios\u0105c ze sob\u0105 anonimowy parametr <code>user_id<\/code>.<\/li>\r\n\r\n\r\n<li><strong>Wykonanie zapytania do Firestore:<\/strong> Za pomoc\u0105 dedykowanej zmiennej lub tagu asynchronicznego kontener odpytuje baz\u0119 GCP Firestore:\r\n<pre class=\"wp-block-code\"><code>\/\/ Przyk\u0142adowa logika zmiennej ssGTM odpytuj\u0105cej Firestore\r\nconst firestore = require(\"Firestore\");\r\nconst userId = getEventData(\"user_id\");\r\n\r\nreturn firestore.read(\"customer_profiles\/\" + userId).then((doc) => {\r\n  return {\r\n    ltv_segment: doc.ltv_segment || \"standard\",\r\n    profit_margin: doc.profit_margin || 0.0\r\n  };\r\n});<\/code><\/pre><\/li>\r\n\r\n\r\n<li><strong>Przekazanie wzbogaconego pakietu:<\/strong> Tagi docelowe \u2014 takie jak Meta CAPI \u2014 odczytuj\u0105 zasilone atrybuty ze zmiennej i przesy\u0142aj\u0105 je do platformy reklamowej bez ich ekspozycji w przegl\u0105darce u\u017cytkownika.<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Podsumowanie<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Serwerowe wzbogacanie danych stanowi pomost pomi\u0119dzy zgodno\u015bci\u0105 z przepisami o ochronie prywatno\u015bci a zaawansowan\u0105 optymalizacj\u0105 marketingu. Przechowywanie poufnych danych CRM w bezpiecznych bazach Google Cloud Firestore i dynamiczne odpytywanie ich na poziomie serwera gwarantuje najwy\u017csz\u0105 jako\u015b\u0107 zasilania GA4 i Meta CAPI przy jednoczesnym wyeliminowaniu wyciek\u00f3w danych po stronie klienta.<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Jak wzbogaca\u0107 zdarzenia w Server-Side GTM o atrybuty CRM z bazy Google Cloud Firestore bez ujawniania danych PII w przegl\u0105darce.<\/p>\n","protected":false},"author":1,"featured_media":9225,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[92084,92151,92041,92103,92133,92412,92136],"class_list":["post-8105","post","type-post","status-publish","format-standard","hentry","category-digital-marketing-pl","tag-bigquery-pl","tag-prywatnosc-danych-pl-pl","tag-first-party-data-pl","tag-google-cloud-pl","tag-google-tag-manager-pl","tag-pii-protection-pl","tag-server-side-gtm-pl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog<\/title>\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-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Jak wzbogaca\u0107 zdarzenia w Server-Side GTM o atrybuty CRM z bazy Google Cloud Firestore bez ujawniania danych PII w przegl\u0105darce.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-11T11:22:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg\" \/>\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\/jpeg\" \/>\n<meta name=\"author\" content=\"luky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"luky\" \/>\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-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/\"},\"author\":{\"name\":\"luky\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery\",\"datePublished\":\"2026-08-11T11:22:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/\"},\"wordCount\":546,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg\",\"keywords\":[\"BigQuery\",\"Data Privacy\",\"First-Party Data\",\"Google Cloud\",\"Google Tag Manager\",\"PII Protection\",\"Server-Side GTM\"],\"articleSection\":[\"Digital Marketing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/\",\"name\":\"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg\",\"datePublished\":\"2026-08-11T11:22:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg\",\"width\":1200,\"height\":630,\"caption\":\"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/digital-marketing-pl\\\/server-side-gtm-data-enrichment-firestore-bigquery-pl\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery\"}]},{\"@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\":\"luky\",\"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\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/author\\\/luky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog","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-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/","og_locale":"en_US","og_type":"article","og_title":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog","og_description":"Jak wzbogaca\u0107 zdarzenia w Server-Side GTM o atrybuty CRM z bazy Google Cloud Firestore bez ujawniania danych PII w przegl\u0105darce.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-08-11T11:22:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg","type":"image\/jpeg"}],"author":"luky","twitter_card":"summary_large_image","twitter_misc":{"Written by":"luky","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/"},"author":{"name":"luky","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery","datePublished":"2026-08-11T11:22:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/"},"wordCount":546,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg","keywords":["BigQuery","Data Privacy","First-Party Data","Google Cloud","Google Tag Manager","PII Protection","Server-Side GTM"],"articleSection":["Digital Marketing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/","url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/","name":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg","datePublished":"2026-08-11T11:22:00+00:00","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/fi-8105-wzbogacanie-danych-w-server-side-gtm-wyszukiwanie-cr.jpg","width":1200,"height":630,"caption":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/digital-marketing-pl\/server-side-gtm-data-enrichment-firestore-bigquery-pl\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Wzbogacanie danych w Server-Side GTM: Wyszukiwanie CRM w czasie rzeczywistym z Firestore i BigQuery"}]},{"@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":"luky","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":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"],"url":"https:\/\/www.lukaswojcik.com\/blog\/author\/luky\/"}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8105","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=8105"}],"version-history":[{"count":2,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8105\/revisions"}],"predecessor-version":[{"id":9598,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8105\/revisions\/9598"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/9225"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=8105"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=8105"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=8105"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}