[{"data":1,"prerenderedAt":637},["ShallowReactive",2],{"{\"version\":\"published\",\"language\":\"pl\"}layout":3,"{\"version\":\"published\",\"language\":\"pl\"}content/knowledge/":210,"content-list-a1b2c3d4-e5f6-7890-abcd-ef1234567890-pl-knowledge":254,"pSrH6BtrUU":441,"DuGvBdjCkC":456,"l8afVUcHfS":466,"cQHVEwDMb0":476,"5kLM6h0MfY":492,"I5NaZgTXx5":502,"Hg7Rv7iz21":512,"JLd49a3p0F":522,"2sqDvczwAS":532,"lhgetrshT5":542,"WZ7DwMaWVY":552,"q57Ltjei6w":572,"2IlvloL7O9":582,"CcvT3iGHYr":599,"r0kIKqBPYZ":617,"mXOLJxcClK":627},{"data":4,"headers":188},{"story":5,"cv":185,"rels":186,"links":187},{"name":6,"created_at":7,"published_at":8,"updated_at":9,"id":10,"uuid":11,"content":12,"slug":175,"full_slug":176,"sort_by_date":177,"position":178,"tag_list":179,"is_startpage":32,"parent_id":177,"meta_data":177,"group_id":181,"first_published_at":182,"release_id":177,"lang":183,"path":177,"alternates":184,"default_full_slug":177,"translated_slugs":177},"Layout & Menu Settings","2024-07-09T11:23:15.417Z","2026-08-21T07:00:43.091Z","2026-08-21T07:00:43.104Z",520580076,"d0565ccd-50f8-4a35-9583-813fff54f59a",{"_uid":13,"menu":14,"banner":133,"footer":143,"component":173,"promotion":174},"9245e14a-f18f-4a6c-8060-61e8beb3d9f1",[15],{"_uid":16,"logo":17,"component":22,"rightSide":23,"navigation":40},"fd2f2bd7-3ebb-4923-8327-febceaf9131b",{"id":18,"alt":19,"filename":20,"fieldtype":21},16613298,"","https://a.storyblok.com/f/296300/2078x457/3b34c3fe19/witbee-logo-new.png","asset","mega-menu",[24,34],{"_uid":25,"href":26,"size":27,"text":28,"target":29,"rounded":30,"variant":31,"disabled":32,"component":33,"showArrow":32},"839bb546-784b-4ba0-871b-263f3c901b86","/pl/contact-free-consultation","md","Bezpłatna konsultacja","_self","none","primary",false,"button-blok",{"_uid":35,"href":36,"size":27,"text":37,"target":29,"rounded":30,"variant":38,"disabled":32,"component":33,"showArrow":39},"32d63a94-8cbd-474c-9ce1-457cfa576ccf","https://cloud.witbee.com","Zaloguj się","secondary",true,[41,50,88,127],{"_uid":42,"link":43,"name":47,"subItems":48,"component":49},"3f3dab6a-9cd6-4ea1-9fdd-645b62d9cb49",{"id":19,"url":44,"linktype":45,"fieldtype":46,"cached_url":44},"/pl/services","url","multilink","Usługi",[],"mega-menu-item",{"_uid":51,"link":52,"name":53,"subItems":54,"component":49},"6951d7b0-368d-4db6-85fa-80af9088e8e0",{"id":19,"url":44,"linktype":45,"fieldtype":46,"cached_url":44},"Platforma WitCloud",[55],{"_uid":56,"links":57,"title":86,"component":87},"9e0dbc8d-3b23-474c-ab56-2eba6486c651",[58,65,72,79],{"_uid":59,"icon":60,"link":61,"component":63,"lowerText":64,"upperText":53},"2144a1bf-1bdf-4a82-9f59-b5e7d7f73f47","InformationCircleIcon",{"id":19,"url":62,"linktype":45,"fieldtype":46,"cached_url":62},"/pl/witcloud","mega-menu-subitem-link","Dowiedz się czym jest WitCloud",{"_uid":66,"icon":67,"link":68,"component":63,"lowerText":70,"upperText":71},"a6f22621-aa4f-4b0c-be09-11b4140d7dea","UsersIcon",{"id":19,"url":69,"linktype":45,"fieldtype":46,"cached_url":69},"/pl/witcloud/integrations","Systemy reklamowe, platformy e-commerce i więcej","Lista dostępnych integracji",{"_uid":73,"icon":74,"link":75,"component":63,"lowerText":77,"upperText":78},"42267fc4-06a8-465a-a3cf-56a311ff7022","NewspaperIcon",{"id":19,"url":76,"linktype":45,"fieldtype":46,"cached_url":76},"/pl/witcloud/pricing","Sprawdź szczegóły dotyczące subskrypcji","Cennik",{"_uid":80,"icon":81,"link":82,"component":63,"lowerText":84,"upperText":85},"6333bd24-c3b2-46ba-8dc2-93770459a0bc","BriefcaseIcon",{"id":19,"url":83,"linktype":45,"fieldtype":46,"cached_url":83},"/pl/witcloud/docs/","Sprawdź jak korzystać z platformy","Dokumentacja","WitCloud","mega-menu-subitem",{"_uid":89,"link":90,"name":92,"subItems":93,"component":49},"0182c7f6-b9d7-4e01-81bd-97635c68d72f",{"id":19,"url":91,"linktype":45,"fieldtype":46,"cached_url":91},"/pl/content","Materiały",[94],{"_uid":95,"links":96,"title":92,"component":87},"0f09839c-f7ce-48b8-8dc4-9269791644c0",[97,102,108,115,121],{"_uid":98,"icon":74,"link":99,"component":63,"lowerText":100,"upperText":101},"dd3ac1b6-d987-496d-bb75-e0db7459a79f",{"id":19,"url":91,"linktype":45,"fieldtype":46,"cached_url":91},"Wszystkie nasze materiały w jednym miejscu","Wszystkie materiały",{"_uid":103,"icon":60,"link":104,"component":63,"lowerText":106,"upperText":107},"5a1e2f7a-1111-4a00-9101-aa0000000101",{"id":19,"url":105,"linktype":45,"fieldtype":46,"cached_url":105},"/pl/content/framework","Nasz framework analityczny krok po kroku","Framework",{"_uid":109,"icon":110,"link":111,"component":63,"lowerText":113,"upperText":114},"5a1e2f7a-2222-4a00-9102-aa0000000102","VideoCameraIcon",{"id":19,"url":112,"linktype":45,"fieldtype":46,"cached_url":112},"/pl/content/webinars","Nagrania naszych szkoleń online","Webinary",{"_uid":116,"icon":81,"link":117,"component":63,"lowerText":119,"upperText":120},"5a1e2f7a-3333-4a00-9103-aa0000000103",{"id":19,"url":118,"linktype":45,"fieldtype":46,"cached_url":118},"/pl/content/case-studies","Efekty naszej pracy u klientów","Case studies",{"_uid":122,"icon":74,"link":123,"component":63,"lowerText":125,"upperText":126},"5a1e2f7a-4444-4a00-9104-aa0000000104",{"id":19,"url":124,"linktype":45,"fieldtype":46,"cached_url":124},"/pl/content/knowledge","Poradniki o GA4, BigQuery i nie tylko","Baza wiedzy",{"_uid":128,"link":129,"name":131,"subItems":132,"component":49},"eaef6de5-12a1-40f0-8bcf-3e00472ef87e",{"id":19,"url":130,"linktype":45,"fieldtype":46,"cached_url":130},"/pl/contact","Kontakt",[],[134],{"_uid":135,"link":136,"boldText":140,"component":141,"normalText":142},"d23b7c9c-c50d-4704-a330-c5d89f673a95",{"id":137,"url":19,"linktype":138,"fieldtype":46,"cached_url":139,"prep":39},"78736e51-560e-41cc-99bc-47d81c3321ec","story","/pl/content/webinars/webinar-ltv-retencja-akwizycja","Webinar Live: Analiza Klienta 3.0","banner-blok","Zapisz się na webinar",[144],{"_uid":145,"logo":146,"columns":147,"socials":169,"footnote":170,"component":171,"newsletter":172},"6bbe2605-0003-4e0f-9c83-f57387d6b9dc",{"id":18,"alt":19,"filename":20,"fieldtype":21},[148],{"_uid":149,"links":150,"title":167,"component":168},"bb943e00-cbd9-44d3-9ca8-e287f92f9a4c",[151,157,162],{"_uid":152,"link":153,"name":155,"component":156},"fa11f2ce-87a4-40b7-8c26-2248948ecdab",{"id":19,"url":154,"linktype":45,"fieldtype":46,"cached_url":154},"/pl/legal/privacy-policy","Polityka prywatności","website-footer-link",{"_uid":158,"link":159,"name":161,"component":156},"29ce4cf1-4ae3-4c03-a924-1b7283a52cea",{"id":19,"url":160,"linktype":45,"fieldtype":46,"cached_url":160},"/pl/legal/witcloud-terms-of-use","WitCloud - Regulamin",{"_uid":163,"link":164,"name":166,"component":156},"7b2b71ce-9047-493a-ae9a-24f33d13b228",{"id":19,"url":165,"linktype":45,"fieldtype":46,"cached_url":165},"/pl/legal/witcloud-privacy-policy","WitCloud - Polityka prywatności","Dział prawny","website-footer-column",[],"©2025 Witbee sp. z o o. Wszelkie prawa zastrzeżone.","website-footer",[],"layout-blok",[],"layout","pl/layout",null,30,[180],"Global","961eba08-4135-4b80-aba4-032c02789c49","2024-07-12T13:10:50.158Z","pl",[],1788963673,[],[],{"age":189,"cache-control":190,"connection":191,"content-encoding":192,"content-type":193,"date":194,"etag":195,"referrer-policy":196,"sb-be-version":197,"server":198,"transfer-encoding":199,"vary":200,"via":201,"x-amz-cf-id":202,"x-amz-cf-pop":203,"x-cache":204,"x-content-type-options":205,"x-frame-options":206,"x-permitted-cross-domain-policies":30,"x-request-id":207,"x-runtime":208,"x-xss-protection":209},"10","max-age=0, public, s-maxage=604800, stale-if-error=3600","keep-alive","gzip","application/json; charset=utf-8","Wed, 09 Sep 2026 14:24:49 GMT","W/\"9ef810ab6bf8c35b5a82e4e7cb0dee01\"","strict-origin-when-cross-origin","5.959.0","nginx/1.29.1","chunked","Origin,Accept-Encoding","1.1 9448fc1c48817eb327c6aba5fe8c8544.cloudfront.net (CloudFront)","Fs-EAfFtOLJo4rI2f4lLbyO5rEW9L5KsNe9T45sNjb27cdYacU4g7g==","WAW51-P2","Hit from cloudfront","nosniff","SAMEORIGIN","3b91d0e2-5611-4eed-b103-f6a7569450f7","0.056638","0",{"data":211,"headers":247},{"story":212,"cv":185,"rels":245,"links":246},{"name":213,"created_at":214,"published_at":215,"updated_at":216,"id":217,"uuid":218,"content":219,"slug":226,"full_slug":238,"sort_by_date":177,"position":239,"tag_list":240,"is_startpage":39,"parent_id":241,"meta_data":177,"group_id":242,"first_published_at":243,"release_id":177,"lang":183,"path":177,"alternates":244,"default_full_slug":177,"translated_slugs":177},"Knowledge","2026-06-25T08:35:07.410Z","2026-08-21T07:34:00.107Z","2026-08-21T07:34:00.121Z",191229572796195,"12c2659b-7f9b-4934-b8b9-f2fef6af5dcf",{"_uid":220,"body":221,"component":231,"meta_tags":232,"meta_title":237},"1ef761af-7711-4b0f-b48f-1f8b18e24c63",[222],{"_uid":223,"sort":224,"header":126,"source":225,"eyebrow":227,"component":228,"description":229,"displayMode":230},"a1b2c3d4-e5f6-7890-abcd-ef1234567890","date-desc",[226],"knowledge","Wiedza","content-list-blok","Artykuły, poradniki i analizy na temat analityki danych, BigQuery, Google Analytics 4 i automatyzacji raportowania w e-commerce.","grid","landing-page",[233],{"_uid":234,"name":235,"content":229,"component":236},"knowledge-index-meta-description","description","meta-tag","Baza wiedzy — BigQuery, GA4 i analityka e-commerce","pl/content/knowledge/",-10,[],191213970958235,"5efb1a4d-c165-4d51-b50b-fd6ed7760d45","2026-06-25T08:35:07.470Z",[],[],[],{"cache-control":190,"connection":191,"content-encoding":192,"content-type":193,"date":248,"etag":249,"referrer-policy":196,"sb-be-version":197,"server":198,"transfer-encoding":199,"vary":200,"via":201,"x-amz-cf-id":250,"x-amz-cf-pop":203,"x-cache":251,"x-content-type-options":205,"x-frame-options":206,"x-permitted-cross-domain-policies":30,"x-request-id":252,"x-runtime":253,"x-xss-protection":209},"Wed, 09 Sep 2026 14:24:59 GMT","W/\"596d3154a9dec8d6e25e33a9ac835cf2\"","vPNh49ZXT5fcSPVvG5jTMJY21Q_2hMHkqdF3QDC76yiaYbpIg1zwZg==","Miss from cloudfront","e4745e17-d63a-4963-a0de-8114ded8d03d","0.027953",[255,282,307,332,362,390,415],{"name":256,"created_at":257,"published_at":258,"updated_at":259,"id":260,"uuid":261,"content":262,"slug":276,"full_slug":277,"sort_by_date":177,"position":278,"tag_list":279,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":280,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":281,"default_full_slug":177,"translated_slugs":177},"Google Analytics 4 [GA4] BigQuery - traffic sources, sessions, attribution, marketing costs and ready data for analysis","2026-06-23T08:28:42.839Z","2026-08-21T07:00:41.845Z","2026-08-21T07:00:43.295Z",190520208788172,"4a92d87b-04d7-4610-87e4-83ec85851626",{"_uid":263,"title":264,"content":265,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":266,"component":267,"heroImage":268,"meta_tags":272,"meta_title":264,"heroButtons":273,"updatedDate":274,"bottomBlocks":275},"70c651b3-e211-4834-ade3-941e7ce294fd","Google Analytics 4 [GA4] BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz","## Kontynuacja serii wpisów o danych Google Analytics 4 [GA4] w BigQuery [Seria artykułów]\n\n\n\nArtykuł ten jest elementem z serii wpisów o Google Analytics 4 i eksporcie danych do Google BigQuery, składającym się z następujących pozycji:\n\n\n\n- [#1 Google Analytics 4 BigQuery - dlaczego warto korzystać ?](https://witbee.com/pl/blog/google-analytics-4-bigquery-dlaczego-warto-korzystac)  \n- [#2 Google Analytics 4 BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych](https://witbee.com/pl/blog/google-analytics-4-bigquery-9-wyzwan-ktore-cie-zaskoczy-podczas-analizy-danych ) \n- [#3 Google Analytics 4 BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz](https://witbee.com/pl/blog/google-analytics-4-bigquery-zrodla-ruchu-sesje-atrybucja-koszty-marketingowe-i-gotowe-dane-do-analiz) (obecnie go czytasz)\n\n\n\nOstatni wpis dotyczył wyzwań analitycznych związanych z analizą danych w Google BigQuery. Firmy oraz pracujący w nich analitycy jak i specjaliści powinny skupiać się głównie na podejmowaniu decyzji w oparciu o dane, a nie na mozolnym i kosztownym przygotowywaniu i obrabianiu danych do ich analizy. \n\n\n\nW odpowiedzi na to wyzwanie, w naszej platformie [WitCloud](https://witbee.com/pl/witcloud) postanowiliśmy stworzyć moduł analityczny, który w oparciu o wyeksportowane dane Google Analytics 4 do Google BigQuery, rozwiąże problemy z ich obróbką i przygotuje te dane w takiej formie, aby były gotowe do wykorzystania w firmie do rozmaitych analiz lub integracji z innymi systemami.\n\n\n\nW tym artykule, krok po kroku omówimy jakie modyfikacje wprowadziliśmy do danych i w jaki sposób podeszliśmy do zaprojektowania struktury danych w Google BigQuery. \n\n\n\n![Google Analytics 4 BigQuery - WitCloud - Sessions, Attributions](https://a.storyblok.com/f/46798/868x362/c5426a763d/google-analytics-4-bigquery-witcloud-events-to-sessions.png)\n\n## Wzbogacenie tabeli events o źródła ruchu [Wzbogacenie o źródła ruchu]\n\n### Problem ubogich danych o źródłach ruchu w Google BigQuery\n\n\n\nW artykule [#2 Google Analytics 4 BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych](https://witbee.com/pl/blog/google-analytics-4-bigquery-9-wyzwan-ktore-cie-zaskoczy-podczas-analizy-danych ), poruszyliśmy problem związany z brakiem obliczonych źródeł ruchu dla konkretnych sesji oraz ubogi dostęp do danych Google Ads. W domyślnie wyeksportowanej tabeli “events_” mamy dostępne tylko pola tj. traffic_source.source, traffic_source.medium, traffic_source.name (nazwa kampanii). \n\n\n\nNawiązując do naszego poprzedniego artykułu problem polega jednak na tym, że są to pola informujące nas o tym jakie źródło wystąpiło w pierwszej kampanii czasu pozyskania tego użytkownika, a nie o źródle, które wystąpiło w danej sesji, tak jak możemy to przeglądać w raportach i wymiarze “Session source/medium” w panelu Google Analytics 4. Oznacza to, że w panelu Google dostarcza nam obrobione dane, a korzystając z surowych danych w BigQuery musimy zrobić to sami.\n\n\n\n![Google Analytics 4 BigQuery traffic_source field description](https://a.storyblok.com/f/46798/986x327/0de56d0a96/google-analytics-4-bigquery-traffic-source-field-desc.png)\n\n\n\nKorzystając z tych pól w tabeli osiągniemy więc inny obraz niż w przypadku wymiaru “Session source / medium” w panelu.\n\n\n\n![Google Analytics 4 BigQuery traffic_source field path example](https://a.storyblok.com/f/46798/790x164/1ae9c65264/google-analytics-4-bigquery-traffic-source-field-behaviour.png)\n\n\n\nDodatkowo w tabeli brakuje nam bardziej szczegółowych informacji na temat kampanii Google Ads, tak jak miało to miejsce w eksporcie danych Google Analytics Universal 360 (wersja premium)\n\n\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/713x578/acc36d50a3/google-analytics-4-bigquery-missing-google-ads-fields.png\">\n\u003C/div>\n\n\n\n### Rozwiązaniem problemu jest wzbogacenie tabeli events o źródła ruchu sesji w modelu Google Analytics 4 i Universal Analytics\n\n\n\nW odpowiedzi na to wyzwanie postanowiliśmy wzbogacić tabelę “events_” o dodatkowe grupy pól, które zwracają informację na temat źródeł ruchu występujących w danej sesji oraz dodatkowe informacje na temat kampanii Google Ads. \n\n\n\nDane zostały wzbogacone w modelu Google Analytics 4, który nie tworzy nowej sesji przy zmianie źródła kampanii w trakcie trwania sesji oraz w modelu Google Universal Analytics, który tworzy nową sesję za każdym razem jak pojawi się nowe źródło ruchu. \n\n\n\n![Google Analytics 4 BigQuery Vs WitCloud Tables](https://a.storyblok.com/f/46798/861x629/cfb22d8638/google-analytics-4-bigquery-witcloud-vs-events.png)\n\n\n\n#### Możliwość śledzenia użytkownika pomiędzy urządzeniami\n\n\n\nZanim omówimy sposób działania poszczególnych modeli na przypadkach, musimy wspomnieć o kluczowym elemencie jaki musieliśmy wziąć pod uwagę przy tworzeniu modułu czyli śledzeniu użytkowników pomiędzy urządzeniami takimi jak komputery, smartfony i tablety (cross-device). \n\n\n\nGoogle Analytics 4 posiada do tego odpowiednie funkcjonalności, które potrafią połączyć zdarzenia na ścieżce użytkownika na podstawie 3 wymiarów tj.:\n\n\n\n- **Device ID**, czyli ciasteczko przeglądarki lub identyfikator w aplikacji\n- **User ID**, czyli możliwy do implementacji identyfikator użytkownika z naszej bazy danych np. po rejestracji/zalogowaniu na naszej stronie/aplikacji\n- **Google ID (Google Signals)**, czyli identyfikator połączony z zalogowanym użytkownikiem w Google (wymaga dodatkowej aktywacji w ustawieniach administracyjnych usługi)\n\n\n\nDomyślnie Google Analytics śledzi użytkownika tylko na podstawie Device ID, czyli ciasteczka lub identyfikatora aplikacji. Oznacza to, że jeżeli wejdziemy na wybraną stronę z urządzenia mobilnego, a następnie z komputera stacjonarnego, to Google Analytics raportuje nam informacje o 2 różnych użytkownikach pozyskanych z 2 różnych kanałów. Na tej podstawie nie jest więc możliwe śledzenie użytkowników pomiędzy urządzeniami, gdyż każde urządzenie oraz każda przeglądarka będą miały inny identyfikator użytkownika.\n\n\n\nJeżeli jednak zdecydujemy się na przesłanie w implementacji własnego identyfikatora użytkownika np. po zalogowaniu/rejestracji lub na aktywację opcji Google Signals, to system Google przeprowadzi na wszystkich zebranych danych deduplikację użytkowników, czyli znajdzie połączenie pomiędzy urządzeniami i przedstawi nam w raportach dokładniejsze dane na temat użytkowników i ich zachowań. \n\n\n\nW panelu Google Analytics 4 sami możemy decydować czy chcemy widzieć dane z deduplikacją lub bez na podstawie ustawień “Reporting Identity” (tłumaczone w dokumentacji w j. polskim jako “Tożsamość raportowania”).\n\n\n\n![Google Analytics 4 Reporting Identity](https://a.storyblok.com/f/46798/834x549/d25537595b/google-analytics-4-bigquery-reporting-identity.png)\n\n\n\nW Google BigQuery deduplikację użytkowników możemy wykonać jedynie na podstawie 2 wymiarów tj. Device ID oraz User ID, gdyż ze względu na aspekty prawne, dane Google Signals nie są udostępniane w eksporcie danych Google Analytics 4.\n\n\n\n![Google Analytics 4 BigQuery Device Id, User Id and No Google Singals ID](https://a.storyblok.com/f/46798/771x454/dda30cd467/google-analytics-4-bigquery-identity-user.png)\n\n\n\n#### Podejście do źródeł ruchu - Google Analytics 4 vs Google Analytics Universal\nPoniższy schemat pozwoli nam lepiej odpowiedzieć na 2 kluczowe i powiązane ze sobą pytania:\n\n\n\n\u003Col>\n  \u003Cli>Jak wpływa na atrybucję źródeł ruchu, deduplikacja użytkowników z wykorzystaniem parametru user_id?\n  \u003Cli>W jaki sposób zmieniła się logika liczenia sesji w Google Analytics 4 vs Google Analytics Universal?\u003C/li>\n\u003C/ol>\n\n\n\n![Google Analytics 4 BigQuery - Cross Device Sessions](https://a.storyblok.com/f/46798/1145x533/8f22588d1f/google-analytics-4-bigquery-diagram-cross-device-sessions.png)\n\n\n\nKrótki opis schematu:\n\n\n\n- Użytkownik wszedł na stronę internetową z urządzenia mobilnego po odesłaniu z Facebooka, co spowodowało utworzenie nowej sesji \n- W trakcie trwania sesji wygenerowanej przez Facebooka(przed upływem 30 minut od braku interakcji), użytkownik przeklikał się na stronę jeszcze raz przez reklamę Google\n- Po jakimś czasie użytkownik postanowił wejść na stronę ponownie, tym razem z komputera stacjonarnego bez żadnego przekierowania (wejście bezpośrednie)\n- Zarówno na urządzeniu mobilnym jak i stacjonarnym użytkownik był zalogowany i został wysłany parametr “user_id”\n\n\n\nSpójrzmy teraz, w jaki sposób zachowa się atrybucja źródeł ruchu i kalkulacja sesji dla poszczególnych modeli.\n\n\n\n**Google Analytics 4 - Cross Device Model**\n\n\n\n![Google Analytics 4 BigQuyer - GA4 Cross Device Model](https://a.storyblok.com/f/46798/689x138/63d1b8837b/google-analytics-4-bigquery-ga4-cross-device-model.png)\n\n\n\nW modelu Google Analytics 4 - Cross Device, po wejściu użytkownika z urządzenia mobilnego i odesłania z Facebooka, zostanie utworzona nowa sesja. W chwili, gdy użytkownik przeklika się przez reklamę Google z tego samego urządzenia w trakcie trwania sesji, nie zostanie utworzona nowa sesja, gdyż Google Analytics 4 nie tworzy nowej sesji w chwili, gdy zmienia się źródło kampanii w trakcie trwania poprzedniej sesji. \nW chwili, gdy użytkownik wejdzie z urządzenia stacjonarnego i będzie to wejście bezpośrednie (ruch typu “Direct”), źródło to zostanie nadpisane ostatnim źródłem ruchu, które wystąpiło w poprzedniej sesji - nie będzie to Facebook, tylko Google, który wcześniej nie spowodował utworzenia nowej sesji na urządzeniu mobilnym.\n\n\n\n**Google Analytics 4 - Device Model**\n\n\n\n![Google Analytics 4 BigQuery - Device Model](https://a.storyblok.com/f/46798/689x157/c7f291706b/google-analytics-4-bigquery-ga4-device-model.png)\n\n\n\nW modelu Google Analytics 4 opartym na Device ID (w przypadku strony internetowej będzie to ciasteczko), każda przeglądarka będzie miała wygenerowany nowy identyfikator użytkownika. W takiej sytuacji sesja pierwsza będzie miała przypisane źródło Facebook, a sesja druga, która odbyła się na innym urządzeniu będzie miała źródło “Direct”. Kampanie Google będzie w tym przypadku zignorowana, gdyż logika Google Analytics 4 nie uwzględnia tworzenia nowej sesji przy zmianie źródła ruchu. Druga sesja (wejście bezpośrednie) nie odziedziczy źródła ruchu, gdyż nie jest w żaden sposób powiązana z poprzednim urządzeniem (brak deduplikacji i wykorzystania user_id). Zostanie więc direct.\n\n\n\n**Universal Analytics - Device Model**\n\n\n\n![Google Analytics 4 BigQuery Device Model](https://a.storyblok.com/f/46798/687x182/6c23c8306d/google-analytics-4-bigquery-ua-device-model.png)\n\n\n\nW modelu Universal Analytics opartym na Device ID (obecnie i historycznie wykorzystywany w Google Analytics Universal), w pierwszej sesji zostanie przypisane źródło facebook. Następnie zostanie utworzona nowa sesja, dla źródła Google, gdyż Universal Analytics tworzy nową sesję za każdym razem kiedy źródło kampanii zostanie zmienione w trakcie sesji. Po bezpośrednim wejściu z urządzenia stacjonarnego zostanie utworzona trzecia sesja, która nie zostanie nadpisana wartością Google, gdyż nie jest w żaden sposób powiązana z poprzednim urządzeniem (brak deduplikacji i wykorzystania user_id). Zostanie więc direct. \n\n\n\n**Universal Analytics - Cross-Device Model**\n\n\n\n![Google Analytics 4 BigQuery Cross Device Model](https://a.storyblok.com/f/46798/683x189/995cdfb460/google-analytics-4-bigquery-ua-cross-device-model.png)\n\n\n\nModel Universal Analytics oparty na cross-device to nowość, którą postanowiliśmy odtworzyć na podstawie dedykowanego podejścia związanego z deduplikacją użytkowników w Google Analytics 4, ale z zachowaniem starego podejścia, które zakłada tworzenie nowej sesji kiedy źródło kampanii ulegnie zmianie w trakcie sesji. W ten sposób, pierwsza sesja będzie miała wartość ‘facebook’, następnie zostanie utworzona nowa sesja, dla źródła Google, gdyż Universal Analytics tworzy nową sesję za każdym razem kiedy źródło kampanii zostanie zmienione w trakcie sesji. Po bezpośrednim wejściu z urządzenia stacjonarnego zostanie utworzona trzecia sesja, która zostanie nadpisana wartością Google, gdyż jesteśmy w stanie połączyć ze sobą użytkowników na podstawie deduplikacji z wykorzystaniem user_id.\n\n\n\n#### Dlaczego przygotowaliśmy 3 modele danych?\n\n\n\nDecyzje o raportowaniu wybranym modelu Google Analytics mogą zależeć od preferencji danej organizacji, w związku z tym zależało nam na tym, aby każda firma mogła samodzielnie podjąć decyzje na temat tego wyboru lub mieć możliwość porównania danych w różnych modelach. \n\n\n\nZ tego względu przygotowaliśmy dane w 3 modelach tj.:\n\n\n\n- Google Analytics 4 Cross Device z uwzględnieniem deduplikacji\n- Google Analytics Universal Cross Device z uwzględnieniem deduplikacji\n- Google Analytics Universal Device bez deduplikacji (znane i lubiane z Google Analytics Universal)\n\n\n\n## Grupowanie eventów w sesje, czyli tabele sesji dla danych Google Analytics 4 [Grupowanie w sesje]\n\n\n\n### Tabela zdarzeń vs tabela sesji\n\n\n\nTabela zdarzeń, to taka tabela, w której każdy wiersz odpowiada jednemu zdarzeniu ze wszystkimi atrybutami zebranymi na podstawie implementacji na stronie lub w aplikacji. W ten sposób zrzucane są dane Google Analytics 4, w chwili gdy uruchomimy funkcję ich eksportu do Google BigQuery. Pozwala ona bardzo szczegółowo przeglądać wszystkie parametry zdarzeń.\n\n\n\n![Google Analytics 4 BigQuery Screen Events Table](https://a.storyblok.com/f/46798/901x472/bc104a0435/google-analytics-4-bigquery-events-table.png)\n\n\n\nTabela sesji, to taka tabela, w której każdy wiersz odpowiada jednej sesji - znajdują się tam pogrupowane i obliczone informacje w oparciu o wszystkie zdarzenia, które wystąpiły w tabeli events.\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/697x230/acfeb88331/google-analytics-4-bigquery-sessions-table.png\">\n\u003C/div>\n\n\n\n### Dlaczego zdecydowaliśmy się na utworzenie tabeli sesji?\n\n\n\nKluczową sprawą było dostarczenie stosunkowo lekkiej tabeli do narzędzi odpowiedzialnych za wizualizację danych. Tabela sesji, ze względu na to, że posiada zagregowane i przeliczone wartości, zajmuje znacznie mniej miejsca w porównaniu do tabeli events.\n\n\n\n\nDla przykładu tabela events, która miała w sobie 850 000 zdarzeń, miała wagę 1.5 GB.\nTabela sesji, która została utworzona na podstawie tych zdarzeń miała raptem 52 000 wierszy i jej waga wynosiła 83 MB. \n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/627x203/392bc8ddec/google-analytics-4-bigquery-events-vs-sessions-table.png\">\n\u003C/div>\n\n\n\nWszystkie narzędzia do wizualizacji zintegrowane z Google BigQuery wykonują zapytanie SQL, o czym pisaliśmy w naszym pierwszym artykule tutaj. Odpytując mniejszą tabelę, \u003Cb>wizualizacje działają znacznie szybciej i taniej.\u003C/b>\n\n\n\nPrzygotowując tabelę sesji pomyśleliśmy o obliczeniu najbardziej popularnych metryk wykorzystywanych przy różnych raportach oraz o dodaniu informacji o źródłach kampanii, gelokalizacji, urządzeniach czy też wszystkich informacjach dotyczących transakcji. W związku z tym zyskujemy znacznie lżejszą tabelę, z wciąż bardzo bogatymi informacjami, bez konieczności pisania dodatkowych zapytań SQL odnoszących się do tabeli events. \n\n\n\n![Google Analytics 4 BigQuery - WitCloud Sessions Table](https://a.storyblok.com/f/46798/1030x643/d16245bda9/google-analytics-4-witcloud-sessions-table.png)\n\n\n\n### Moduł dostarcza 3 tabele sesji w modelach tj. Google Analytics 4, Universal Analytics Cross-Device oraz Universal Analytics Device\n\n\n\nNa podstawie wyżej opisanych przykładów w sekcji dotyczącej tabeli “events”, wiemy już, że każdy model tj. Google Analytics 4, Universal Analytics Cross-Device oraz Universal Analytics Device, będzie mógł mieć różną liczbę sesji oraz różne źródła ruchu. Dlatego też postanowiliśmy stworzyć 3 tabele dla poszczególnych modeli, które mają taki sam schemat pól (metryk i wymiarów).\n\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/442x339/12294d8207/google-analytics-4-bigquery-sessions-witcloud-3-models.png\">\n\u003C/div>\n\n\n\n### Tabele sesji uwzględniają konwersje walut dla sklepów sprzedających na wielu rynkach\n\n\n\nJeżeli na naszej stronie lub w aplikacji użytkownicy mogą dokonywać zakupów w różnych walutach, musimy zadbać o przekonwertowanie wartości do waluty, która została ustawiona w ustawieniach danej usługi. Wymaga to pobierania kursu waluty z danego dnia poprzez API i utworzenia dodatkowych pól obliczeniowych. Postanowiliśmy więc ułatwić to zadanie i automatycznie przekonwertować wartości dla transakcji i produktów w naszej tabeli sesji, zgodnie z ustaloną walutą w ustawieniach administracyjnych Google Analytics 4.\n![Google Analytics 4 BigQUery - Convert Currency Automatically](https://a.storyblok.com/f/46798/1043x207/9d890497d2/google-analytics-4-bigquery-atomation-currency-conversion.png)\n\n\n\n![Google Analytics 4 BigQuery Currency Converted Fields](https://a.storyblok.com/f/46798/756x475/b685923dbf/google-analytics-4-bigquery-currency-converted-fields.png)\n\n## Google Analytics 4 BigQuery - atrybucja konwersji [Atrybucja konwersji]\n\n\n\n### Atrybucja źródeł ruchu w Google BigQuery\n\n\n\nPosiadając dane Google Analytics 4 w BigQuery, które zostały wzbogacone o źródła ruchu w różnych modelach, nie mogliśmy się powstrzymać od przygotowania dodatkowych tabel zawierających atrybucję kanałów marketingowych. Tak jak w przypadku tabeli sesji, uwzględniliśmy tutaj tabele w 3 modelach tj. Google Analytics 4 Cross Device, Google Analytics Universal Cross Device i Google Analytics Universal Device. \n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/338x259/d0cf856eaa/google-analytics-4-bigquery-attribution.png\">\n\u003C/div>\n\n\n\nAtrybucja jest wykonywana dla wszystkich zdarzeń, które zostały oznaczone jako konwersja w panelu Google Analytics. \n\n\n\n![Google Analytics 4 Conversions Events](https://a.storyblok.com/f/46798/1125x264/7156f7749f/google-analytics-4-conversions.png)\n\n\n\n### Co zawierają tabele atrybucji?\n\n\n\nTabele atrybucji zawierają w sobie informacje na temat ścieżek konwersji w 5 modelach atrybucji tj. last click non direct, first click, linear, position based oraz timedecay. \n\n\n\n![Google Analytics 4 BigQuery - Attribution Calculation Table Schema](https://a.storyblok.com/f/46798/998x617/a92fa0d1a5/google-analytics-4-bigquery-attribution-table-schema-desc.png)\n\n\n\nDane pozwalają na szczegółową analizę wszystkich ścieżek użytkowników prowadzących do konwersji. Posiadając obliczoną punktację dla każdego modelu możemy pomnożyć wagę (attribution_score) przez wartość konwersji i uzyskać dokładny wynik w celach raportowych.\n\n\n\n![Google Analytics 4 BigQuery - Attribution Conversion Paths Example](https://a.storyblok.com/f/46798/903x149/2867ea71dc/google-analytics-4-bigquery-attribution-conversion-paths-example.png)\n\n\n\nJeżeli naszą konwersją jest zdarzenie “purchase”, w tabeli odnajdziemy również wszystkie informacje o transakcjach i sprzedawanych produktach. Daje to wiele dodatkowych możliwości np. możemy połączyć na podstawie identyfikatora transakcji oraz produktu, dane z CRM na temat zysku i sprawdzić, które kanały marketingowe wspierają konkretne grupy produktów na ścieżce zakupowej. \n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/649x353/edebcd629f/google-analytics-4-bigquery-attribution-products.png\">\n\u003C/div>\n\n\n\n## Moduł Google Analytics 4 BigQuery w WitCloud - zacznij swoją przygodę analityczną w 30 minut [Moduł WitCloud]\n\n\n\n### Konfiguracja eksportu danych w Google BigQuery i utworzenie konta w platformie WitCloud\n\n\n\nPrzygodę z wyżej opisanymi danymi można rozpocząć w mniej niż 30 minut. Potrzebny jest do tego projekt na Google Cloud Platform oraz uruchomiony eksport danych Google Analytics 4 do BigQuery.\nJeżeli zakładamy konto rozliczeniowe w Google Cloud Platform po raz pierwszy, na start dostaniemy 300$ do wykorzystania przez pierwsze 90 dni. \n\n\n\n[Instrukcja założenia projektu na Google Cloud Platform](https://witbee.com/pl/docs/start/how-to-start/#za%C5%82ozenie-projektu-google-cloud-platform)\n[Instrukcja uruchomienia eksportu danych Google Analytics 4 do BigQuery](https://support.google.com/analytics/answer/9823238?hl=en&ref_topic=9359001#step3&zippy=%2Cin-this-article)\n\n\n\nKolejnym krokiem jest założenie konta i projektu w platformie WitCloud. Oferujemy okres próbny, który trwa 14 dni. Biorąc więc pod uwagę 300$ na start od Google oraz nasz okres próbny, analizę danych można rozpocząć za darmo. \n\n\n\n[Instrukcja założenia projektu na platformie WitCloud](https://witbee.com/pl/docs/start/how-to-start/#za%C5%82ozenie-konta-i-utworzenie-projektu-w-witcloud-platform)\n\n\n\n\n\u003Cimg alt='Google Cloud Free Trial & WitCloud Free Trial' src='https://a.storyblok.com/f/46798/358x307/3102ae6e2f/google-cloud-witcloud.png' style='margin-left:auto;margin-right:auto;width:60%;display:block' \\>\n\n\n\n### Uruchomienie modułu Google Analytics 4 i innych integracji\n\nPlatforma WitCloud potrafi automatycznie pobierać i procesować dane w BigQuery nie tylko dla systemu Google Analytics 4, ale również dla popularnych systemów reklamowych, platform e-commerce, danych search console oraz arkuszy Google. \n\n\n\nW pierwszej kolejności rekomendujemy uruchomienie modułów:\n\n\n\n- [Google Ads](https://witbee.com/pl/docs/collect/google-ads-to-bigquery/) - w celu późniejszego połączenia danych o kampaniach Google Ads z modułem GA4\n- [Google Analytics 4 BigQuery](https://witbee.com/pl/docs/collect/google-analytics-4-bigquery/) - w celu uzyskania tabel omawianych w artykule\n\n\n\nW następnym etapie sugerujemy skonfigurować pozostałe źródła marketingowe:\n\n\n\n- [Systemy marketingowe](https://witbee.com/pl/witcloud/integracje?cat=Ad%2520System)\n- [Platformy e-commerce](https://witbee.com/pl/witcloud/integracje?cat=Ecommerce)\n\n\n\n![WitCloud Platform - All Marketing Data in Google BigQuery ](https://a.storyblok.com/f/46798/926x403/765588f1d0/witcloud-all-integration.png)\n\n\n\nJeżeli zdecydujesz się spróbować i pojawią się jakiekolwiek trudności podczas aktywacji integracji nie wahaj się zadać nam pytania poprzez chat znajdujący się w prawym dolnym rogu na stronie.\n\n\n","Prosta i szybka analiza danych z Google Analytics 4 w BigQuery dzięki platformie WitCloud. Tabele sesji, atrybucja kanałów marketingowych i więcej.","content-page",{"id":269,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":270,"copyright":19,"fieldtype":21,"meta_data":271,"is_external_url":32},190527407462478,"https://a.storyblok.com/f/296300/900x600/abccb0f082/10-ga4-bigquery-ready-data.png",{},[],[],"2025-02-25 00:00",[],"google-analytics-4-bigquery-traffic-sources-sessions-attribution-marketing-costs-and-ready-data-for-analysis","pl/content/knowledge/google-analytics-4-bigquery-traffic-sources-sessions-attribution-marketing-costs-and-ready-data-for-analysis",0,[],"c4d63873-b48c-4c11-8717-9675a264ef31",[],{"name":283,"created_at":284,"published_at":258,"updated_at":285,"id":286,"uuid":287,"content":288,"slug":301,"full_slug":302,"sort_by_date":177,"position":303,"tag_list":304,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":305,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":306,"default_full_slug":177,"translated_slugs":177},"Google Analytics 4 [GA4] BigQuery - 9 challenges to surprise you in data analysis","2026-06-23T08:28:33.008Z","2026-08-21T07:00:43.184Z",190520168536775,"cbd46d2c-d585-4da6-91ea-754c8fc8b69b",{"_uid":289,"title":290,"content":291,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":292,"component":267,"heroImage":293,"meta_tags":297,"meta_title":298,"heroButtons":299,"updatedDate":274,"bottomBlocks":300},"b6f75232-4b82-49d2-845a-284ebf9d3c5d","Google Analytics 4 [GA4] BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych","## Kontynuacja serii wpisów o danych Google Analytics 4 [GA4] w BigQuery [Seria artykułów]\n\nArtykuł ten jest elementem z serii wpisów o Google Analytics 4 i eksporcie danych do Google BigQuery, składającym się z następujących pozycji:\n\n\n\n- [#1 Google Analytics 4 BigQuery - dlaczego warto korzystać ?](https://witbee.com/pl/blog/google-analytics-4-bigquery-dlaczego-warto-korzystac)  \n- [#2 Google Analytics 4 BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych](https://witbee.com/pl/blog/google-analytics-4-bigquery-9-wyzwan-ktore-cie-zaskoczy-podczas-analizy-danych )  (obecnie go czytasz)\n- [#3 Google Analytics 4 BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz](https://witbee.com/pl/blog/google-analytics-4-bigquery-zrodla-ruchu-sesje-atrybucja-koszty-marketingowe-i-gotowe-dane-do-analiz)\n\n\n\nW poprzednim wpisie [Google Analytics 4 BigQuery - dlaczego warto korzystać ?](https://witbee.com/pl/blog/google-analytics-4-bigquery-dlaczego-warto-korzystac) omówiliśmy szereg argumentów mówiących o tym dlaczego warto korzystać z eksportu danych Google Analytics 4 w BigQuery. \nPodczas interakcji z danymi możemy jednak napotkać na różne trudności o których warto wiedzieć wcześniej, zanim spędzimy wiele godzin nad detektywistyczną próbą ich pokonania. Postanowiliśmy więc napisać artykuł informacyjny o tych problemach - jest to zbiór naszych doświadczeń z projektów bazujących na eksporcie danych z Google Analytics 4. \n\n\n\n## Dane raportowane w Google BigQuery będą inne niż te, które widać w panelu Google Analytics 4 [GA4] [Dane inne niż w panelu]\n\nPierwszym zadaniem jakie sobie postawiliśmy podczas pracy z eksportem danych Google Analytics 4 w BigQuery było odtworzenie logiki raportów, które możemy znaleźć w interfejsie. W ten sposób możemy bardzo dużo się nauczyć i zrozumieć dokładnie jak dane metryki i wymiary są liczone oraz zwalidować poprawność naszych zapytań. \n\n\n\nTutaj zadanie okazało się utrudnione, gdyż zgodnie [z dokumentacją Google Analytics 4](https://support.google.com/analytics/answer/9191807?hl=pl) dane w panelu mogą się różnić od tych, które będziemy obliczać w BigQuery.\n\n\n\nNawet jak dane w panelu Google Analytics 4 pokazują, że nie są próbkowane, to liczba sesji i tak jest estymacją na podstawie liczby unikalnych identyfikatorów sesji. Więcej o tym można poczytać w tym miejscu: [Unique count approximation in Google Analytics](https://developers.google.com/analytics/blog/2022/hll)\n\n\n\n![How Google Analytics 4 Calculate Sessions](https://a.storyblok.com/f/46798/671x92/65aa7fa106/google-analytics-4-bigquery-number-of-sessions.png)\n\n\n\nW BigQuery najczęściej nie korzystamy z funkcji estymacji, w związku z tym możemy zauważyć różnice np. w liczbie sesji w porównaniu z wynikami podawanymi w raportach standardowych i eksploracyjnych czy też w Looker Studio. \n\n\n\nDostajemy więc poniższe rekomendacje od Google:\n\n\n\n- Jeżeli chcemy uzyskać dokładniejsze wyniki na podstawie nieprzetworzonych danych, powinniśmy użyć do tego eksportu danych w Google BigQuery\n- Jeżeli zależy nam na szybkim otrzymaniu wyników uwzględniając margines błędu, najlepiej sprawdzać je w raportach w panelu  \n\n\n\n![Google Analytics 4 BigQuery Data Precision](https://a.storyblok.com/f/46798/904x264/f30627a14d/google-analytics-4-bigquery-data-precision.png)\n\n## Informacje o źródłach kampanii - w BigQuery mamy obliczone tylko pierwsze źródło pozyskania użytkownika [Tylko pierwsze źródło]\n\nNajpopularniejszym raportem w Google Analytics Universal był niewątpliwie raport przedstawiający źródło/medium. Taki raport został również odtworzony w Google Analytics 4. Możemy go znaleźć w domyślnej sekcji Acquisition -> Traffic Acquisition. \n\n\n\n\n![Google Analytics 4 - Source/Medium Report](https://a.storyblok.com/f/46798/1780x780/a49616841d/google-analytics-4-source-medium-report.png)\n\n\n\nW tym raporcie wykorzystywany jest wymiar o nazwie “Session source/medium”, który informuje nas o źródle pochodzenia danej sesji. \n\n\n\nPrzeglądając dane wyeksportowane do Google BigQuery dla  GA4 napotykamy pola nazwane traffic_source.source, traffic_source.medium, traffic_source.name (nazwa kampanii), które bardzo często są błędnie wykorzystywane do odtworzenia powyższego raportu. \n\n\n\n![Google Analytics 4 BigQuery traffic_source field example](https://a.storyblok.com/f/46798/752x63/4647884f9c/google-analytics-4-bigquery-traffic-source-example.png)\n\n\n\nProblem polega jednak na tym, że są to pola informujące nas o tym co wystąpiło w pierwszej kampanii od czasu pozyskania tego użytkownika, a nie o źródle, które wystąpiło w danej sesji, tak jak możemy to przeglądać w raportach i wymiarze “Session source/medium”.\n\n\n\n![Google Analytics 4 BigQuery traffic_source field description](https://a.storyblok.com/f/46798/986x327/0de56d0a96/google-analytics-4-bigquery-traffic-source-field-desc.png)\n\n\n\nKorzystając z tych pól w tabeli osiągniemy więc inny obraz niż w przypadku wymiaru “Session source / medium” w panelu.\n\n\n\n![Google Analytics 4 BigQuery traffic_source field path example](https://a.storyblok.com/f/46798/790x164/1ae9c65264/google-analytics-4-bigquery-traffic-source-field-behaviour.png)\n\n\n\n\u003Cspan style='color:red'>AKTUALIZACJA - poniższe parametry są aktualnie dostępne na poziomie parametrów zdarzeń oraz w kolumnach znajdujących się w grupie collected_traffic_source. Należy jednak pamiętać, że nie są to dane obliczone zgodnie z logikę wymiarów tj. Session source/medium/campaign\u003C/span>\n\n\n\nAby odtworzyć ten wymiar musimy wyciągnąć parametry kampanii z poziomu eventów, a następnie samemu obliczyć te dane zgodnie z logiką opisaną w dokumentacji dla wszystkich sesji: [[GA4] Scopes of traffic-source dimensions - Analytics Help ](https://support.google.com/analytics/answer/11080067?hl=en&ref_topic=11151952#zippy=%2Cin-this-article)\n\n\n\n![Google Analytics 4 BigQuery Campaign Parameters ](https://a.storyblok.com/f/46798/913x374/f97bc5ec82/google-analytics-4-bigquery-campaign-info.png)\n\n\n\n## Google Analytics 4 [GA4] wykonuje deduplikację na użytkownikach pomiędzy urządzeniami [Deduplikacja między urządzeniami]\n\n\n\nDużą rewolucją w Google Analytics 4 w porównaniu do Google Analytics Universal jest możliwość połączenia danych pomiędzy platformami/urządzeniami. Implementując usługę Google Analytics 4 na naszej stronie internetowej oraz w aplikacji mobilnej jesteśmy w stanie uzyskać jedno przejrzyste źródło analiz dla tych platform. \n\n\n\nDomyślnie Google Analytics dla każdego urządzenia/przeglądarki generuje “user_pseudo_id”, czyli nowe ciasteczko (strona internetowa) lub identyfikator (aplikacja mobilna). Na podstawie tego identyfikatora wykonywane są obliczenia niezbędne do przedstawienia wszystkich metryk i wymiarów w panelu. \nJeden użytkownik może odwiedzić naszą stronę lub aplikację z różnych urządzeń. Jeżeli odwiedzi nas na stronie internetowej na komputerze, następnie na stronie internetowej na urządzeniu mobilnym, a na końcu w aplikacji mobilnej to będzie identyfikowany jako 3 różnych użytkowników. \n\n\n\nJeżeli zdecydujemy się na włączenie usługi [Google Signals](https://support.google.com/analytics/answer/9445345?hl=pl&ref_topic=9303474#zippy=%2Ctematy-w-tym-artykule) lub implementację [funkcji User ID](https://support.google.com/analytics/answer/9213390?hl=pl) (np. własny identyfikator z bazy danych podczas logowania lub zakupu), Google Analytics przeprowadzi na Twoich danych deduplikację (na ile jest to możliwe w przypadku opcji Google Signals) , co wpłynie na liczbę użytkowników oraz atrybucję kanałów marketingowych. Dane możemy przeglądać na różnym poziomie (po deduplikacji lub bez deduplikacji) w zależności od naszych ustawień tożsamości w usłudze Google Analytics 4 - więcej o tym znajduje się tutaj: [[GA4] Tożsamość raportowania - Analytics - Pomoc ](https://support.google.com/analytics/answer/10976610?hl=pl)\n\n\n\n![Google Analytics 4 User Identity](https://a.storyblok.com/f/46798/1036x468/248ad8555a/google-analytics-4-user-identity.png)\n\n\n\nWarto jednak pamiętać, że dane Google Signals to dane, które Google potrafi połączyć z użytkownikami, którzy zalogowali się na swoje konta Google i mają włączoną personalizację reklam. Powiązanie tych danych z zalogowanymi użytkownikami umożliwia przedstawienie dokładniejszej liczby użytkowników w raportach. Ze względu na politykę prywatności użytkowników, firma Google nie może nam tych danych udostępnić, co wpływa również na rozbieżności w danych pomiędzy interfejsem, a raportach w Google BigQuery. Więcej o tym można poczytać tutaj: [[GA4] Aktywacja Google Signals w usługach Google Analytics 4](https://support.google.com/analytics/answer/9445345?hl=pl&ref_topic=9303474#zippy=%2Ctematy-w-tym-artykule)\n\n\n\n![Google Analytics 4 BigQuery Show More Users ](https://a.storyblok.com/f/46798/981x169/ee1df82f28/google-analytics-4-bigquery-export-show-more-users.png)\n\n\n\nWarto pamiętać - jeżeli mamy zaimplementowany parametr user_id na swojej witrynie lub aplikacji, wciąż możemy starać się odtworzyć deduplikację użytkowników w BigQuery - tylko w ten sposób osiągniemy poprawną liczbę użytkowników oraz prawidłową atrybucję źródeł ruchu do sesji zgodnie z logikę “Cross-Device”. \n\n\n\nZ problemem deduplikacji oraz potencjalnym rozwiązaniem można zapoznać się w artykule [Complex Deduplication in BigQuery | by Benjamin Campbell ](https://benjaminsky.medium.com/complex-deduplication-in-bigquery-a3c5e78dec2b)\n\n\n\n## Jeden identyfikator sesji (ga_session_id) może zostać przypisany do 2 różnych użytkowników [Jedno ID sesji, 2 użytkowników]\n\n\n\nW programowaniu intensywnie wykorzystuje się znaczniki czasu, czyli tzw. timestamp. \nDana ta pozwala określić moment, w którym zaszło określone zdarzenie.\nWartość takiego znacznika definiowana jest na podstawie “Unix Time”, czyli systemie reprezentacji czasu mierzącego liczbę sekund od początku 1970 roku.\n\n\n\nDla przykładu Timestamp 1672481243 reprezentuje datę i godzinę: 2022-12-31 10:07:23\nJest to więc 1672481243 sekund od początku 1970 roku. \n\n\n\nPrzeglądając dane Google Analytics 4 w BigQuery również mamy dużo kontaktu ze znacznikami czasu np. pole o nazwie event_timestamp zawiera liczbę mikrosekund od roku 1970.\n\n\n\nKiedy przyjrzymy się identyfikatorowi o nazwie “ga_session_id” zobaczymy, że jest to przybliżony czas pierwszego zdarzenia rozpoczynającego sesje.\n\n\n\n![Google Analytics 4 GA Session ID Duplication](https://a.storyblok.com/f/46798/739x124/c1db345336/google-analytics-4-bigquery-ga_session_id.png)\n\n\n\n\nW związku z tym, że kilku użytkowników może rozpocząć sesje w tym samym czasie (dokładnie w tej samej sekundzie), sam parametr tj. ga_session_id nie daje unikalnego identyfikatora sesji. W tym celu musimy połączyć user_pseudo_id czyli identyfikator użytkownika oraz ga_session_id, aby otrzymać unikalny identyfikator sesji do naszych obliczeń. Możemy to zrobić dzięki funkcji CONCAT.\n\u003Ccode >\nSELECT \n&nbsp;&nbsp;&nbsp;CONCAT(user_pseudo_id, ga_session_id) as session_id\nFROM\n&nbsp;&nbsp;&nbsp;your_google_analytics_4_events\n\u003C/code>\n\n\n\n\nPowstanie nam wtedy unikalny ciąg znaków oznaczający identyfikator danej sesji:\n\n\n\n\u003Cp style='text-align:center'>\u003Cspan style='color:green'>1020668977.1672354709\u003C/span>\u003Cspan style='color:red'>1672354709\u003C/span>\u003Cp>\n\n\n\nCiekawostka - jeżeli przyjrzymy się wartości user_pseudo_id i zobaczymy z czego jest ona złożona, również zauważymy w nim timestamp oznaczający datę utworzenia danego użytkownika. \n\n\n\n\u003Cp style='text-align:center'>\n1020668977.\u003Cspan style='color:red'>1672354709\u003C/span> = {{random number}} + “.” + {{user created timestamp}}\n\u003C/p>\n\n\n\n## Jeden identyfikator sesji może wystąpić w 2 różnych dniach [Jedno ID sesji, 2 dni]\n\n\n\nGoogle Analytics Universal tworzył nową sesję za każdym razem, gdy:\n\n\n\n- nie było interakcji przez więcej niż 30 min (na podstawie domyślnych ustawień) \n- w chwili, gdy zmieniały się parametry kampanii ( tj. utm, gclid, referral)\n- **w chwili, gdy sesja odbywała pomiędzy jednym a drugim dniem**\n\n\n\nPrzykładowo, jeżeli mieliśmy sytuację, w której użytkownik rozpoczął sesję o godz. 23:58, a zakupu dokonał nie odchodząc od komputera o godz. 00:05 następnego dnia, to Google Analytics Universal tworzył w takim przypadku 2 różne identyfikatory sesji - pierwsza trwała od 23:58 do 00:00 a druga od 00:00 do 00:05(zakładając, że zamknął przeglądarkę zaraz po zakupie).\n\n\n\nW przypadku Google Analytics 4 identyfikator sesji pozostanie ten sam pomiędzy jednym a drugim dniem. W związku z tym jeżeli będzie nam zależeć na policzeniu dokładnych metryk dla danej sesji, musimy pamiętać, aby w trakcie analiz brać pod uwagę również dane z dnia poprzedniego np. w celu sprawdzenia strony wejścia/docelowej dla danej sesji. Wpływa to na wielkość procesowanych danych i konieczność stosowania dodatkowych modyfikacji w zapytaniach SQL. \n\n\n\n## Adres url strony (page_location) może mieć maksymalnie 1000 znaków [URL do 1000 znaków]\n\n\n\n\u003Cspan style='color:red'>AKTUALIZACJA - ograniczenia limitu znaków dla parametru page_location zostały zmienione z 420 na 1000 znaków\u003C/span>\n\n\n\n\nJeżeli masz długie adresy url, wykorzystujące wiele parametrów to analiza tych danych w BigQuery może Cię zaskoczyć. Podczas jednego z projektów klient poprosił nas o analizę filtrów wybieranych przez użytkownika na podstawie parametrów znajdujących się w adresach url. Z optymizmem usiedliśmy do zadania, pisząc wyrażenia regularne pozwalające na ekstraktowanie parametrów z adresów url.\nPo krótkiej analizie, zauważyliśmy, że części parametrów nie ma lub często są ucinane w adresach url. Postanowiliśmy więc sprawdzić maksymalną długość adresów url i okazało się, że spora część ma zawsze 420 znaków - wszystkie te adresy miały ucięte parametry ze względu na długość. \n\n\n\n![Google Analytics 4 page_location max 420 characters](https://a.storyblok.com/f/46798/1020x110/421b49949a/google-analytics-4-page-location-max-420-characters.png)\n\n\n\nNasza rekomendacja: jeżeli wiemy, że dane parametry url będą dla nas bardzo istotne podczas analizy danych, powinniśmy je wtedy przekazać jako parametry zdarzenia. Pamiętajmy jednak, że page_location to parametr systemowy, który może mieć \u003Cs>420\u003C/s> 1000 znaków. W przypadku niestandardowych parametrów limit znaków wynosi 100. Więcej o limitach można przeczytaj tutaj: [[GA4] Event collection limits - Analytics Help](https://support.google.com/analytics/answer/9267744?hl=en)\n\n\n\n## Dane bez zgody analitycznej nie zawierają informacji o user_pseudo_id i ga_session_id [Dane bez zgody]\n\n\n\n\nJeżeli mamy poprawnie zaimplementowaną funkcję consent mode od Google, dane mogą trafiać do Google Analytics w różnej postaci. Jeżeli użytkownik nie wyraził zgody na jego identyfikację poprzez cookie, jego zdarzenia będą wysyłane do Google BigQuery, ale parametry tj. user_pseudo_id oraz session_id będą miały wartość null. Jeżeli planujemy więc podczas analiz wykorzystywać te dane do łączenia lub innych obliczeń warto o tym pamiętać, gdyż wiele danych może nam się zgrupować do jednego nieistniejącego użytkownika lub do jednej nieistniejącej sesji.\n\n\n\n![Google Analytics 4 BigQuery Consent Mode Data](https://a.storyblok.com/f/46798/861x675/3ffd4a1a5a/google-analytics-4-bigquery-consent-mode.png)\n\n\n\n## W chwili, gdy nasze transakcje trafiają do Google Analytics w różnych walutach, musimy zadbać o ich przeliczenie [Różne waluty]\n\n\n\nJeżeli na naszej stronie lub w aplikacji użytkownicy mogą dokonywać zakupów w różnych walutach, musimy zadbać o przekonwertowanie wartości do waluty, która została ustawiona w ustawieniach danej usługi.\nW przypadku przesyłania w implementacji parametru zdarzenia “currency”, Google Analytics 4 udostępnia nam dodatkowe pola, w których znajdują się automatycznie przekonwertowane dane do waluty USD. Niestety nie możemy nigdzie zdefiniować waluty, w której chcielibyśmy zrzucać dane do Google BigQuery. W związku z tym jeżeli mamy w swoich ustawieniach usługi wybraną walutę np. PLN, to w takim przypadku będziemy musieli ściągnąć do Google BigQuery informacje o kursie z danego dnia i samodzielnie przekonwertować te informację, aby móc odwzorować to co widzimy w panelu. \n\n\n\n\n![Google Analytics 4 BigQuery - Currency Conversion Value](https://a.storyblok.com/f/46798/952x188/e9b7084fe5/google-analytics-4-bigquer-currency-conversion.png)\n\n\n\n## Brak pełnych informacji o pełnych danych Google Ads oraz podatność na zmiany nazw kampanii [Ograniczenia danych Google Ads]\n\n\n\nW eksporcie danych Google Analytics Universal do BigQuery byliśmy przyzwyczajeni do bogatych informacji na temat kampanii Google Ads. \n\n\n\n![Google Analytics 4 BigQuery Missing Google Ads Data](https://a.storyblok.com/f/46798/718x575/99b5b1dfe4/google-analytics-4-bigquery-missing-google-ads-data.png)\n\n\n\nTak jak wcześniej wspomnieliśmy, w przypadku danych Google BigQuery mamy obliczone tylko 3 pola tj. traffic_source.source, traffic_source.medium oraz traffic_source.name i są to pola, które mówią o pozyskaniu użytkownika, a nie o źródłach danej sesji. \nW przypadku chęci wzbogacenia danych Google Analytics 4 o dodatkowe informacje z Google Ads między innymi identyfikator konta reklamowego, identyfikator kampanii, typ kampanii, musimy zadbać o zaciągnięcie tabel Google Ads do Google BigQuery, a dopiero w następnym kroku o połączenie ich za pomocą dodatkowych instrukcji SQL. Proces ten potrafi dosyć mocno rozbudowywać logikę zapytań, w związku z tym jest to kolejne utrudnienie, na które musimy być gotowi podczas eksploracji danych.\n\n\n\n## Podsumowanie\n\nGoogle Analytics 4 i możliwość eksportu danych do Google BigQuery to świetne rozwiązanie, dla wszystkich firm, które chcą podejmować sprawne decyzje na podstawie danych. Jeżeli chcemy jednak w pełni wykorzystać ich potencjał i działać zgodnie z najnowszymi praktykami związanymi z mierzeniem ruchu pomiędzy urządzeniami musimy poświęcić sporo czasu na przeprocesowanie tych danych (deduplikacja użytkowników, atrybucja źródeł ruchu, łączenie danych Google Ads). Musimy być również gotowi na rozbieżności danych pomiędzy panelem Google Analytics 4, a tym co dostaniemy jako wynik w Google BigQUery. \n\nNa szczęście większość problemów związanych z procesowaniem danych da się zautomatyzować - o tym jak do tego podeszliśmy napisaliśmy kolejny artykuł [“Google Analytics 4 BigQuery - sesje, atrybucja i gotowe dane do analiz”](https://witbee.com/pl/blog/google-analytics-4-bigquery-zrodla-ruchu-sesje-atrybucja-koszty-marketingowe-i-gotowe-dane-do-analiz). ","Podczas interakcji z danymi Google Analytics 4 [GA4] w BigQuery możemy napotkać różne trudności o których warto wiedzieć wcześniej, zanim spędzimy wiele godzin nad detektywistyczną próbą ich pokonania.",{"id":294,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":295,"copyright":19,"fieldtype":21,"meta_data":296,"is_external_url":32},190527407499343,"https://a.storyblok.com/f/296300/900x600/07a6ad8a1c/11-ga4-bigquery-9-challenges.png",{},[],"Google Analytics 4 [GA4] BigQuery - 9 wyzwań, które Cę zaskoczy podczas analizy danych",[],[],"google-analytics-4-bigquery-9-challenges-to-surprise-you-in-data-analysis","pl/content/knowledge/google-analytics-4-bigquery-9-challenges-to-surprise-you-in-data-analysis",10,[],"4f75bf07-79d3-4f9f-8ceb-37bdb2ff7e9c",[],{"name":308,"created_at":309,"published_at":258,"updated_at":310,"id":311,"uuid":312,"content":313,"slug":326,"full_slug":327,"sort_by_date":177,"position":328,"tag_list":329,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":330,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":331,"default_full_slug":177,"translated_slugs":177},"Google Analytics 4 [GA4] BigQuery - why you should use it?","2026-06-23T08:28:24.874Z","2026-08-21T07:00:43.097Z",190520135199428,"286c6655-c086-4815-b927-99038aa3e83f",{"_uid":314,"title":315,"content":316,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":317,"component":267,"heroImage":318,"meta_tags":322,"meta_title":323,"heroButtons":324,"updatedDate":274,"bottomBlocks":325},"dc82dc8e-104a-488d-9f00-4dc382a4b37c","Google Analytics 4 BigQuery - dlaczego warto korzystać?","## Seria artykułów o danych Google Analytics 4 [GA4] w BigQuery [Seria artykułów]\n\n\n\n\nArtykuł ten jest elementem z serii wpisów o Google Analytics 4 i eksporcie danych do Google BigQuery, składającym się z następujących pozycji:\n\n\n\n- [#1 Google Analytics 4 BigQuery - dlaczego warto korzystać ?](https://witbee.com/pl/blog/google-analytics-4-bigquery-dlaczego-warto-korzystac)  (obecnie go czytasz)\n- [#2 Google Analytics 4 BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych](https://witbee.com/pl/blog/google-analytics-4-bigquery-9-wyzwan-ktore-cie-zaskoczy-podczas-analizy-danych ) \n- [#3 Google Analytics 4 BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz](https://witbee.com/pl/blog/google-analytics-4-bigquery-zrodla-ruchu-sesje-atrybucja-koszty-marketingowe-i-gotowe-dane-do-analiz)\n\n\n\n## Wprowadzenie - Google Analytics 4 [GA4] i Google BigQuery [Wprowadzenie]\n\n\n\n\n### Dlaczego interfejs Google Analytics to za mało?\nW chwili gdy zaimplementujemy narzędzie Google Analytics 4 na stronie lub w aplikacji, zaczynamy wysyłać informacje o zdarzeniach użytkowników do bazy danych Google. Na podstawie tych danych, w interfejsie Google Analytics 4 wyświetlane są nam różnego rodzaju raporty. \n\n\n\nPrzeglądanie danych w interfejsie Google Analytics 4 potrafi być przyjemne.\nCzasem jednak możemy napotkać na różnego rodzaju ograniczenia podczas analiz np.: \n\n\n\n- dane są próbkowane, co oznacza że wyniki przedstawiane są na podstawie próbki danych, a nie wszystkich zebranych informacji\n- niektórych metryk i wymiarów nie możemy ze sobą połączyć, gdyż system na to nie pozwala\n- danych jest za dużo w związku z tym nagle wiele pozycji np. adresów url czy nazw produktów skrywa się pod nazwą (other) \n\n\n\nCzęsto chcemy dane z Google Analytics wyciągnąć poza system i wykonać dodatkowe zadania np.:\n\n\n\n- zbudować dashboard zawierający dane Google Analytics i wszystkie koszty marketingowe, aby móc obliczyć wskaźnik ROAS czy ERS dla poszczególnych kanałów\n- połączyć dane Google Analytics z danymi CRM np. informacji o statusie zamówienia\n- obliczyć atrybucję dla kampanii marketingowych na danych uwzględniających marżę produktów\n\n\n\nWtedy również napotykamy różne ograniczenia np.:\n\n\n\n- zaskakują nas limity eksportowanych wierszy z Google Analytics i liczby możliwych zapytań wykonanych do API\n- nie możemy wyciągnąć części informacji na odpowiednim poziomie np. identyfikatora użytkownika czy transakcji, jedynie zagregowane obliczone wartości, których nie możemy w żaden sposób modyfikować\n\n\n\n### Eksport danych Google Analytics do Google BigQuery\n\n\n\nPrzykładów i ograniczeń dla różnych projektów moglibyśmy wymienić jeszcze wiele. W odpowiedzi na wszystkie powyższe problemy i wyzwania, Google udostępniło usługę eksportu surowych danych z Google Analytics 4 do BigQuery (dlaczego akurat do tego narzędzia wyjaśnimy w dalszej części wpisu), czyli danych których używa do przygotowania wszystkich raportów w panelu. Zawierają one bardzo szczegółowe informacje o każdym zdarzeniu wysyłanym przez użytkownika ze wszystkimi atrybutami między innymi tj.: identyfikator urządzenia, dokładny czas zdarzenia, nazwa zdarzenia i jego parametry, informację o geolokalizacji, czy też wszystkie dane zbierane poprzez moduł e-commerce.\n\n\n\n![Google Analytics 4 BigQuery Events](https://a.storyblok.com/f/46798/901x472/6713400cd2/google-analytics-4-bigquery-export-table.png)\n\n\n\nZałożenie jest proste - jeżeli chcesz zachować dane, które dla Ciebie zbieramy na dłużej i wykorzystać je do swoich analiz i celów biznesowych, teraz masz taką możliwość. \n\n### Szansę do działania mają nie tylko duzi, ale również mali i średni przedsiębiorcy!\n\nW przeszłości, przy narzędziu Google Analytics Universal, na eksport surowych danych mogli pozwolić sobie tylko najwięksi gracze, a konkretnie firmy, które były w stanie płacić minimum kilkadziesiąt tysięcy $ rocznie za usługę Google Analytics 360 (wersja premium). Teraz ta opcja jest dostępna za darmo dla wszystkich firm korzystających z Google Analytics 4. \nJest to więc szansa, z której mogą skorzystać nie tylko duże firmy i korporacje ale również mali i średni przedsiębiorcy, którzy chcą wykorzystać dane Google Analytics 4 do podejmowania lepszych decyzji biznesowych. \n\n\n\n### Dlaczego dane Google Analytics 4 [GA4] są eksportowane do Google BigQuery, a nie do spreadsheet’u czy excela?\n\n\n\n#### Struktura przesyłanych zdarzeń\nSam schemat tabeli danych zawiera w sobie ponad 100 kolumn z różnymi wartościami i w różnej strukturze. Zdarzenia zawierają w sobie często wiele dodatkowych informacji np. klika parametrów czy kilka zakupionych produktów. Przeglądanie tego typu danych w arkuszach kalkulacyjnych przed wykonaniem odpowiedniej selekcji byłoby utrudnione.\n\n#### Wielkość danych\nNa potrzeby artykułu sprawdziliśmy mały sklep internetowy, odwiedzony danego dnia przez 2200 użytkowników - taki sklep wygenerował 50 MB danych w jeden dzień. Zakładając, że chcielibyśmy przeanalizować wszystkie dane tego sklepu np. z całego roku, plik z tabelą musiałby ważyć ok. 18 GB - takiej wielkości pliku nie jest w stanie płynnie przyjąć żaden arkusz kalkulacyjny. Nie mówiąc już o wykonywaniu na nich dodatkowych operacji jak obliczenia, sortowanie czy filtrowanie. \nDla odniesienia duże firmy potrafią zebrać w jeden dzień do Google Analytics od kilkudziesięciu do nawet kilkuset GB informacji. Do przechowywania tak dużych zbiorów danych i ich analizy musiały więc powstać specjalne narzędzia.\n\n#### Google BigQuery - czyli nowoczesna hurtownia danych w chmurze\n\nFirma Google, której misją jest „uporządkowanie światowych zasobów informacji tak, by stały się powszechnie dostępne i użyteczne dla każdego” potrzebowała na swoje potrzeby analizować bardzo duże zbiory danych ze wszystkich usług tj. Google Search, YouTube, Google Maps i innych. W tym celu powstała technologia nazwana Google BigQuery, która potrafi przechowywać i analizować dane o olbrzymich rozmiarach. Często spotykana komunikacja o Google BigQuery brzmi “Petabyte Scale Data Warehouse”, czyli hurtownia danych skalująca się do rozmiarów Petabajtów.\n\n\n\n\u003Cp style='text-align:center'>1 PETABAJT = 1 TYS. TERABAJTÓW = 1 MLN GB\u003C/p>\nRozwiązanie sprawdziło się do wewnętrznych analiz w Google, w związku z tym w 2017 roku Google BigQuery zostało udostępnione jako produkt do przechowywania i analizowania zbiorów danych na rozwijającej się platformie chmurowej Google Cloud. \n\n\n\nMając 2 produkty jakimi są Google Analytics i Google BigQuery oraz klientów o różnej skali firma Google postanowiła je ze sobą zintegrować. Dzięki temu po wykonaniu kilku kliknięć można było uruchomić automatyczny eksport danych Google Analytics do Google BigQuery. Tak jak wcześniej wspomnieliśmy, usługa ta była dostępna w Google Analytics Universal tylko dla klientów wersji premium. Teraz każdy kto posiada Google Analytics może taką integrację wykonać wchodząc w ustawienia administracyjne. Szczegóły opisane są w dokumentacji pod tym linkiem: [Konfigurowanie Google Analytics 4 BigQuery Export](https://support.google.com/analytics/answer/9823238?hl=pl&ref_topic=9359001#zippy=%2Cin-this-article%2Ctematy-w-tym-artykule)\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/604x560/4ffbae8fcf/google-analytics-4-bigquery-export-configuration.png\">\n\u003C/div>\n\n\n\n#### Eksploracja danych Google Analytics 4 [GA4] w BigQuery\n\nPo eksporcie danych przychodzi czas na eksplorację danych w interfejsie Google BigQuery.\nInterfejs Google BigQuery jest dosyć prosty i intuicyjny. \nPo lewej stronie znajduje się lista naszych zbiorów danych i tabel, które możemy analizować. Pozostała i największą część interfejsu zajmuje pole, w którym musimy napisać i uruchomić zapytanie SQL. \n\n![Img](https://a.storyblok.com/f/46798/1210x702/cde5023e6b/google-analytics-4-bigquery-export-exploration.png)\n\n\n\nNo właśnie, w celu analizowania danych w Google BigQuery musimy poznać bazodanowy język SQL (Structured Query Language), gdyż Google BigQuery na chwilę obecną nie wspiera języka polskiego czy angielskiego :).\n\n![Google Analytics 4 SQL](https://a.storyblok.com/f/46798/940x788/b4a71b9b83/google-analytics-4-bigquery-sql.gif)\n\nKrótko wyjaśniając, SQL to język zapytań wykorzystywany do zarządzania bazą danych. Dzięki niemu możemy między innymi zapisywać, odczytywać, modyfikować i usuwać dane w tabelach. Pisząc zapytanie używamy różnych poleceń i instrukcji tj. SELECT, FROM, WHERE, GROUP BY, ORDER BY. \n\n \n\n![SQL Structure Description](https://a.storyblok.com/f/46798/775x461/8083834207/sql-structure-description.png)\n\n\n\nPo uruchomieniu zapytania otrzymujemy informację zwrotną w postaci tabeli, którą możemy potem zapisać lub wyeksportować do innych narzędzi np. Looker Studio, Google Sheets czy Excel poprzez plik CSV. \nPoniżej znajduje się przykładowe zapytanie zwracające TOP 10 produktów dodanych do koszyka na podstawie danych z Google Analytics 4.\n\n \n\n![Img](https://a.storyblok.com/f/46798/1356x716/23ebcf7137/google-analytics-4-bigquery-example-query.png)\n\n\n\nMając w planach wykorzystać eksport Google Analytics 4 do BigQuery, warto rozpocząć swoją przygodę z nauką SQL, gdzie bariera wejścia jest znacznie niższa niż wejście w świat programowania. \n\n\n\n Poniżej znajduje się kilka przydatnych źródeł wiedzy w tym zakresie:\n\n- [w3schools - SQL Tutorial ](https://www.w3schools.com/sql/)  \n- [Przykłady podstawowych zapytań SQL na danych Google Analytics 4](https://developers.google.com/analytics/bigquery/basic-queries)\n- [Książka Google BigQuery: The Definitive Guide: Data Warehousing, Analytics, and Machine Learning at Scale](https://www.amazon.pl/Google-BigQuery-Definitive-Warehousing-Analytics/dp/1492044466/ref=asc_df_1492044466/?tag=plshogostdde-21&linkCode=df0&hvadid=504212245098&hvpos=&hvnetw=g&hvrand=1543218266178473463&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=20859&hvtargid=pla-864415395724&psc=1)\n- [Simo Ahava - #BIGQUERYTIPS: QUERY GUIDE TO GOOGLE ANALYTICS: APP + WEB](https://www.simoahava.com/analytics/bigquery-query-guide-google-analytics-app-web/)\n- [Dokumentacja Google BigQuery](https://cloud.google.com/bigquery/docs/reference/standard-sql/introduction#sql)\n\n## Kilka powodów dlaczego warto zacząć działać z eksportem Google Analytics 4 [GA4] w BigQuery już teraz [Powody, by zacząć]\n\nOmówiliśmy podstawowe kwestie związane z eksportem danych do Google Analytics 4, teraz czas poznać kilka ważnych powodów, które powinny skłonić każdą firmę do rozpoczęcia wykonywania swoich analiz w Google BigQuery. \n\n\n\n### Jeżeli nie włączysz opcji eksportu danych do Google BigQuery, stracisz swoje dane historyczne\n\nW przypadku Google Analytics Universal mieliśmy możliwość ustawienia automatycznego usuwania danych po 14, 26, 38, 50 miesiącach. Mogliśmy też zrezygnować z tej opcji, co oznaczało, że dane do analizy w Google Analytics były dostępne nawet sprzed 50 miesięcy.\n \n\n\n**Google Analytics Universal - ustawienia retencji danych**\n\n![Google Analtyics 4 BigQuery Data Retention](https://a.storyblok.com/f/46798/894x350/b1555a6489/google-analytics-4-bigquery-export-data-retention.png)\n\n\n\nW Google Analytics 4, domyślny czas retencji twoich danych jest ustawiony na 2 miesiące - jeżeli masz tą opcję niezmienioną, warto to zrobić wchodząc w Administracja -> Ustawienia Usługi -> Retencja danych. W wersji darmowej możemy maksymalnie rozszerzyć ten zakres do 14 miesięcy. W wersji płatnej Google Analytics 4 Premium jest możliwość rozszerzenia retencji do 26, 38 i 50 miesięcy, ale brakuje już opcji przetrzymywania danych bezterminowo.\n\n\n\n**Google Analytics 4 - ustawienia retencji danych**\n\n![Img](https://a.storyblok.com/f/46798/894x417/ad34084be4/google-analytics-4-bigquery-export-data-retention-settings.png)\n\n\n\nDane w BigQuery możemy przechowywać bezterminowo - haczyk polega na tym, że dane w BigQuery pojawiają się dopiero od momentu ich konfiguracji, w związku z tym jeżeli zależy nam na dostępie do danych historycznych, powinniśmy włączyć eksport danych do Google BigQuery jak najszybciej. \n\n\n### Wizualizacje danych Google Analytics 4 w Looker Studio - BigQuery to brak limitów w stosunku do API\n\nPopularnym rozwiązaniem do wizualizacji danych poza panelem Google Analytics 4 jest Looker Studio wcześniej znane jako Google Data Studio. Google Analytics 4 jest z tym narzędziem zintegrowane programistycznie poprzez API (Application Programming Interface), co pozwala na szybkie i proste tworzenie własnych wizualizacji w postaci tabel i wykresów. \nW listopadzie 2022 roku wiele firm, które posiadało dashboardy analityczne w Looker Studio, zamiast tabel i wykresów zobaczyło komunikat informujący o przekroczeniu limitów dotyczących pobierania danych przez wcześniej wspomniane API. \nRaporty wyglądały więc w następujący sposób. \n\n \n\n![Google Analytics 4 Looker Studio Limits Error](https://a.storyblok.com/f/46798/1205x784/8f7d251957/google-analytics-4-looker-studio-limits-error.png)\n\n\n\nW dokumentacji Looker Studio pojawił się w tej sprawie oficjalny komunikat, który mówił o nałożonych limitach w Google Analytics Data API. \nLink do opublikowanego komunikatu znajduje się [tutaj](https://support.google.com/looker-studio/answer/11521624?hl=en#nov-10-2022).\n\n \n\n![Google Analytics 4 Looker Studio Data Limits](https://a.storyblok.com/f/46798/1046x408/ab1b2cd337/google-analytics-4-looker-studio-release-notes.png)\n\n \n\nGoogle wprowadziło nawet narzędzie do monitorowania liczby zapytań z tego konektora, aby można było lepiej oszacować przekroczenie limitów pobieranych danych przez nasze dashboardy. \nRekomendowaną opcją w przypadku przekroczenia takich limitów jest między innymi ograniczenie liczby wizualizacji oraz dostępu do raportu w organizacji lub wykorzystanie eksportu danych Google Analytics 4 do Google BigQuery.\n\n![Google Analytics 4 Looker Studio Data Limits Steps To Resolve](https://a.storyblok.com/f/46798/772x437/4a54ca47ea/google-analytics-4-looker-studio-data-limits-resolve.png)\n\n\n\nW chwili gdy jesteśmy połączeni poprzez konektor Google BigQuery, zapytania wysyłane są do Google BigQuery, a nie do Google Analytics Data API, w związku z tym unikamy limitów zapytań dla danych historycznych. Wizualizacja danych na podstawie tabel z Google BigQuery jest więc tutaj kolejną korzyścią jeżeli chcemy mieć zapewniony stały dostęp do raportowania bez obaw o wszystkie limity. \n\n\n\n### Próbkowanie danych w interfejsie - dla BigQuery to żaden problem\n\nW panelu Google Analytics 4 w sekcji eksploracji widnieje wiele opcji dotyczących wizualizacji i raportowania zebranych danych. Część z nich w zależności od wybranych metryk i wymiarów wymaga dużych obliczeń, co finalnie może skutkować próbkowaniem danych. Gdy w ramach danego zapytania konieczne będzie przetworzenie większej liczby zdarzeń, Google Analytics użyje próbki dostępnych danych. W przypadku darmowej wersji Google Analytics limit wynosi 10 mln zdarzeń, dla wersji płatnej premium, będzie to 1 miliard zdarzeń. \n\n\n\nNa poniższym zrzucie ekranu widać uruchomiony rekomendowany raport kohortowy znajdujący się w galerii szablonów. Nie modyfikując żadnych parametrów wyświetlany jest wykrzyknik, który informuje nas o dużym próbkowaniu danych - raport ten został sporządzony raptem na podstawie 6.91% wszystkich informacji, które Google Analytics posiadał, w związku z tym najprawdobniej charakteryzuje się dużą niedokładnością.\nOdnosząc się do tego przykładu podczas analizy innych danych możemy napotkać wiele takich przypadków, które znacząco mogą utrudnić podejmowanie decyzji. \n\n\n\n![Google Analytics 4 Reports Sampling](https://a.storyblok.com/f/46798/1283x577/c2f853202d/google-analytics-4-report-sampling.png)\n\n \n\nPrzygotowując raporty w Google BigQuery mamy dostęp do wszystkich zebranych danych i możemy przygotować taki raport jak i wiele innych bez próbkowania. W interfejsie będzie to w tym przypadku niemożliwe. \n\n\n\n### Kardynalność danych - w BigQuery sami decydujemy o poziomie agregacji danych\n\nKardynalność danych występuje, gdy analizowany wymiar wykorzystany w raporcie zawiera zbyt wiele wierszy. Może to być np. adres url, identyfikator produktu, identyfikator użytkownika lub wiele kombinacji źródeł ruchu. Przez kardynalność danych możemy napotkać różne wartości w raportach standardowych i raportach eksploracji przy użyciu tych samych wymiarów i metryk. Kardynalność danych w panelu Google Analytics 4 wprowadza również pozycją w wierszu o nazwie “(other)” za każdym razem jak osiągnie limit wierszy. \nW Google BigQuery nie będzie takiej sytuacji, gdyż sami decydujemy o poziomie agregacji danych, na których chcemy pracować. \n\n![Google Analytics 4 Data Cardinality](https://a.storyblok.com/f/46798/1358x720/928b1624f0/google-analytics-4-data-cardinality.png)\n\n\n\n### Możliwość łączenia danych z różnymi systemami\n\nDo Google BigQuery można zrzucić wiele danych biznesowych innych niż Google Analytics. Mogą to być informacje o kosztach reklamowych, statusach z systemów CRM, dane z Google Merchant Center i wiele innych. \nWszystko to możemy ze sobą połączyć i przygotować jedną tabelkę czyli tzw. “Data Mart”. Taką tabelkę możemy potem zwizualizować na dashboardzie np. w Looker Studio i cieszyć się stałą kontrolą wyników marketingowych w naszym biznesie. \nTakie rzeczy są możliwe do osiągnięcia bez kodowania, dzięki gotowym [rozwiązaniom](https://witbee.com/pl/witcloud), które automatyzują zbieranie i raportowanie danych.\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/404x243/c59cb25af6/google-analytics-4-bigquery-data-cost-integration.png\">\n\u003C/div>\n\n\n\n![Google Analytics 4 & Data Integration Report](https://a.storyblok.com/f/46798/999x222/68fc1b50c6/google-analytics-4-bigquery-data-integration-report.png)\n\n\n\n### Walidacja i stały monitoring dla implementacji na podstawie danych w Google BigQuery\n\nDane GA4 w BigQuery ułatwiają weryfikację raportów i implementacji zdarzeń. Mając do dyspozycji wszystkie szczegółowe informacje włącznie z identyfikatorem użytkownika i znacznikiem czasu każdego zdarzenia (timestamp) jesteśmy w stanie precyzyjnie przeanalizować wartości wysyłane do Google Analytics podczas kontaktu użytkownika ze stroną. Przy pomocy odpowiednich zapytań SQL możemy wykryć anomalie w danych czy też sprawdzić nieprawidłowości związane z sekwencją wysyłanych zdarzeń bez omijania trudności w systemie jakimi są próbkowanie czy też kardynalność danych. Jeżeli biznes wprowadza wiele zmian w stronie lub aplikacji, stałe monitorowanie wartości przesyłanych do Google Analytics pozwala szybko reagować na zmiany np. o błędnie przesyłanym parametrze. \n\n\n\n### Możliwość wykorzystania danych do prognoz i predykcji dzięki rozwiązaniom BigQuery ML\n\nWykorzystanie uczenia maszynowego w marketingu staje się już standardem. Posiadając dane w Google BigQuery możemy dotrzymać kroku tym trendom i wykorzystać je do zbudowania predykcji lub prognoz na podstawie naszych danych bez konieczności pisania kodu w językach typu Python, Java. [Moduł BigQuery ML](https://cloud.google.com/bigquery-ml/docs/introduction) pozwala tworzyć modele, prognozy i predykacje w oparciu o język SQL, co znacząco zmniejsza barierę wejścia w ten obszar i otwiera nowe możliwości między innymi prognozę ruchu i sprzedaży z poszczególnych kanałów marketingowych, wykrywanie anomalii w danych, budowanie zaawansowanej segmentacji dla użytkowników czy też tworzenie niestandardowym modeli atrybucji. \n\n\n\n![Google Analytics 4 & BigQuery ML](https://a.storyblok.com/f/46798/906x427/6549ac28cc/google-analytics-4-bigquery-and-machine-learning.png)\n\n\n\nJeżeli uważasz więc, że odpowiedzi na poniższe pytania byłyby przydatne, BigQuery ML jest rozwiązaniem, które może Ci pomóc:\n\n\n\n- Ile przychodu mój biznes \u003Cs>wygenerował\u003C/s> / \u003Cspan style='color: green' >wygeneruje\u003Cspan> ?\n- Ile \u003Cs>wydaliśmy\u003C/s> / \u003Cspan style='color: green'>wydamy\u003C/span> na media?\n- Które produkty \u003Cspan style='color: green'>będą się sprzedawać\u003C/span> i ile \u003Cspan style='color: green'>będzie nas to kosztować\u003C/span>?\n- Ile na tym wszystkim \u003Cs>zarobiliśmy\u003C/s> / \u003Cspan style='color: green'>zarobimy\u003C/span> ?\n\n\n\n\u003Cdiv style=\"text-align:center\">\n\u003Cimg src=\"https://a.storyblok.com/f/46798/706x197/7ad081983a/google-analytics-4-bigquery-and-ml-report-example.png\">\n\u003C/div>\n\n\n\n## Surowe i niepróbkowane dane prawie “za darmo” - przyjrzyjmy się kosztom [Koszty]\n\nTak jak wspomnieliśmy na początku artykułu przy Google Analytics Universal sprawa była prosta - jeżeli chcieliśmy mieć niepróbkowane dane Google Analytics w BigQuery musieliśmy być posiadaczem **Google Analytics Premium za 10-tki tysięcy dolarów rocznie.** Teraz mamy możliwość włączenia tej usługi za darmo. \n\n\n\nSamo Google BigQuery jest płatną usługą należącą do rodziny produktów Google Cloud Platform. Jeżeli zakładamy konto rozliczeniowe w Google Cloud Platform po raz pierwszy, na start dostaniemy 300$ do wykorzystania przez pierwsze 90 dni. W związku z tym analizę danych można rozpocząć za darmo. \n\n\n\nDodatkowo warto przypomnieć, że BigQuery powstało z myślą o analizie bardzo dużych zbiorów danych.  W związku z tym cennik tego narzędzia został dostosowany do dużych gracz, co oznacza szansę wykorzystania świetnej technologii w bardzo niskiej cenie przez małe, średnie a czasem nawet i duże przedsiębiorstwa.\n\n\n\nNa miesięczne rozliczenie produktu Google BigQuery wpływają 3 elementy:\n\n\n\n- 0.02$ miesięcznie za każdy przechowywany GB w Google BigQuery, przy czym pierwsze 10 GB jest za darmo\n- 5$ za każdy przetworzony TB podczas uruchamiania zapytań SQL na danych, przy czym 1 TB w miesiącu jest za darmo\n- 0.05$ za każdy przesłany GB w streamie danych w czasie rzeczywistym(jeżeli mamy uruchomioną taką opcję)\n\n\n\nZgodnie z informacjami zawartymi w dokumentacji 1 GB danych to ok. 600 000 zdarzeń Google Analytics. W celu odniesienia do tej liczby sprawdziliśmy sklep internetowy, który w miesiącu odwiedziło 260 tys. użytkowników. Taki sklep wygenerował 6 mln zdarzeń, co daje średnio 200 tys. zdarzeń dziennie.\n\n\n\nPoniżej znajduje się więc przykładowa estymacja dla biznesu generującego 600 000 zdarzeń dziennie aby uprościć kalkulacje.\n\n\n\n**Przesyłanie zdarzeń w czasie rzeczywistym**\n\n\n\n30 dni x 1GB x 0.05$ = **1.5$ za przesłanie 18 MLN** zdarzeń do Google BigQuery w miesiącu\n\n\n\n**Przechowywanie danych**\n\n\n\nDane będą narastać każdego dnia, w związku z tym koszt za przechowywanie również będzie rósł każdego miesiąca. W celu zobrazowania kosztów przedstawiamy to już na pełnych nominałach.  \n\n\n\nMiesiąc 1: (30 GB - 10 GB darmowych) * 0.02$ = 20 GB * 0.02$ = 0.4$ \nMiesiąc 2: (60 GB - 10 GB darmowych) * 0.02$ = 50 GB * 0.02$ = 1$\nMiesiąc 3: (90 GB - 10 GB darmowych) * 0.02$ = 80 GB * 0.02$ = 1.6$\n…\nMiesiąc 12: (360 GB - 10 GB darmowych) * 0.02$ = 7$\n\n\n\n**Wykonywanie zapytań SQL na danych**\n\n\n\nWykonując zapytanie SQL na danych, wybieramy tylko te informacje, które nas interesują. W związku z tym nie procesują one wszystkich informacji jakie posiadamy.\nDla przykładu sprawdziliśmy biznes mający ok. 1 GB danych i 3 dosyć rozbudowane raporty w Looker Studio odświeżane co godzinę. Taki biznes przeprocesował 1.5 TB danych w skali miesiąca.\n\n\n\n(1.5 TB - 1 TB za darmo) * 5$ = 0.5 TB za 5$ = 2.5$ \n\n\n\nKoszty wykonywania zapytań są zależne są od wielu kwestii, w związku z tym mogą one się różnić dla poszczególnych biznesów. Kilka czynników, które mogą na nie wpływać znajduje się poniżej:\n\n\n\n- wielkość danych wsadowych do raportu\n- liczba raportów\n- jakość napisanych zapytań(można często uzyskać ten sam efekt wielokrotnie taniej, unikając błędów w składni języka SQL)\n- ruch na raportach podpiętych np. pod Looker Studio. Każdy wykres czy tabelka wykonuje zapytanie SQL do BigQuery, które powoduje naliczenie dodatkowych MB\n\n\n\n**Łączny miesięczny koszt dla biznesu generującego 600 000 zdarzeń dziennie**\n\n\n\nPrzy założeniu, że mamy już komplet danych z jednego roku, zapłacimy więc 11$: \n\n\n\n7$ za przechowywanie danych + 1.5$ za streamowanie danych + 2.5$ za odpytywanie danych = 11$\n\n\n\n\nDla sklepów, które generują znacznie mniej zdarzeń niż 600 000 miesięcznie, usługa ta może być praktycznie darmowa. \n\n\n\n## Podsumowanie\n\n\n\nEksport danych Google Analytics 4 do Google BigQuery pozwala uchronić nas przed utratą danych oraz ominąć wiele limitów i ograniczeń czekających na nas w panelu czy też połączeniu z API. Dodatkowo jest dobrym punktem do rozpoczęcia budowy własnej hurtowni danych, w której zbierzemy więcej informacji między innymi informacji o kosztach reklamowych czy też statusów z systemów CRM. Narzędzie to było budowane z myślą o dużych graczach, w związku z tym nie ma dużej bariery wejścia jeżeli chodzi o cenę tego rozwiązania. Jeżeli zaczniemy częściej korzystać z tej technologii możemy w stosunkowo prosty sposób przeskoczyć do świata uczenia maszynowego i zacząć lepiej prognozować to co się wydarzy. \nFirmy, które zaczną sprawnie wykorzystywać tą technologię w biznesie uzyskają zdecydowaną przewagę konkurencyjną na rynku. ","Eksport danych Google Analytics 4 do Google BigQuery pozwala uchronić nas przed utratą danych oraz ominąć wiele limitów i ograniczeń czekających na nas w panelu czy też połączeniu z API.",{"id":319,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":320,"copyright":19,"fieldtype":21,"meta_data":321,"is_external_url":32},190527407441997,"https://a.storyblok.com/f/296300/900x600/4023fad189/12-ga4-bigquery-why-use-it.png",{},[],"Google Analytics 4 [GA4] BigQuery – dlaczego warto z tego korzystać?",[],[],"google-analytics-4-bigquery-why-you-should-use-it","pl/content/knowledge/google-analytics-4-bigquery-why-you-should-use-it",20,[],"822d7ee2-57d3-4e13-94da-dc3109939f73",[],{"name":333,"created_at":334,"published_at":258,"updated_at":335,"id":336,"uuid":337,"content":338,"slug":357,"full_slug":358,"sort_by_date":177,"position":178,"tag_list":359,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":360,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":361,"default_full_slug":177,"translated_slugs":177},"Raport \"na wczoraj\", który dostaniesz za tydzień","2026-06-22T19:22:58.176Z","2026-08-21T07:00:42.990Z",190327104256848,"63e297e4-7adc-4c36-a29f-dfc985044211",{"_uid":339,"title":340,"content":341,"eyebrow":342,"showTOC":39,"category":226,"readTime":19,"subtitle":343,"component":267,"heroImage":344,"meta_tags":348,"meta_title":353,"heroButtons":354,"updatedDate":355,"bottomBlocks":356},"raport-content-page","Raport „na wczoraj”, który dostaniesz za tydzień. Jak chaos w danych paraliżuje Twój e-commerce.","## Anatomia Paraliżu [Paraliż]\n\n![](https://a.storyblok.com/f/296300/669x310/cefb804300/image1.png)\n\nJest wtorek, 10:00 rano. Właśnie zakończył się gwałtowny pik sprzedażowy po weekendowej promocji. Wpadasz na spotkanie zespołu marketingu z jednym, prostym pytaniem: „Jaki był wczorajszy *realny* ROAS? Musimy wiedzieć, czy kontynuować inwestycję, czy wygasć budżet”.\n\nCisza.\n\nW końcu ktoś z zespołu marketingu odzywa się niepewnie: „Wiesz, to skomplikowane. Sprawdziłem panel Google Ads, pokazuje ROAS 4.0. Panel Facebooka pokazuje 3.5. Ale obaj wiemy, że to są ‘optymistyczne’ liczby z paneli… mogą raportować te same transakcje, nie uwzględniają porannych anulacji ani nie potwierdzają, czy wszystkie transakcje to na pewno opłacone zamówienia. W GA4 liczby wyglądają jeszcze inaczej…”\n\nPo chwili dodaje: „żeby poznać *prawdziwy* przychód, musimy poczekać na Grześka. Tylko on ma skrypt, który łączy te koszty reklamowe z naszym systemem e-commerce (Magento) i filtruje zamówienia po statusie ‘opłacone’. Dane z naszego CRM są po prostu pełniejsze. Wysłałem prośbę… ale Grzesiek jest na urlopie. Realnie, takie podsumowanie będziemy mieć… może w piątek”.\n\nBrzmi znajomo?\n\nDecyzja, którą trzeba było podjąć w 10 minut – oparta o dane kosztowe z **Google i Facebooka** oraz o *wiarygodne* dane przychodowe z **Twojego sklepu** – właśnie została odroczona o tydzień. W tym czasie budżet marketingowy albo „przepala się” na nieskuteczną kampanię, albo, co gorsza, kampania-samograj została wstrzymana, bo nikt nie potrafił na czas potwierdzić jej *realnej* skuteczności.\n\nTo nie jest problem braku danych. To paraliż decyzyjny spowodowany chaosem w *dostępie* do nich.\n\n## Problem głębszy niż „złe raporty” [Problem]\n\n![](https://a.storyblok.com/f/296300/1024x490/9facf8b220/image2.png)\n\nW rozmowach z setkami menedżerów e-commerce zauważylimy pewien schemat. Największym bólem jest to, że dane są *niedostępne* tu i teraz, w jednym miejscu.\n\nProblem, który zdiagnozowaliśmy, ma trzy oblicza:\n\n1. **Silosy ludzkie:** Dane są zamknięte w głowach lub na dyskach twardych konkretnych osób. „Tylko Grzesiek” wie, jak połączyć te dwa Excele. „Tylko Ania” ma dostęp do tego konkretnego widoku w systemie. Gdy kluczowa osoba choruje lub wyjeżdża na urlop – cały proces analityczny staje.\n2. **Silosy techniczne:** Dane z Facebook Ads żyją w swoim „optymistycznym” świecie. Dane z Google Ads w swoim. Dane z Twojego Magento, Shopera czy PrestaShop to „źródło prawdy” o realnym przychodzie. Bez automatycznego połączenia, te dwa światy się nie spotykają.\n3. **Kultura „zamawiania raportów”:** Ponieważ dane są w silosach, dostęp do nich staje się przywilejem, a nie standardem. Zespoły „zamawiają” raporty u specjalistów/analityków, stając w wirtualnej kolejce i czekając na swoją odpowiedź.\n\n**A teraz „mnożnik chaosu”: Skala.**\n\n![](https://a.storyblok.com/f/296300/660x278/218caf653e/image3.png)\n\nCo, jeśli działasz nie na jednym, ale na **pięciu rynkach** (w PLN, EUR, CZK)? Co, jeśli zamiast 3 kanałów marketingowych, masz ich **15**, wliczając w to sieci afiliacyjne, Ceneo, TikToka i dziesiątki partnerów? Co jeśli dane pobierane do Excela raportowane są w różnych walutach?\n\nTen chaos rośnie wykładniczo. Każdy nowy rynek i każdy nowy kanał to kolejny „silos ludzki” i „silos techniczny”. W tym momencie manualne łączenie danych staje się już nie tylko *trudne*. Staje się fizycznie *niemożliwe*.\n\n## Prawdziwy koszt „szybkiego pytania” [Koszt]\n\nZastanówmy się, ile kosztuje ten model. „Szybkie pytanie”, które blokuje specjalistę/analityka na pół dnia, to nie tylko koszt jego pensji. To przede wszystkim:\n\n- **Koszt alternatywny (Opportunity Cost):** Stracone szanse sprzedażowe, bo kampania nie została zoptymalizowana na czas.\n- **Koszt błędnych decyzji:** Decyzje podjęte „na czuja” lub na podstawie niekompletnych danych (np. tylko z „optymistycznego” panelu reklamowego), bo „nie było czasu czekać” na pełny obraz z CRM.\n- **Koszt frustracji zespołu:** Najlepsi specjaliści/analitycy nie chcą być „fabryką raportów”. Chcą być „motorami wzrostu”. Gdy 80% ich czasu zajmuje ręczne kopiowanie i wklejanie danych, ich potencjał jest marnowany. Zespół marketingu jest sfrustrowany, bo nie dostaje odpowiedzi na czas.\n\nChaos w przepływie danych to chaos w przepływie komunikacji. A chaos komunikacyjny to prosta droga do przegranej na konkurencyjnym rynku e-commerce.\n\n## Uwolnienie danych: od „czekania” do „działania” [Rozwiązanie]\n\n![](https://a.storyblok.com/f/296300/1251x420/7ab00428dc/image4.png)\n\nRozwiązaniem tego paraliżu nie jest zatrudnienie kolejnego „Grześka” ani kupno kolejnego narzędzia do „ładnych wykresów”. Rozwiązaniem jest fundamentalna zmiana w filozofii dostępu do danych: **automatyzacja i centralizacja.**\n\nZamiast ręcznie *prosić* o dane, technologia powinna je dla nas *przygotowywać* – automatycznie, każdej nocy. W WitBee wierzymy (zgodnie z naszą misją demokratyzacji dostępu do analityki), że dane powinny być zasobem dostępnym „na żądanie”, a nie „na zamówienie”.\n\nJak w praktyce powinien wyglądać taki ideałny, zautomatyzowany proces?\n\n1. **Automatyczne łączenie:** System musi być **zbudowany do obsługi skali**. Powinien automatycznie, każdej nocy, łączyć się ze *wszystkimi* Twoimi źródłami – nieważne, czy to 3 systemy reklamowe, czy 15, czy to jeden rynek w PLN, czy pięć w różnych walutach.\n2. **Unifikacja „prawdy”:** System musi automatycznie pobierać koszty z każdego kanału, ale co ważniejsze, łączyć je z *twardymi danymi* z Twojej platformy e-commerce — pobierając realny przychód i status zamówień.\n3. **Gotowość do analizy:** Dane muszą być oczyszczone i ujednolicone. Taki system pozwala raportować na podstawie *realnego, opłaconego przychodu*, odfiltrując anulacje.\n\nRano, gdy przychodzisz do pracy, nie musisz *prosić* o raport. Otwierasz swój dashboard (np. w Looker Studio), który jest zasilany przez gotowe, połączone i aktualne dane ze *wszystkich* rynków.\n\n## Jak zmienia się firma, gdy dane płyną swobodnie? [Scenariusz PO]\n\n![](https://a.storyblok.com/f/296300/1237x504/1d6757c2e7/image5.png)\n\nWróćmy do scenariusza z wtorku o 10:00 rano.\n\n**Scenariusz „PO”:**\n\nHead of E-commerce przychodzi na spotkanie. Wszyscy patrzą na ten sam, aktualny dashboard. Pytanie nie brzmi: „Jaki był ROAS?”. Pytanie brzmi: „Widzę, że nasz globalny, oparty na CRM ROAS wyniósł wczoraj 4.5, ale na rynku czeskim kampania Google Ads X ma ROAS 8. Zespół marketingu – jak myślicie, dlaczego ta kampania zadziałała tam tak dobrze i jak możemy to natychmiast przeskalować na Niemcy?”\n\nTo jest fundamentalna zmiana.\n\nGdy firma przestaje marnować czas na pytanie „Ile było?”, a zaczyna dyskutować „Co robimy dalej?” – to znak, że przeszła od chaosu do strategii. Specjaliści/analitycy przestają być „bramkarzami” danych, a stają się strategicznymi partnerami dla biznesu.\n\n## Podsumowanie [Podsumowanie]\n\n![](https://a.storyblok.com/f/296300/1024x585/eae5e3f679/image6.png)\n\n„Raport na wczasach” to symptom choroby, jaką jest manualne zarządzanie danymi. Jeśli Twój zespół zbyt często słyszy „musimy poczekać na dane”, „Grzesiek jest na urlopie” albo „sprawdzę to na jutro” – to znak ostrzegawczy.\n\nTo nie jest problem techniczny. To strategiczne „wąskie gardło”, które paraliżuje rozwój Twojego e-commerce.\n\n**Zastanów się: ile decyzji w tym kwartale podjąłeś w oparciu o przeczucie, bo na twarde, połączone dane ze wszystkich Twoich rynków po prostu nie było czasu?**\n\n## Obejrzyj webinar o automatyzacji raportowania [Webinar]\n\nJeśli ten problem rezonuje z Tobą, a chaos komunikacyjny związany z raportowaniem brzmi znajomo, mamy coś dla Ciebie.\n\nZapraszamy na bezpłatny webinar: [**„Koniec z czekaniem. Jak wdrożyć automatyzację raportowania w e-commerce”**](/content/jak-wdrozyc-automatyzacje-raportowania-w-e-commerce)\n\nPodczas sesji pokażemy krok po kroku:\n\n- Jak wygląda architektura nowoczesnego, zautomatyzowanego raportowania.\n- Jak w praktyce połączyć dane z wielu systemów reklamowych (Google, Meta, TikTok) z „twardymi” danymi z Twojego CRM/e-commerce.\n- Jak przejść od chaosu w Excelach do jednego, spójnego dashboardu, który aktualizuje się sam i mówi prawdę.\n\nTo nie będzie prezentacja sprzedażowa. To będzie warsztat pokazujący *metodologię*, która uwalnia zespoły od powtarzalnej pracy.","Artykuł","Czekasz tydzień na kluczowy raport ROAS? Ten artykuł analizuje, jak chaos w danych, ludzkie silosy i ręczne raportowanie paraliżują firmy e-commerce — i jak wygląda automatyzacja w praktyce.",{"id":345,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":346,"copyright":19,"fieldtype":21,"meta_data":347,"is_external_url":32},190524925519719,"https://a.storyblok.com/f/296300/900x600/c215f0d3b8/04-report-for-yesterday.png",{},[349],{"_uid":350,"name":351,"content":352,"component":236},"raport-og-image","Meta Og Image","https://a.storyblok.com/f/296300/1200x628/68af5e29c3/blog_report_yesterday.png","Raport „na wczoraj”, który dostaniesz za tydzień | WitBee",[],"2025-11-13 00:00",[],"raport-na-wczoraj-ktory-dostaniesz-za-tydzien","pl/content/knowledge/raport-na-wczoraj-ktory-dostaniesz-za-tydzien",[],"b08db62d-51c3-41f6-86ec-33f17bd525c3",[],{"name":363,"created_at":364,"published_at":258,"updated_at":365,"id":366,"uuid":367,"content":368,"slug":384,"full_slug":385,"sort_by_date":177,"position":386,"tag_list":387,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":388,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":389,"default_full_slug":177,"translated_slugs":177},"BigQuery Pricing for E-commerce: A Non-Technical Guide","2026-06-22T13:57:28.322Z","2026-08-21T07:00:42.398Z",190247109968418,"96f672cc-96be-4743-8494-b79f95734fd2",{"_uid":369,"title":370,"content":371,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":372,"component":267,"heroImage":373,"meta_tags":377,"meta_title":370,"heroButtons":381,"updatedDate":382,"bottomBlocks":383},"8c37b8a8-35d4-4a37-a686-485ce2660d88","Ile naprawdę kosztuje BigQuery w e-commerce? Przewodnik bez inżynierskiego bełkotu","Kiedy słyszysz hasło \"Hurtownia Danych\" lub \"BigQuery\", w Twojej głowie pewnie pojawiają się dwie myśli. Pierwsza: \"To technologia, której potrzebuję, żeby łączyć dane i skalować biznes\". Druga: \"To brzmi jak faktura od Google, nad którą nie będę miał kontroli\".\n\nCennik chmury oraz wiele poradników odnosi się do skomplikowanych pojęć dla osoby nietechnicznej. Pełno tam terminów takich jak _active storage_, _slot time_ czy _streaming inserts_. A wielu właścicieli sklepów zadaje sobie proste pytanie: \"Czy to mnie nie zrujnuje?\".\n\nOdpowiedź brzmi: **Nie, jeśli architektura danych jest poprawna.**\n\nBigQuery jest jak potężna maszyna przemysłowa. Jest tania w utrzymaniu, o ile używasz jej mądrze. W tym poradniku przejdziemy przez wszystkie etapy kosztów i pokażemy, gdzie leży granica między \"zabawą dla analityków\" a realnym raportowaniem dla biznesu.\n\n---\n\n**Ważne zastrzeżenie:** Najprościej byłoby napisać jak to bywa w różnych poradnikach \"To zależy...\".  \nKoszty w chmurze są płynne. Mimo wszystko poniższe wyliczenia to realne estymacje dla średniego/dużego e-commerce, mające na celu pokazanie skali kosztów i różnic między podejściem \"surowym\" a zoptymalizowanym.\n\n---\n\n## Część 1: Magazyn (Storage) - Tu jesteśmy bezpieczni\n\nZacznijmy od podstaw. BigQuery to w uproszczeniu gigantyczny Excel w chmurze. Pierwszym kosztem jest przechowywanie danych (np. z GA4, CRM, reklam).  \nPłacisz za to, ile miejsca na dyskach Google zajmują Twoje dane.\n\n### Przykład: Sklep generujący 10 mln zdarzeń miesięcznie w GA4\n\n![](https://a.storyblok.com/f/296300/964x316/1ba15af773/image7.png)\n\n\nZałóżmy, że Twój e-commerce generuje 10 milionów akcji miesięcznie (wyświetlenia, kliknięcia, zakupy).\n\n- **GA4:** 10 mln. zdarzeń to ok. 10 GB miesięcznie (uśredniamy, że jedno zdarzenie to ok. 0.5 - 1 KB danych)\n- **Dodatkowo baza zamówień/produktów z CRM oraz dane o kampaniach z systemu reklamowego:** ok. 5-8 GB miesięcznie.\n- **Łącznie:** Przybywa Ci ok. 15-18 GB danych co miesiąc.\n\nSzacunkowy koszt:  \nGoogle oferuje pierwsze 10 GB miesięcznie za darmo. Każdy kolejny gigabajt to koszt rzędu $0.02 (ok. 8 groszy).  \nNawet jeśli zgromadzisz historię z 3 lat (ok. 500 GB), miesięczny koszt utrzymania tego archiwum zamknie się w okolicach $10 miesięcznie.  \n**Wniosek:** Samo _trzymanie_ danych jest bardzo tanie.\n\n---\n\n## Część 2: Dostawa danych - w paczkach czy natychmiastowo\n\nMasz dwie opcje przesyłania danych do BigQuery.\n\nSpójrzmy na przykład eksportu danych z Google Analytics 4:\n\n1. **Export Dzienny (Daily):** Raz dziennie, rano, Google pakuje dane z wczoraj i wrzuca je do Twojego magazynu. **Koszt: 0 zł.**\n2. **Streaming (Na żywo):** Dane wpadają do bazy minuty po zdarzeniu. **Koszt: ok. $0.05 za GB.**\n\n**Wniosek:** BigQuery nie pobiera opłat w tym przypadku za sam proces zapisywania danych w formie paczek (tzw. batch). W przypadku streamingu (przesyłanie danych na żywo), również nie masz się czym martwić jeżeli Twoja skala nie jest bardzo duża (10 GB \\* $0.05 \\= $0.50 miesięcznie).\n\n![](https://a.storyblok.com/f/296300/1024x751/39962a04d1/image8.png)\n\n\n---\n\n## Część 3: Przetwarzanie (Query) - Dwa Światy Kosztów\n\nTutaj dochodzimy do sedna. BigQuery zarabia na **czytaniu** danych ($6.25 za 1 TB). Ale kto te dane czyta? Tutaj musimy rozróżnić dwa scenariusze, bo to one decydują o Twojej fakturze.\n\n### Świat 1: Analityk w konsoli (Czynnik Ludzki)\n\nTo sytuacja, gdy Twój analityk wchodzi bezpośrednio do BigQuery i pisze kod SQL, żeby odpowiedzieć na pytanie \"ad hoc\", np. _\"Sprawdź mi, dlaczego w zeszły wtorek spadła konwersja z iPhone'ów\"_.\n\nTutaj koszt zależy w 100% od **umiejętności człowieka**.\n\n- **Junior Analityk:** Może napisać zapytanie SELECT \\*, które bezmyślnie przeczyta całą bazę (terabajty danych), żeby znaleźć 5 wierszy. Koszt jednego zapytania: **$5**.\n- **Senior Analityk:** Użyje partycji, wybierze tylko potrzebne kolumny i ograniczy skanowanie. To samo zapytanie wykona za **$0.05**.\n\nTo jest \"laboratorium\". Tu koszty są jednorazowe i zależą od skilla. Ale biznes rzadko siedzi w konsoli. Biznes siedzi w raportach.\n\n![](https://a.storyblok.com/f/296300/1024x565/363eb64c01/image3.png)\n\n\n### Świat 2: Biznes w Looker Studio (Automat)\n\nTo jest Twoja codzienność. Masz dashboard w Looker Studio. Nie piszesz tam kodu SQL - klikasz w filtry, zmieniasz daty.  \nAle Looker Studio w tle musi wysłać zapytanie SQL do BigQuery, żeby narysować wykres.  \nI tu pojawia się problem: Automat (Looker Studio) nie jest tak sprytny jak Senior Analityk. Jeśli podłączysz go do surowych danych, będzie generował ciężkie, drogie zapytania przy każdym Twoim kliknięciu.\n\n![](https://a.storyblok.com/f/296300/1024x559/ef88e496c9/image5.png)\n\n\nNiejednokrotnie pracowaliśmy przy projektach, w których optymalizowaliśmy koszty nieoptymalnych zapytań wykorzystywanych w raportach. Spójrzmy na poniższy przykład - każdego dnia raport generował coraz to większe koszty dochodząc do kwoty 53$ dziennie. Wprowadzając niewielkie zmiany w zapytaniach SQL (skill), raport działał dalej tak samo, ale koszty spadły niemal do 0\\. Najlepiej będzie to jednak przedstawić na przykładowym case study.\n\n![](https://a.storyblok.com/f/296300/1480x529/da9271ddeb/image4.png)\n\n\n## Część 4: Case Study - Ile kosztuje Raport Kwartalny?\n\nZałóżmy, że masz dashboard sprzedażowy z ostatnich 90 dni. Korzysta z niego **5 osób** (zarząd, marketing).\n\n### Scenariusz A: Droga \"Na żywca\" (Looker Studio -\\> Surowe Dane)\n\nPodpinasz raport bezpośrednio do tabel z surowymi zdarzeniami GA4.  \nJeden dzień surowych danych waży 1 GB. Raport z 90 dni musi więc \"dotknąć\" 90 GB danych.\n\n1. **Pułapka interakcji:** Looker Studio jest \"rozrzutne\". Aby wyświetlić dashboard z 10 elementami (wykresy, liczniki), potrafi wysłać 10 osobnych zapytań.\n2. **Brak Cache:** BigQuery ma pamięć podręczną, ale działa ona tylko, jeśli nic nie zmieniasz.\n   - Manager wchodzi na raport.\n   - Klika filtr \"Kampania Black Friday\".\n   - Cache przestaje działać. BigQuery musi od nowa przesiać **90 GB**, żeby wyciąć tylko tę kampanię.\n   - Manager zmienia sortowanie tabeli. Znów 90 GB.\n\nEfekt:  \n5 osób × 10 zmian filtrów dziennie × gigabajty danych.  \nFaktura staje się nieprzewidywalna. Może to być $50, a może $300, jeśli zespół będzie bardzo aktywny. Płacisz za każdym razem, gdy ktoś dotknie raportu.\n\n### Scenariusz B: Podejście \"Data Mart\" (WitCloud)\n\nTo podejście opiera się na zasadzie: **Przygotujmy dane raz, a porządnie.**\n\nProces wygląda tak:\n\n1. **Zadanie automatyczne (Job):** Codziennie rano system pobiera dane **tylko z wczorajszego dnia** (1 GB surowych danych).\n2. **Agregacja:** System wyciąga to, co ważne i zapisuje w **Data Marcie**. Wynikowa \"cegiełka\" z jednego dnia waży np. 20 MB (a nie 1000 MB).\n3. **Dokładanie cegiełki:** Ta mała porcja danych jest dołączana do tabeli głównej jako nowa partycja.\n\nCo się dzieje w raporcie?  \nGdy Manager zmienia daty, filtruje i sortuje, Looker Studio odpytuje Data Mart.  \nZamiast skanować 90 GB, skanuje 90 małych \"cegiełek\" (łącznie 1.8 GB).  \n**Szacunkowy koszt miesięczny:**\n\n1. **Codzienne przetwarzanie:** Płacisz rano za przeliczenie _tylko jednego dnia_ surowych danych. To koszt stały, ok. **$15 - $25 miesięcznie**.\n2. **Raportowanie:** Ponieważ pracujesz na lekkich danych, setki kliknięć Twoich managerów generują koszt rzędu **$2 - $5 miesięcznie**.\n\n**Razem:** **$20 - $30 miesięcznie**. Stała kwota, niezależna od tego, jak często sprawdzacie wyniki.\n\n![](https://a.storyblok.com/f/296300/1024x559/926a3bc7f0/image6.png)\n\n\n---\n\n## Część 5: Dlaczego to działa? Dwa filary oszczędności\n\nSekret niskich kosztów w podejściu Data Mart opiera się na dwóch mechanizmach technicznych. Partycjonowanie to tylko połowa sukcesu. Drugą połową jest **Agregacja (Zmniejszanie szczegółowości)**.\n\nAby to zrozumieć, wyobraź sobie działanie wielkiego supermarketu.\n\n### Filar 1: Agregacja (Zamiast miliona paragonów - podsumowanie)\n\n- **Surowe Dane (Raw):** To wielki wór, w którym trzymasz **wszystkie paragony** ze wszystkich kas. Każdy paragon ma listę produktów, godzinę, kasjera. Jeśli masz 10 tysięcy klientów dziennie, masz 10 tysięcy długich paragonów (wierszy w bazie).\n  - Gdy pytasz BigQuery o przychód, baza musi wziąć każdy paragon do ręki i zsumować kwoty. To trwa i kosztuje, bo baza \"mieli\" ogromną ilość informacji.\n- **Data Mart (Agregacja):** To sytuacja, w której księgowa raz dziennie bierze te 10 tysięcy paragonów, liczy to co ważne i zapisuje na jednej kartce: _\"Dzień: Wtorek. Sprzedaż łącznie: 50 000 zł. Ilość transakcji: 10 000\"_.\n  - Tę jedną kartkę (wynik agregacji) wkładamy do Data Martu.\n  - **Efekt:** Zamiast trzymać miliony wierszy o każdym kliknięciu, trzymamy kilkanaście wierszy z podsumowaniem dnia. Tabela staje się 1000x lżejsza.\n\n![](https://a.storyblok.com/f/296300/1024x559/43e4ca93c0/image1.png)\n\n\n### Filar 2: Partycjonowanie (Porządek w segregatorze)\n\nSkoro mamy już te lekkie \"kartki z podsumowaniem dnia\", musimy je dobrze ułożyć.\n\n- **Bez Partycji:** Kartki z podsumowaniami leżą na jednej stercie. Żeby znaleźć \"Lipiec\", musisz przerzucić wszystko.\n- **Z Partycjami:** Kartki są wpięte do segregatora, gdzie każda koszulka jest opisana datą.\n\n![](https://a.storyblok.com/f/296300/1024x559/e9ff619d89/image2.png)\n\n\n### Jak to działa razem?\n\nGdy Twój Manager otwiera Dashboard w Looker Studio i prosi o wyniki z ostatniego kwartału:\n\n1. Dzięki **Partycjonowaniu**, BigQuery otwiera tylko 90 konkretnych koszulek w segregatorze (nie dotyka reszty roku).\n2. Dzięki **Agregacji**, w każdej koszulce znajduje nie tysiące paragonów, ale jedną kartkę z podsumowaniem.\n\nDlatego raport ładuje się w ułamku sekundy i kosztuje ułamki grosza. BigQuery nie musi już niczego liczyć (bo policzyliśmy to rano) - ono tylko **odczytuje** gotowy wynik.\n\n---\n\n## Podsumowanie: Ile to w końcu kosztuje?\n\nDla typowego e-commerce z 10 mln zdarzeń miesięcznie, realny rachunek za BigQuery przy dobrze zaprojektowanej architekturze wygląda następująco:\n\n| Rodzaj kosztu               | Opis                                                           | Szacunkowa kwota                    |\n| :-------------------------- | :------------------------------------------------------------- | :---------------------------------- |\n| **Magazynowanie (Storage)** | Utrzymanie danych z kilku lat (GA4, Ads, CRM).                 | **$5 - $15** (zależnie od historii) |\n| **Przetwarzanie (ETL)**     | Codzienne przeliczanie _tylko nowych_ danych do Data Martów.   | **$15 - $25**                       |\n| **Raportowanie (Query)**    | Korzystanie z dashboardów w Looker Studio (na lekkich danych). | **$1 - $5**                         |\n| **RAZEM**                   |                                                                | **$25 - $45 / miesięcznie**         |\n\nBigQuery nie jest drogie - droga jest niewiedza. Ryzykowne jest dawanie surowych danych w ręce (i narzędzia) osób, które nie optymalizują zapytań. Wdrożenie warstwy pośredniej (Data Martów) - czy to ręcznie, czy przez platformy typu **WitCloud** - zamienia nieprzewidywalną fakturę na niski, stały abonament.","Kiedy słyszysz hasło \"Hurtownia Danych\" lub \"BigQuery\", w Twojej głowie pewnie pojawiają się dwie myśli. Pierwsza: \"To technologia, której potrzebuję, żeby łączyć dane i skalować biznes\". Druga: \"To brzmi jak faktura od Google, nad którą nie będę miał kontroli\".",{"id":374,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":375,"copyright":19,"fieldtype":21,"meta_data":376,"is_external_url":32},190524925572970,"https://a.storyblok.com/f/296300/900x600/af11b1a8b3/02-bigquery-pricing.png",{},[378],{"_uid":379,"name":351,"content":380,"component":236},"f34609f1-8fcd-404a-aa30-9063d2f22e22","https://a.storyblok.com/f/296300/1200x628/b1e5c63eae/bigquery_pricing_eng.png",[],"2025-11-25 00:00",[],"bigquery-pricing-for-e-commerce-a-non-technical-guide","pl/content/knowledge/bigquery-pricing-for-e-commerce-a-non-technical-guide",50,[],"fa6065ad-9fb4-4ee4-ba50-114a75d184ec",[],{"name":391,"created_at":392,"published_at":258,"updated_at":393,"id":394,"uuid":395,"content":396,"slug":409,"full_slug":410,"sort_by_date":177,"position":411,"tag_list":412,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":413,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":414,"default_full_slug":177,"translated_slugs":177},"Dlaczego Twoja analityka przestanie działać za 6 miesięcy? ","2026-06-22T13:54:43.098Z","2026-08-21T07:00:42.320Z",190246433222209,"206bc95d-0a1f-4346-a0b2-b29f8658bcae",{"_uid":397,"title":398,"content":399,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":400,"component":267,"heroImage":401,"meta_tags":405,"meta_title":398,"heroButtons":407,"updatedDate":382,"bottomBlocks":408},"cc1f6ce3-33f2-4bfa-9dcf-0a690bf791ef","Dlaczego Twoja analityka przestanie działać za 6 miesięcy? O trzech drogach budowania analityki e-commerce","## Dlaczego Twoja analityka przestanie działać za 6 miesięcy?\n\nHistoria każdego e-commerce zaczyna się niewinnie. Na początku jest **jeden sklep internetowy**. Wystarcza Ci panel zamówień w systemie typu Magento, Shoper czy Idosell. Wszystko jest jasne – masz dostęp do podstawowych informacji o przychodach, klientach i produktach.\n\nAle potem zaczynasz rosnąć.\n\nPodpinasz **Google Analytics 4**, żeby zrozumieć zachowanie użytkownika. Uruchamiasz kampanie w **Google Ads, Meta Ads, TikTok Ads i Criteo**, żeby ściągnąć ruch. Wchodzisz na **Allegro** (Marketplace), żeby zwiększyć zasięg. Zaczynasz współpracę z porównywarkami cen (**Ceneo**) i sieciami afiliacyjnymi.\n\nAż w końcu podejmujesz decyzję: \"Wchodzimy na rynki zagraniczne\". Otwierasz sprzedaż w Czechach, Niemczech czy Rumunii.\n\nI w tym momencie skala problemu eksploduje. Masz teraz osobne konta reklamowe dla każdego kraju, raporty w różnych walutach (PLN, EUR, CZK, RON) i oddzielne feedy produktowe. Budzisz się w świecie, gdzie dane są w trzydziestu różnych miejscach. Panel Facebooka pokazuje inne konwersje niż GA4, CRM sklepu nie widzi kosztów z Rumunii, a przeliczenie marży zajmuje dwa dni w Excelu.\n\nZamiast jasności, masz chaos.\n\n![](https://a.storyblok.com/f/296300/1228x528/bf2239917e/proces_wzrostu_ecommerce.png)\n\nStoisz wtedy przed wyborem: jak \"zbudować dom\" dla swoich danych, by nad tym zapanować? W świecie analityki masz trzy drogi. Dwie z nich to pułapki, które wyglądają kusząco na start, ale sypią się jak domek z kart, gdy Twoja firma zaczyna się skalować.\n\nOto historia o dojrzałości analitycznej – oparta na starej bajce o trzech świnkach, ale z bardzo nowoczesnym (i bolesnym) morałem.\n\n## Droga 1: Pułapka \"Czarnej Skrzynki\" (Domek ze słomy)\n\nPierwsza droga jest wybierana przez pragmatyków, którzy chcą wyników \"na już\". Wybierasz gotowe, zamknięte systemy raportowe (tzw. czarne skrzynki).\n\n* **Jak to wygląda?** Podpinasz konto, płacisz abonament i widzisz ładne wykresy. Jest szybko i bezboleśnie.\n* **Gdzie jest problem?** To rozwiązanie działa, dopóki nie zadasz trudnego pytania. Widzisz wskaźniki (np. ROAS), ale nie masz pojęcia, jak zostały policzone. Nie masz dostępu do surowych danych, które pod tym wynikiem leżą.\n\n![](https://a.storyblok.com/f/296300/2816x1536/748797e31d/analityczna_czarna_skrzynka.png)\n\n\n**Co się dzieje, gdy przychodzą Rosnące Wymagania (Wilk)?**\n\nPewnego dnia Twoja firma rośnie, a Ty potrzebujesz zrobić z danymi coś więcej niż tylko na nie patrzeć. Wtedy zaczynasz odbijać się od ściany za ścianą:\n\n1. **Ściana \"Główny Raport\":** Zarząd korzysta z Power BI lub Tableau. Chcesz tam dorzucić koszty marketingu z Twojej \"czarnej skrzynki\", by widzieć pełny rachunek biznesu. **Rzeczywistość:** Nie da się. Jesteś w zamkniętym ekosystemie. Pozostaje ręczne wklejanie CSV do Excela co poniedziałek.\n2. **Ściana \"Automatyzacja CRM\":** Twój zespół sprzedaży chce widzieć w CRM, w jakie reklamy klikał lead. **Rzeczywistość:** Twoja \"czarna skrzynka\" nie ma API lub jest ono bardzo ograniczone. Nie możesz \"karmić\" działu handlowego wiedzą marketingową.\n3. **Ściana \"Partnerzy AI\":** Zatrudniasz agencję od AI, która prosi o historyczne dane transakcyjne, by nauczyć swoje algorytmy. **Rzeczywistość:** Nie ma jak bezpiecznie udostępnić wycinka danych.\n\n**Finał:** Zatrudniasz świetnego analityka. On chce budować własny model atrybucji na surowych danych. Dostawca \"czarnej skrzynki\" mówi: *\"Oczywiście, udostępniamy surowe dane w planie Enterprise, który kosztuje 5 razy więcej\"*. Twoje dane stały się zakładnikiem.\n\n## Droga 2: Iluzja kontroli, czyli \"Zrób to sam\" (Domek z patyków)\n\nDruga droga jest dla sprytnych. Myślisz: *\"Nie dam się zamknąć w pudełku! Zrobimy to sami in-house. Mamy darmowe konektory i Grześka w IT\"*. To podejście DIY, które zazwyczaj kończy się chaosem w dwóch aktach:\n\n**Akt I: Konektorowy Frankenstein w Looker Studio**\nPodłączasz bezpośrednio do Looker Studio osobne wtyczki: Facebook Ads, Google Ads, GA4, CRM.\n\n* **Problem:** To są silosy. Aby zobaczyć całościowy obraz (np. zysk vs. wydatki), musisz łączyć te źródła \"na siłę\" w narzędziu wizualizacyjnym (Blended Data).\n* **Ryzyko:** Logika biznesowa jest \"zaszyta\" w kruchych filtrach raportu, a nie w bazie danych. Wystarczy jeden błąd w nazewnictwie kampanii, by cały raport przestał działać.\n\n![](https://a.storyblok.com/f/296300/1000x600/7a3fcce98f/problem_polaczonych_danych.png)\n\n\n**Akt II: Bagno Surowych Danych (ETL bez planu)**\nIdziesz krok dalej. Zrzucasz dane do własnego BigQuery za pomocą prostych narzędzi ETL.\n\n* **Problem:** Masz dostęp do danych, ale jest to tzw. \"Data Swamp\". Masz 800 tabel: osobno zamówienia, osobno produkty, osobno kampanie. Nic do siebie nie pasuje.\n* **Ryzyko:** Aby z tego skorzystać, ktoś musi napisać i utrzymać skomplikowaną logikę SQL.\n\n**Co się dzieje, gdy odchodzi \"Grzesiek\"?**\nCała ta konstrukcja trzyma się tylko dzięki jednej osobie, która to zbudowała. Gdy \"Grzesiek\" odchodzi z firmy, zabiera wiedzę ze sobą. Zostajesz z infrastrukturą, której nikt nie rozumie. Nowy analityk zamiast szukać wniosków, traci miesiące na inżynierię wsteczną, próbując zrozumieć, dlaczego liczby się nie spinają.\n\n## Droga 3: Fundament WitCloud (Domek z cegły)\n\nTrzecia droga jest dla tych, którzy rozumieją, że analityka to inwestycja w aktywa firmy. Wybierasz **WitCloud (All In One)**.\n\n![](https://a.storyblok.com/f/296300/1000x600/717006a639/schemat_dzialania_witcloud.png)\n\n\nDlaczego to jest domek z cegły? Bo łączy zalety obu światów, eliminując ich wady.\n\n**Po pierwsze: Automatyzacja \"Brudnej Roboty\"**\nWitCloud to platforma, która wykonuje najcięższą pracę inżynieryjną za Ciebie. Nasz moduł automatycznie pobiera, czyści i unifikuje dane z kilkunastu systemów (Ads, GA4, CRM, Marketplace). Ty nie martwisz się o zmiany w API Facebooka czy TikToka – my dbamy o utrzymanie tej infrastruktury. Twój zespół techniczny śpi spokojnie.\n\n**Po drugie: Wizualizacja na start + Otwartość na rozwój**\nNie zostawiamy Cię z samą bazą danych. Otrzymujesz zestaw bazowych raportów w Looker Studio. Dla wielu firm to wystarcza, by podejmować decyzje \"tu i teraz\". Ale co, jeśli apetyt rośnie? Ponieważ dane są **Twoją własnością** i leżą na Twoim Google Cloud, masz pełną swobodę:\n\n* Możesz rozwijać raporty samodzielnie.\n* Możesz zlecić nam budowę dedykowanych dashboardów.\n* Możesz współpracować z dowolną agencją, która zna SQL/BigQuery. Nikt nie musi uczyć się \"naszego systemu\" – pracują na standardach Google.\n\n**Po trzecie: Raj dla Analityka**\nGdy zatrudnisz analityka, nie dajesz mu \"czarnej skrzynki\" ani \"bagna 800 tabel\". Dajesz mu dostęp do gotowych, udokumentowanych datamartów (np. do analizy marżowości czy własnych modeli atrybucji). Analityk może pisać własne zapytania SQL lub wpinać dane do narzędzi AI. Płacisz ekspertowi za **wnioski** (wysoka wartość), a nie za \"sprzątanie danych\" (niska wartość).\n\n## Morał: Od walki z narzędziami do korzystania z danych\n\nDojrzałość analityczna to moment, w którym przestajesz walczyć z narzędziami, a zaczynasz korzystać z danych.\n\nNie buduj ze słomy (bo ograniczy Cię brak dostępu lub koszty Enterprise). Nie buduj z patyków (bo utoniesz w długu technologicznym, gdy Twój \"Grzesiek\" odejdzie, a Ty wejdziesz na kolejny rynek).\n\nPostaw fundament z WitCloud. Dzięki temu, niezależnie od tego, czy masz dziś jednego marketera, czy za rok będziesz mieć międzynarodowy dział Business Intelligence – Twoje środowisko analityczne będzie gotowe, bezpieczne i skalowalne. A Ty będziesz właścicielem prawdy o swoim biznesie.","Twoja analityka to domek ze słomy, patyków czy cegły? Artykuł wykorzystuje metaforę trzech świnek, by pokazać błędy w budowaniu danych e-commerce. Dowiedz się, dlaczego zamknięte systemy i wtyczki do Looker Studio zawiodą przy skalowaniu biznesu i jak WitCloud pozwala zbudować trwały fundament na Google Cloud.",{"id":402,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":403,"copyright":19,"fieldtype":21,"meta_data":404,"is_external_url":32},190524925515621,"https://a.storyblok.com/f/296300/900x600/429a949a9c/01-analytics-will-fail.png",{},[406],{"_uid":379,"name":351,"content":352,"component":236},[],[],"dlaczego-twoja-analityka-przestanie-dzialac-za-6-miesiecy","pl/content/knowledge/dlaczego-twoja-analityka-przestanie-dzialac-za-6-miesiecy",60,[],"a802a9ba-4d8f-4b74-87e5-254578633e1c",[],{"name":416,"created_at":417,"published_at":258,"updated_at":418,"id":419,"uuid":420,"content":421,"slug":435,"full_slug":436,"sort_by_date":177,"position":437,"tag_list":438,"is_startpage":32,"parent_id":241,"meta_data":177,"group_id":439,"first_published_at":258,"release_id":177,"lang":183,"path":177,"alternates":440,"default_full_slug":177,"translated_slugs":177},"Automatyzacja raportowania w Idosell","2026-06-22T13:50:14.896Z","2026-08-21T08:06:51.629Z",190245334650087,"89e37058-b2cf-4176-abb3-aea13eb27f7e",{"_uid":422,"title":423,"content":424,"eyebrow":19,"showTOC":39,"category":226,"readTime":19,"subtitle":425,"component":267,"heroImage":426,"meta_tags":430,"meta_title":398,"heroButtons":432,"updatedDate":433,"bottomBlocks":434},"dcd6133f-6e3f-4e5a-8954-c8c8d001bb22","Masz sklep na platformie Idosell? To musisz to przeczytać","## Drogi menadżerze, dyrektorze, właścicielu, albo po prostu pracowniku sklepu działającego na IdoSell.\n\nDziałasz w sklepie internetowym i prawdopodobnie jak większość sklepów internetowych borykasz się z dość dużym problemem, którego możesz nawet nie być świadomym. Ale dzięki temu, że korzystasz z platformy Idosell, poradzenie sobie z tym może być prostsze niż kiedykolwiek wcześniej.\n\n\u003Cbr>\n\u003Cdiv style=\"border-radius: 25px; overflow: hidden; width: fit-content; margin: 0 auto;\">\n    \u003Cimg src=\"https://a.storyblok.com/f/296300/1024x718/77dc329b1f/unitrailer_example_mess.webp\" style=\"display: block; width: 100%; height: auto; margin: 0; padding: 0; border: none;\"/>\n\u003C/div>\n\n\nZacznijmy jednak od początku, jaki problem w ogóle mam na myśli. \n\nDobra.\n\nTo nie do końca takie proste do wyjaśnienia, dlatego wiele osób nie uznaje tego za problem. A jednak tak jest.\n\nTo problem z analityką. Nie z danymi. \nDane masz i to prawdopodobnie więcej niż potrzebujesz. Chodzi o wykorzystanie tych danych. Chodzi o problem na trzech poziomach.\n\n\n## Pierwszy to sposób, w jakim podejmujesz decyzje w oparciu o swoje dane. \n\nMogę założyć, że jak naprawdę potrzebujesz raport to albo wysyłasz do kogoś prośbę, żeby taki raport stworzył, albo samemu siadasz i składasz coś, co, masz nadzieję, że Ci pomoże. W końcu część danych masz w swoim panelu Idosell, np. dane sprzedażowe, magazynowe czy dane o klientach. Z kolei dane o skuteczności działań marketingowych, w które inwestujesz i dane o ruchu na stronie masz w panelu Google Analytics 4. A dane o reklamach i wydatkach możesz znaleźć w konkretnych panelach reklamowych, np. Google Ads, Meta Ads, Ceneo itp. Do tego dochodzi jeszcze sprzedaż przez marketplace czy Allegro. \n\nA może działasz na więcej niż jednym rynku, sprzedajesz też w Niemczech, Rumuni, Czechach? Czy przypadkiem każdy taki rynek to nie jest oddzielne konto Google Analytics, oddzielne konto Google Ads, a nawet oddzielne panele sklepu, inne raporty sprzedażowe?\n\nJeżeli chciałbyś, chciałabyś zobaczyć pełen obraz swojego biznesu, jego kondycję, wszystkie wydatki marketingowe, prawdziwe informacje o sprzedaży to wymaga to pobrania i połączenia informacji z tych wszystkich narzędzi, jakie wymieniliśmy. \n\nAlbo patrzysz tylko na mały fragment rzeczywistości i jakoś to działa.\n\n## Drugi poziom tego problemu to systemy reklamowe. \n\nSpecjaliści od marketingu mają coraz mniej możliwości ustawiania tego, jak i gdzie twoje reklamy się wyświetlają. O tym decyduje już w większości algorytm. I ten algorytm potrzebuje jak najlepszych danych do działania. Przestań już z wymówką, że połowa pieniędzy i tak jest wyrzucana w błoto. Jeżeli system dostaje prawidłowe informacje o zachowaniu użytkownika, to poradzi sobie z optymalizacją kampanii, a Ty zaczniesz na tym zarabiać. Warto w tym miejscu pamiętać, że jednak to człowiek decyduje o podziale kampanii i tym pod jakie reguły ustawi działanie systemu. Im dokładniejsze dane, np. o popularności i skuteczności produktów, tym lepiej możemy zarządzać ustawieniami stawek ROAS.\n\n## Trzeci problem to AI, które jest odmieniane przez wszystkie przypadki. \n\nKażdy chce teraz korzystać z AI. Ale praktycznie na każdej prezentacji pojawia się też slajd garbage in garbage out. AI działa na danych, jakimi go zasilimy. Ale te dane muszą być odpowiednio ułożone i opisane. Przygotowane tak, żeby AI mógł na nich pracować. Bez tego nie spodziewajmy się spektakularnych albo nawet jakichkolwiek rezultatów. \n\nPrzyznam, że pisząc ten tekst, mam ochotę wymieniać dalej, problem czwarty, piąty, szósty, ale nie ma to sensu. Jeżeli zarządzasz sklepem internetowym to rozumiesz, o czym piszę. \n\nPotrzebujesz nie danych, potrzebujesz mieć jedno miejsce, gdzie twoje dane będą przechowywane, poukładane, na bieżąco aktualizowane i dostępne zarówno dla Ciebie, jak i dla narzędzi, z których korzystasz. \n\n## W skrócie potrzebujesz Hurtownię Danych albo po angielsku Data Warehouse. \n\nJeszcze do niedawna, projekt skomplikowany, bardzo czasochłonny, wymagający zespołu specjalistów. Trzeba postawić serwer chmurowy, zaprogramować połączenia między systemami, uporządkować dane, dbać o stabilność całej infrastruktury. Dużo pracy, duże budżety. Opcja niedostępna dla większości sklepów.\n\n## Ale przecież masz sklep na Idosell. A to dużo zmienia.\n\nMasz możliwość zbierania danych sklepowych, danych Google Analytics 4, danych marketingowych i danych z marketplaców (czyli praktycznie wszystko co potrzebujesz) w jednym miejscu, w swoim bezpiecznym projekcie chmurowym. Dane mogą być aktualizowane na bieżąco i możesz mieć dostęp do jednego, pełnego raportu zawierającego wszystkie informacje o każdej porze dnia i nocy.\n\n\u003Cbr>\n\u003Cdiv style=\"border-radius: 25px; overflow: hidden; width: fit-content; margin: 0 auto;\">\n    \u003Cimg src=\"https://a.storyblok.com/f/296300/2816x1536/653d6f7015/idosell.png\" style=\"display: block; width: 100%; height: auto; margin: 0; padding: 0; border: none;\"/>\n\u003C/div>\n\nTe dane mogą zasilać systemy marketingowe. Na tych danych mogą działać twoi agenci AI.\n\nBez działu IT, bez wielomiesięcznych projektów, bez wielkich kosztów. \n\nWiem, brzmi nierealnie, brzmi marketingowo, gdzieś musi być haczyk i to pewnie nie jeden.\n\nCzy na pewno?\n\nA może po prostu to sprawdź -> [zapisz się na webinar, na temat automatyzacji raportowania w e-commerce. ](/pl/webinars/jak-wdrozyc-automatyzacje-raportowania-w-e-commerce)\n\nNie musisz korzystać z możliwości, o jakich się dowiesz. Może akurat Ty tego nie potrzebujesz. Może te problemy tak mocno Cię nie dotykają.\n\nAle jako osoba zarządzająca czy pracująca w e-commerce powinieneś, powinnaś wiedzieć, jakie są dostępne rozwiązania. Bo najgorsza jest niewiedza. \n\nA może właśnie znajdziesz coś, co pozwoli Ci strategicznie zwiększyć przychody i zmniejszyć koszty, zaoszczędzisz wiele godzin tygodniowo. Może znajdziesz sposób na to, aby AI przyniósł wreszcie realną wartość w firmie? \n\nJa wiem jedno, warto samemu się przekonać. \n\n\u003Cbr>\n\u003Cdiv style=\"border-radius: 25px; overflow: hidden; width: fit-content; margin: 0 auto;\">\n    \u003Cimg src=\"https://a.storyblok.com/f/296300/960x540/50a7835314/webinar.jpg\" style=\"display: block; width: 100%; height: auto; margin: 0; padding: 0; border: none;\"/>\n\u003C/div>\n\n[Wejdź w link, wypełnij formularz i przyjdź na webinar. ](/pl/webinars/jak-wdrozyc-automatyzacje-raportowania-w-e-commerce)\n\nW najgorszym przypadku, dowiesz się co to znaczy automatyzacja raportowania i tego jak działa hurtownia danych. W najlepszych, odmienisz swój sklep internetowy.\n\nTo co?\n\nDo zobaczenia!\n","Drogi menadżerze, dyrektorze, właścicielu, albo po prostu pracowniku sklepu działającego na IdoSell.\n\nDziałasz w sklepie internetowym i prawdopodobnie jak większość sklepów internetowych borykasz się z dość dużym problemem, którego możesz nawet nie być świadomym. Ale dzięki temu, że korzystasz z platformy Idosell, poradzenie sobie z tym może być prostsze niż kiedykolwiek wcześniej.",{"id":427,"alt":19,"name":19,"focus":19,"title":19,"source":19,"filename":428,"copyright":19,"fieldtype":21,"meta_data":429,"is_external_url":32},190524925556585,"https://a.storyblok.com/f/296300/900x600/5c3e06aa43/03-analytics-3-ways.png",{},[431],{"_uid":379,"name":351,"content":352,"component":236},[],"2025-12-09 00:00",[],"automatyzacja-raportowania-w-idosell","pl/content/knowledge/automatyzacja-raportowania-w-idosell",70,[],"77cdbe23-acb0-44d8-a782-ff13da58a8f6",[],{"data":442,"body":443,"excerpt":-1,"toc":453},{"title":19,"description":126},{"type":444,"children":445},"root",[446],{"type":447,"tag":448,"props":449,"children":450},"element","p",{},[451],{"type":452,"value":126},"text",{"title":19,"searchDepth":454,"depth":454,"links":455},2,[],{"data":457,"body":458,"excerpt":-1,"toc":464},{"title":19,"description":229},{"type":444,"children":459},[460],{"type":447,"tag":448,"props":461,"children":462},{},[463],{"type":452,"value":229},{"title":19,"searchDepth":454,"depth":454,"links":465},[],{"data":467,"body":468,"excerpt":-1,"toc":474},{"title":19,"description":423},{"type":444,"children":469},[470],{"type":447,"tag":448,"props":471,"children":472},{},[473],{"type":452,"value":423},{"title":19,"searchDepth":454,"depth":454,"links":475},[],{"data":477,"body":479,"excerpt":-1,"toc":490},{"title":19,"description":478},"Drogi menadżerze, dyrektorze, właścicielu, albo po prostu pracowniku sklepu działającego na IdoSell.",{"type":444,"children":480},[481,485],{"type":447,"tag":448,"props":482,"children":483},{},[484],{"type":452,"value":478},{"type":447,"tag":448,"props":486,"children":487},{},[488],{"type":452,"value":489},"Działasz w sklepie internetowym i prawdopodobnie jak większość sklepów internetowych borykasz się z dość dużym problemem, którego możesz nawet nie być świadomym. Ale dzięki temu, że korzystasz z platformy Idosell, poradzenie sobie z tym może być prostsze niż kiedykolwiek wcześniej.",{"title":19,"searchDepth":454,"depth":454,"links":491},[],{"data":493,"body":494,"excerpt":-1,"toc":500},{"title":19,"description":370},{"type":444,"children":495},[496],{"type":447,"tag":448,"props":497,"children":498},{},[499],{"type":452,"value":370},{"title":19,"searchDepth":454,"depth":454,"links":501},[],{"data":503,"body":504,"excerpt":-1,"toc":510},{"title":19,"description":372},{"type":444,"children":505},[506],{"type":447,"tag":448,"props":507,"children":508},{},[509],{"type":452,"value":372},{"title":19,"searchDepth":454,"depth":454,"links":511},[],{"data":513,"body":514,"excerpt":-1,"toc":520},{"title":19,"description":398},{"type":444,"children":515},[516],{"type":447,"tag":448,"props":517,"children":518},{},[519],{"type":452,"value":398},{"title":19,"searchDepth":454,"depth":454,"links":521},[],{"data":523,"body":524,"excerpt":-1,"toc":530},{"title":19,"description":400},{"type":444,"children":525},[526],{"type":447,"tag":448,"props":527,"children":528},{},[529],{"type":452,"value":400},{"title":19,"searchDepth":454,"depth":454,"links":531},[],{"data":533,"body":534,"excerpt":-1,"toc":540},{"title":19,"description":340},{"type":444,"children":535},[536],{"type":447,"tag":448,"props":537,"children":538},{},[539],{"type":452,"value":340},{"title":19,"searchDepth":454,"depth":454,"links":541},[],{"data":543,"body":544,"excerpt":-1,"toc":550},{"title":19,"description":343},{"type":444,"children":545},[546],{"type":447,"tag":448,"props":547,"children":548},{},[549],{"type":452,"value":343},{"title":19,"searchDepth":454,"depth":454,"links":551},[],{"data":553,"body":555,"excerpt":-1,"toc":570},{"title":19,"description":554},"Google Analytics 4 GA4 BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz",{"type":444,"children":556},[557],{"type":447,"tag":448,"props":558,"children":559},{},[560,562,568],{"type":452,"value":561},"Google Analytics 4 ",{"type":447,"tag":563,"props":564,"children":565},"span",{},[566],{"type":452,"value":567},"GA4",{"type":452,"value":569}," BigQuery - źródła ruchu, sesje, atrybucja, koszty marketingowe i gotowe dane do analiz",{"title":19,"searchDepth":454,"depth":454,"links":571},[],{"data":573,"body":574,"excerpt":-1,"toc":580},{"title":19,"description":266},{"type":444,"children":575},[576],{"type":447,"tag":448,"props":577,"children":578},{},[579],{"type":452,"value":266},{"title":19,"searchDepth":454,"depth":454,"links":581},[],{"data":583,"body":585,"excerpt":-1,"toc":597},{"title":19,"description":584},"Google Analytics 4 GA4 BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych",{"type":444,"children":586},[587],{"type":447,"tag":448,"props":588,"children":589},{},[590,591,595],{"type":452,"value":561},{"type":447,"tag":563,"props":592,"children":593},{},[594],{"type":452,"value":567},{"type":452,"value":596}," BigQuery - 9 wyzwań, które Cię zaskoczy podczas analizy danych",{"title":19,"searchDepth":454,"depth":454,"links":598},[],{"data":600,"body":602,"excerpt":-1,"toc":615},{"title":19,"description":601},"Podczas interakcji z danymi Google Analytics 4 GA4 w BigQuery możemy napotkać różne trudności o których warto wiedzieć wcześniej, zanim spędzimy wiele godzin nad detektywistyczną próbą ich pokonania.",{"type":444,"children":603},[604],{"type":447,"tag":448,"props":605,"children":606},{},[607,609,613],{"type":452,"value":608},"Podczas interakcji z danymi Google Analytics 4 ",{"type":447,"tag":563,"props":610,"children":611},{},[612],{"type":452,"value":567},{"type":452,"value":614}," w BigQuery możemy napotkać różne trudności o których warto wiedzieć wcześniej, zanim spędzimy wiele godzin nad detektywistyczną próbą ich pokonania.",{"title":19,"searchDepth":454,"depth":454,"links":616},[],{"data":618,"body":619,"excerpt":-1,"toc":625},{"title":19,"description":315},{"type":444,"children":620},[621],{"type":447,"tag":448,"props":622,"children":623},{},[624],{"type":452,"value":315},{"title":19,"searchDepth":454,"depth":454,"links":626},[],{"data":628,"body":629,"excerpt":-1,"toc":635},{"title":19,"description":317},{"type":444,"children":630},[631],{"type":447,"tag":448,"props":632,"children":633},{},[634],{"type":452,"value":317},{"title":19,"searchDepth":454,"depth":454,"links":636},[],1788963899687]