GA4 dla e-commerce: konfiguracja enhanced e-commerce od zera

GA4 a Universal Analytics: co się zmieniło w analityce e-commerce

Universal Analytics umarł w lipcu 2023, a mimo to nadal trafiam na sklepy, które “jakoś sobie radzą” z GA4, bo “UA był prostszy”. Był prostszy, bo mierzył prostszy internet. Problem w tym, że UA projektowano w erze, gdy użytkownik odwiedzał stronę z jednego urządzenia, sesja miała jasny początek i koniec, a ścieżka zakupowa była w miarę liniowa. Dziś klient ogląda produkt na telefonie w tramwaju, porównuje cenę na laptopie w pracy i kupuje z tabletu wieczorem na kanapie. UA nie umiał tego połączyć. GA4 przynajmniej próbuje.

GA4 zmienia model danych na oparty w całości o zdarzenia (events). Nie ma tu sesji w klasycznym rozumieniu. Każda interakcja użytkownika to zdarzenie z zestawem parametrów. Dla e-commerce oznacza to kilka praktycznych zmian:

  • w UA enhanced e-commerce wymagał osobnej konfiguracji i działał niezależnie od standardowego trackingu; w GA4 zdarzenia e-commerce to natywna część systemu
  • GA4 mierzy użytkowników cross-device i cross-platform (web + aplikacja mobilna) w jednym strumieniu danych
  • raporty nie opierają się już na predefiniowanych widokach, tylko na eksploracji danych, co daje więcej elastyczności, ale wymaga więcej pracy

Jeśli wcześniej korzystałeś z enhanced e-commerce w UA, musisz przebudować implementację od podstaw. Nazwy zdarzeń się zmieniły, struktura dataLayer jest inna, a sposób definiowania konwersji działa zupełnie inaczej.

Kluczowe zdarzenia e-commerce w GA4

GA4 definiuje kilkanaście rekomendowanych zdarzeń dla e-commerce. Nie musisz wdrażać wszystkich od razu, ale jest pewne minimum, bez którego nie zbudujesz użytecznych raportów. Poniżej omawiam zdarzenia, które powinny znaleźć się w każdym sklepie.

view_item: wyświetlenie strony produktu

To zdarzenie odpala się, gdy użytkownik wchodzi na kartę produktu. Stanowi punkt wyjścia dla analizy ścieżki zakupowej. Parametry, które musisz przekazać:

  • currency (waluta, np. “PLN”)
  • value (cena produktu)
  • items (tablica z danymi produktu: item_id, item_name, item_category, price, quantity)

view_item_list: przeglądanie listy produktów

Odpalane na stronach kategorii, wynikach wyszukiwania w sklepie i sekcjach z rekomendacjami. Pozwala analizować, które listy produktów generują kliknięcia i przejścia na karty produktowe.

add_to_cart: dodanie do koszyka

Jedno z najważniejszych zdarzeń. Mierzy moment, gdy użytkownik podejmuje pierwszą deklarację intencji zakupowej. Jeśli masz dużo ruchu na kartach produktów, ale mało dodań do koszyka, to sygnał, że coś jest nie tak z prezentacją oferty, ceną lub dostępnością.

begin_checkout: rozpoczęcie procesu zakupowego

Odpala się, gdy użytkownik przechodzi do formularza zamówienia. Różnica między add_to_cart a begin_checkout to jeden z kluczowych punktów diagnostycznych. Duży spadek na tym etapie często wskazuje na problem z kosztem dostawy (ujawnianym dopiero przy checkout) lub wymogiem rejestracji.

purchase: finalizacja zakupu

Zdarzenie transakcji. Musi zawierać transaction_id, value, currency, tax, shipping oraz pełną tablicę items. To zdarzenie jest podstawą raportów przychodowych i powinno być skonfigurowane jako konwersja.

Dodatkowe zdarzenia warte wdrożenia

  • remove_from_cart pozwala śledzić, co użytkownicy usuwają z koszyka
  • add_shipping_info i add_payment_info granularnie mierzą postęp w procesie checkout
  • view_promotion i select_promotion pozwalają ocenić skuteczność banerów i promocji wewnętrznych
  • refund zamyka pętlę danych i pozwala liczyć rzeczywisty przychód po zwrotach

Implementacja przez Google Tag Manager: krok po kroku

Wdrożenie zdarzeń e-commerce w GA4 najlepiej przeprowadzić przez Google Tag Manager (GTM). Bezpośrednia implementacja w kodzie strony jest możliwa, ale GTM daje elastyczność w testowaniu i modyfikowaniu konfiguracji bez angażowania programistów przy każdej zmianie.

Krok 1: przygotowanie dataLayer

Zanim skonfigurujesz cokolwiek w GTM, Twój sklep musi wypychać dane do obiektu dataLayer. To zadanie dla programisty lub wtyczki platformy e-commerce. Struktura danych musi być zgodna ze specyfikacją GA4.

Przykład dataLayer push dla zdarzenia view_item:

dataLayer.push({
  event: "view_item",
  ecommerce: {
    currency: "PLN",
    value: 149.99,
    items: [{
      item_id: "SKU-12345",
      item_name: "Koszulka bawełniana oversize",
      item_category: "Odzież",
      item_category2: "Koszulki",
      item_brand: "Marka X",
      price: 149.99,
      quantity: 1
    }]
  }
});

Przykład dataLayer push dla zdarzenia purchase:

dataLayer.push({
  event: "purchase",
  ecommerce: {
    transaction_id: "ZAM-78901",
    value: 324.97,
    tax: 60.74,
    shipping: 14.99,
    currency: "PLN",
    items: [
      {
        item_id: "SKU-12345",
        item_name: "Koszulka bawełniana oversize",
        item_category: "Odzież",
        price: 149.99,
        quantity: 2
      },
      {
        item_id: "SKU-67890",
        item_name: "Czapka z daszkiem",
        item_category: "Akcesoria",
        price: 24.99,
        quantity: 1
      }
    ]
  }
});

Ważna uwaga: przed każdym pushem zdarzenia e-commerce warto wyczyścić obiekt ecommerce, żeby uniknąć przesyłania danych z poprzedniego zdarzenia:

dataLayer.push({ ecommerce: null });

Krok 2: konfiguracja wyzwalaczy w GTM

Dla każdego zdarzenia e-commerce utwórz w GTM wyzwalacz typu “Custom Event” o nazwie odpowiadającej nazwie zdarzenia (np. view_item, add_to_cart, purchase). Wyzwalacz reaguje na odpowiedni push do dataLayer.

Krok 3: konfiguracja tagów GA4

Utwórz tag typu “Google Analytics: GA4 Event” dla każdego zdarzenia. Podłącz go do odpowiedniego wyzwalacza. W konfiguracji tagu zaznacz opcję “Send Ecommerce Data” i wybierz “Data Layer” jako źródło danych. GA4 automatycznie pobierze parametry z obiektu ecommerce w dataLayer.

Krok 4: testowanie w trybie podglądu

Zanim opublikujesz kontener, przetestuj każde zdarzenie w trybie Preview GTM. Przejdź przez pełną ścieżkę zakupową: obejrzyj produkt, dodaj do koszyka, rozpocznij checkout, sfinalizuj testowe zamówienie. W panelu podglądu sprawdź, czy każde zdarzenie się odpala i czy parametry (szczególnie items, value, transaction_id) są poprawne.

Równolegle sprawdź dane w raporcie czasu rzeczywistego GA4 (Raporty > Czas rzeczywisty). Zdarzenia powinny pojawiać się w ciągu kilku sekund.

Konfiguracja konwersji w GA4

GA4 domyślnie nie traktuje żadnego zdarzenia jako konwersji (oprócz first_open i first_visit). Musisz samodzielnie oznaczyć zdarzenia, które mają być traktowane jako kluczowe. W panelu GA4 przejdź do Administracja > Zdarzenia i oznacz wybrane zdarzenia przełącznikiem “Oznacz jako kluczowe zdarzenie”.

Rekomendowane konwersje dla sklepu internetowego:

  • purchase (obowiązkowa, podstawa raportowania przychodów)
  • begin_checkout (pozwala mierzyć mikro-konwersję i optymalizować górę lejka)
  • add_to_cart (szczególnie użyteczna przy kampaniach remarketingowych)
  • generate_lead (jeśli masz formularz kontaktowy B2B obok sklepu)
  • sign_up (rejestracja konta, jeśli jest elementem strategii retencji)

Jeśli prowadzisz kampanie Google Ads, konwersje GA4 możesz zaimportować do Ads jako cele optymalizacji. To znacznie lepsza opcja niż konfigurowanie osobnych tagów konwersji Ads, bo zapewnia spójność danych między platformami.

Raporty e-commerce w GA4: co warto śledzić

Raport monetyzacji

W sekcji Raporty > Monetyzacja > Przegląd e-commerce znajdziesz podstawowe metryki: przychód, liczba transakcji, średnia wartość zamówienia. Raport pokazuje też przychód w rozbiciu na produkty i kategorie.

Ten raport daje szybki obraz, ale ma ograniczenia. Nie pokaże Ci kontekstu: skąd przyszli kupujący, jaką ścieżkę przeszli, ile wizyt potrzebowali do zakupu. Do tego potrzebujesz eksploracji.

Ścieżka zakupowa (Purchase Journey)

Raport Monetyzacja > Ścieżka zakupowa wizualizuje lejek od sesji przez wyświetlenie produktu, dodanie do koszyka, checkout, aż po zakup. Na każdym etapie widzisz liczbę użytkowników i wskaźnik porzuceń.

To jeden z najważniejszych raportów diagnostycznych. Jeśli widzisz, że 70% użytkowników porzuca ścieżkę między view_item a add_to_cart, wiesz, że problem leży w prezentacji produktu lub ofercie. Jeśli porzucenie następuje między begin_checkout a purchase, szukaj przyczyn w formularzu zamówienia, opcjach dostawy lub metodach płatności.

Wydajność produktów

W raporcie Monetyzacja > Wydajność produktów zobaczysz metryki na poziomie poszczególnych produktów: wyświetlenia, dodania do koszyka, zakupy, przychód. Możesz tu szybko zidentyfikować produkty z dużą liczbą wyświetleń, ale niskim współczynnikiem konwersji.

Eksploracje: raporty szyte na miarę

Standardowe raporty GA4 dają podstawy, ale prawdziwa wartość analityczna leży w Eksploracji (zakładka Eksploruj). Kilka raportów, które warto zbudować dla e-commerce:

Analiza ścieżki z segmentacją po źródle ruchu. Domyślny raport ścieżki zakupowej nie rozdziela użytkowników według kanału. Zbuduj eksplorację typu “Eksploracja lejka” z segmentem na kanał pozyskania. Zobaczysz, czy użytkownicy z Google Ads mają inny współczynnik konwersji niż ci z ruchu organicznego i na którym etapie lejka różnice są największe.

Kohortowa analiza zakupów. Pozwala zobaczyć, jak zachowują się użytkownicy pozyskani w danym tygodniu: ilu z nich wróciło i kupiło w kolejnych tygodniach. To fundamentalne dane do oceny jakości ruchu z różnych kampanii.

Analiza koszyka. Zbuduj raport, który pokazuje, jakie produkty najczęściej trafiają razem do koszyka. Wykorzystasz te dane do konfiguracji cross-sellingu i budowania zestawów.

Najczęstsze błędy w konfiguracji GA4 dla e-commerce

Przez kilkadziesiąt audytów analitycznych widziałam te same problemy powtarzające się w różnych sklepach. Niektóre diagnozowałam o jedenastej w nocy, bo klient dzwonił z paniką, że “GA4 pokazuje inny przychód niż panel sklepu”. Poniżej lista najczęstszych.

Brak czyszczenia obiektu ecommerce w dataLayer. Bez dataLayer.push({ ecommerce: null }) przed każdym zdarzeniem dane z poprzedniego eventu mogą “wyciekać” do następnego. Skutek: zawyżone wartości transakcji, nieprawidłowe produkty w raportach.

Duplikowanie zdarzeń purchase. To jest ten błąd, który potrafi zepsuć cały raport przychodowy. Jeśli strona potwierdzenia zamówienia ładuje się ponownie (odświeżenie przeglądarki, powrót z zakładki), zdarzenie purchase może odpalić się wielokrotnie. Zabezpiecz się, sprawdzając w dataLayer lub cookie, czy transakcja o danym transaction_id została już wysłana.

Niespójne nazwy kategorii i ID produktów. Jeśli ten sam produkt ma różne item_id na karcie produktu i w procesie checkout, GA4 potraktuje je jako dwa różne produkty. To samo dotyczy kategorii: “Odziez”, “Odzież” i “odzież” to dla GA4 trzy osobne kategorie.

Brak parametru currency. Bez waluty GA4 nie może poprawnie raportować przychodów. To parametr wymagany w każdym zdarzeniu, które przekazuje wartość pieniężną.

Ignorowanie filtrów wewnętrznego ruchu. Testowe zamówienia i ruch z biura zaburzają dane. W GA4 skonfiguruj filtr ruchu wewnętrznego (Administracja > Strumienie danych > Konfiguracja tagów > Zdefiniuj ruch wewnętrzny) i wyklucz adresy IP swojego zespołu.

Opieranie się wyłącznie na standardowych raportach. Raporty domyślne GA4 to jest takie minimum, które pozwala powiedzieć “mamy analitykę”. Jeśli nie budujesz własnych eksploracji, tracisz większość wartości, jaką daje GA4. To trochę tak, jakbyś kupił aparat fotograficzny i robił zdjęcia tylko w trybie automatycznym.


📋 Zobacz checklistę: Checklista wdrożenia GA4 dla e-commerce - zdarzenia, konwersje i ustawienia przejdziesz online krok po kroku.


Często zadawane pytania

Czy mogę wdrożyć GA4 e-commerce bez Google Tag Managera?

Technicznie tak, za pomocą tagu gtag.js osadzonego bezpośrednio w kodzie strony. Jednak GTM jest zdecydowanie zalecanym podejściem z dwóch powodów. Po pierwsze, pozwala modyfikować konfigurację bez ingerencji w kod sklepu. Po drugie, tryb podglądu GTM jest najskuteczniejszym narzędziem do debugowania zdarzeń. Bez GTM każda zmiana wymaga zaangażowania programisty i deployu.

Ile czasu zajmuje pełne wdrożenie enhanced e-commerce w GA4?

Dla sklepu na popularnej platformie (WooCommerce, Shopify, PrestaShop), który ma gotowe wtyczki do dataLayer, realistyczny czas to 2-5 dni roboczych, wliczając konfigurację GTM, testy i naprawę pierwszych błędów. Dla sklepów z niestandardowym frontendem (headless, custom) trzeba doliczyć czas programisty na implementację dataLayer, co może zająć kolejne 3-10 dni w zależności od złożoności.

Czy dane e-commerce GA4 są zgodne z danymi z panelu sklepu?

Nigdy nie będą identyczne. Rozbieżności rzędu 5-10% między GA4 a systemem sklepowym są normalne i wynikają z kilku czynników: blokery reklam uniemożliwiają załadowanie tagu GA4 u części użytkowników, strona potwierdzenia może nie załadować się poprawnie, a adblockerzy i przeglądarki z wbudowaną ochroną prywatności odcinają część zdarzeń. System sklepowy zawsze będzie źródłem prawdy o przychodach. GA4 jest narzędziem do analizy zachowań i atrybucji, nie systemem księgowym.

Jak sprawdzić, czy moje zdarzenia e-commerce działają poprawnie?

Trzy narzędzia, których potrzebujesz: tryb podglądu GTM (Preview mode) do weryfikacji, czy zdarzenia odpalają się we właściwych momentach z poprawnymi parametrami; raport czasu rzeczywistego w GA4 do potwierdzenia, że dane docierają; oraz rozszerzenie Google Analytics Debugger w Chrome, które wyświetla szczegóły każdego hitu wysyłanego do GA4. Przetestuj pełną ścieżkę zakupową od wyświetlenia produktu po zakup, a potem porównaj dane z jednej testowej transakcji w GA4 i panelu sklepu.

Gotowy na strategiczne partnerstwo w marketingu cyfrowym?

Porozmawiajmy o Twoich wyzwaniach i celach. Opracujemy dopasowaną strategię i plan działania, które przyniosą mierzalne rezultaty dla Twojego e-commerce lub instytucji.