Śledzenie konwersji w sklepie internetowym - dataLayer i GTM dla e-commerce

Technical Implementation Expert
Śledzenie konwersji w sklepie internetowym - dataLayer i GTM dla e‑commerce
Śledzenie konwersji w sklepie internetowym najlepiej oprzeć na warstwie danych (dataLayer) i Google Tag Manager: sklep w kluczowych momentach zakupu, takich jak wyświetlenie produktu, dodanie do koszyka i złożenie zamówienia, umieszcza w dataLayer zdarzenie z danymi produktów i wartością, a tagi w GTM przekazują je do GA4, Google Ads i Meta. Programista odpowiada za to, żeby dane w dataLayer były kompletne i zgodne z zamówieniem, a marketer konfiguruje tagi bez zmian w kodzie sklepu.
W tym wpisie wyjaśniamy, czym jest dataLayer, jakie zdarzenia e-commerce GA4 warto w nim umieścić, jak wygląda poprawny kod zdarzenia zakupu, jak skonfigurować tagi w Google Tag Manager i jakie błędy najczęściej psują pomiar. Tekst jest dla właścicieli sklepów, marketerów i programistów, którzy chcą mieć wiarygodne dane o sprzedaży z reklam.
[#wazne] W skrócie: śledzenie konwersji w sklepie opiera się na warstwie danych dataLayer, do której sklep wysyła zdarzenia e-commerce w formacie GA4, np. view_item, add_to_cart, begin_checkout i purchase, z tablicą items, wartością, walutą i numerem transakcji. Google Tag Manager odczytuje te zdarzenia i uruchamia tagi GA4, Google Ads i Meta. Najważniejsze są kompletne dane i unikalny transaction_id. Programiści Vinson wdrażają i naprawiają dataLayer w sklepach na różnych platformach.
Czym jest dataLayer w Google Tag Manager
Warstwa danych, czyli dataLayer, to obiekt JavaScript na stronie, w którym sklep zapisuje informacje dla tagów: jaki produkt ogląda klient, co dodał do koszyka, ile zapłacił. Google Tag Manager czyta te informacje i na ich podstawie uruchamia tagi. Dzięki temu dane nie są wyciągane ze struktury strony, która zmienia się przy każdej zmianie szablonu, tylko pochodzą prosto z logiki sklepu.
Dokumentacja Google zaleca, by warstwę danych utworzyć raz na stronie instrukcją window.dataLayer = window.dataLayer || [];, możliwie wysoko w kodzie, powyżej fragmentu kodu kontenera GTM. Kolejne dane dodaje się metodą dataLayer.push. Nazwa obiektu rozróżnia wielkość liter, więc datalayer i dataLayer to dwa różne obiekty, a na stronie powinna działać tylko jedna warstwa danych (stan na sierpień 2026 - sprawdź aktualną dokumentację Google).
Konwersja w sklepie to działanie, które ma dla firmy wartość - przede wszystkim zakup, ale też np. zapis do newslettera czy założenie konta. Śledzenie konwersji polega na tym, żeby każde takie działanie trafiło do narzędzi analitycznych i reklamowych z poprawną wartością i informacją, z której kampanii przyszedł klient. Bez tego Google Ads i Meta nie wiedzą, które reklamy sprzedają, a raport w GA4 pokazuje ruch, ale nie jego wartość. Warstwa danych jest miejscem, w którym sklep przekazuje te informacje w jednym, uporządkowanym formacie.
Zdarzenia e-commerce w dataLayer odpowiadają kolejnym etapom zakupu. Dzięki temu w GA4 widać nie tylko liczbę zamówień, ale też miejsce, w którym klienci rezygnują:
[#chart:wpr38a]
Jakie zdarzenia e-commerce GA4 wysłać do dataLayer
GA4 ma zestaw zalecanych zdarzeń e-commerce. Ich nazwy i parametry warto stosować dokładnie, bo tylko wtedy dane trafią do raportów e-commerce. Lista z dokumentacji Google (stan na sierpień 2026 - sprawdź aktualną dokumentację Google):
| Zdarzenie | Kiedy wysłać | Najważniejsze dane |
|---|---|---|
| view_item_list | Wyświetlenie listy produktów, np. kategorii | items, nazwa lub id listy |
| select_item | Kliknięcie produktu na liście | items |
| view_item | Wyświetlenie karty produktu | items, value, currency |
| add_to_cart | Dodanie produktu do koszyka | items, value, currency |
| remove_from_cart | Usunięcie produktu z koszyka | items, value, currency |
| view_cart | Wyświetlenie koszyka | items, value, currency |
| begin_checkout | Rozpoczęcie składania zamówienia | items, value, currency |
| add_shipping_info | Wybór metody dostawy | items, metoda dostawy |
| add_payment_info | Wybór metody płatności | items, metoda płatności |
| purchase | Złożenie zamówienia | transaction_id, value, currency, items |
| refund | Zwrot zamówienia | transaction_id, opcjonalnie items |
Każdy element tablicy items wymaga według dokumentacji item_id albo item_name, choć zalecane jest podawanie obu. Opcjonalnie dodaje się m.in. cenę, ilość, markę, kategorię i wariant; brak ilości oznacza 1. Wartość value to suma ceny pomnożonej przez ilość dla wszystkich produktów, a walutę należy podać na poziomie zdarzenia, gdy wysyłasz wartość.
[#tip] Używaj w item_id tego samego identyfikatora, który jest w feedach produktowych Google Merchant Center i katalogu Meta. Spójne identyfikatory w pomiarze i w feedzie są warunkiem działania remarketingu dynamicznego i raportów na poziomie produktu w reklamach.
- Wycena zadania w 24 h w dni robocze
- Integracje, API, feedy i poprawki w sklepie
- Rozliczenie godzinowe albo za projekt
Konsultację poprowadzi Łukasz Palej, Technical Implementation Expert

Łukasz Palej
Technical Implementation Expert
Wsparcie programistyczne dla e-commerce
Łukasz i nasz zespół pomogą Ci wdrożyć to na Twoim koncie - bez zobowiązań.
- Analiza Twojego konta i obecnych działań
- Konkretny plan poprawek do wdrożenia
- Bezpłatna konsultacja – bez zobowiązań

Przeczytaj także
Więcej porad z naszej bazy wiedzy - przesuń, aby zobaczyć kolejne artykuły.
Wybierz dogodny termin w kalendarzu - bez wymiany maili w tę i z powrotem.
