Strona główna / Poradniki

Jak debugować GTM bez trybu podglądu

Podgląd wymaga dostępu do kontenera, zmienia stronę i mówi tylko za jeden kontener. Oto jak zweryfikować GTM na podstawie żądań, które faktycznie tworzy.

Tryb podglądu to oficjalny sposób debugowania Google Tag Managera i jest bardzo dobry w jednej konkretnej rzeczy: mówi, dlaczego reguła zadziałała tak, a nie inaczej. Ma też trzy ograniczenia, które pojawiają się bez przerwy. Wymaga uprawnień do edycji tego kontenera. Zmienia stronę, którą debuguje. I wie tylko o tagach w tym jednym kontenerze, co rzadko obejmuje całe śledzenie na stronie.

Czego tryb podglądu nie obejmie

Cztery pytania

Debugowanie wdrożenia GTM to w istocie cztery pytania po kolei, a na każde da się odpowiedzieć z poziomu przeglądarki:

  1. Czy kontener w ogóle jest na stronie? Żądanie gtm.js podaje identyfikator kontenera. Uważaj na stronę, która zmienia nazwę dataLayer — ostatni argument snippetu to ta nazwa, a jeśli nie brzmi dataLayer, wszystkie poradniki każące wpisać dataLayer w konsoli są dla tej strony błędne.
  2. Czy dataLayer otrzymał zdarzenie? Push albo nastąpił, albo nie, i jest to pytanie o kod samej strony, nie o GTM.
  3. Czy uruchomił się dla niego jakiś tag? Opublikowany kontener to plik publiczny. Jego odczytanie odpowiada na pytanie, czy w ogóle istnieje tag nasłuchujący tego zdarzenia — zaskakująco często jest to odpowiedź na „dlaczego nic się nie dzieje”.
  4. Czy żądanie wyszło i z czym? To jedyne pytanie, które dowodzi, że cokolwiek dotarło do dostawcy.

Czytanie kontenera bez podglądu

gtm.js jest serwowany publicznie każdemu odwiedzającemu, więc opublikowany kontener da się odczytać z samego identyfikatora: tagi, reguły i zdarzenia, których te reguły nasłuchują. Zamienia to zdanie „programista mówi, że jest tag zakupu” w coś sprawdzalnego.

Uczciwe ograniczenia: widzisz wersję opublikowaną, nie obszar roboczy, więc niewdrożone zmiany pozostają niewidoczne. Widzisz, że reguła istnieje, a nie dlaczego okazała się prawdziwa przy tym konkretnym wczytaniu strony. To drugie jest dokładnie zadaniem trybu podglądu i dlatego podgląd zachowuje swoje miejsce w zestawie narzędzi.

dataLayer i jego dwie pułapki

Moment odczytu. Wszystko, co czyta dataLayer po wczytaniu strony, widzi tablicę, którą GTM już przetworzył i przepisał. Pushe z czasu ładowania — domyślne zgody, pierwsze zdarzenie gtm.js, wyświetlenia e-commerce wywołane inline — mogą już zniknąć, zanim zajrzysz. Monitor, który podpina się pod tablicę przed uruchomieniem skryptu strony, widzi całą historię; zrzut z konsoli nie.

Kruchość. Wszystko, co nadpisuje push, żeby go obserwować, stoi w środku kodu samej strony, a zrobione nieostrożnie psuje ją. Push zawierający strukturę cykliczną, węzeł DOM albo wartość, której nie da się sklonować, musi przetrwać w całości i dotrzeć do GTM niezmieniony. Jeśli narzędzie do debugowania zmienia zachowanie debugowanego obiektu, wszystko po tym jest szumem.

Od pusha do żądania

Przydatny widok to nie osobna lista pushy i osobna lista żądań, tylko każdy push obok żądań, które wywołał. Utrudniają to dwie rzeczy. Platformy zapisują to samo zdarzenie inaczej — purchase w GA4, Purchase u Mety, CompletePayment w TikToku — więc dopasowanie musi znać ten słownik. Do tego GA4 łączy zdarzenia w paczki, więc żądanie może pojawić się długo po swoim pushu i po niepowiązanych, późniejszych żądaniach.

Panel zdarzeń dataLayer w Tag Master: push purchase pogrupowany pod stroną, na której nastąpił, a poniżej walidacja schematu e-commerce GA4.
Pushe są przechwytywane, zanim uruchomi się skrypt strony, więc te z czasu ładowania wciąż tam są, gdy zaglądasz — i każdy jest sprawdzany względem schematu e-commerce GA4.

Tag Master łączy każdy push do dataLayer z żądaniami, które wywołał, czyta opublikowany kontener, żebyś zobaczył, czy dla zdarzenia istnieje tag, i zamienia przechwycony push w gotowy przepis GTM: warunek reguły i nazwy zmiennych Data Layer do utworzenia.

Gdy tag się uruchamia, a nic nie dociera

To przypadek, który tryb podglądu raportuje jako sukces. Warto sprawdzić po kolei:

Zbudowanie reguły, której naprawdę potrzebujesz

Większość pracy z GTM to nie debugowanie, tylko to samo małe zadanie w kółko: coś na stronie ma stać się zdarzeniem. Kliknięcie elementu i otrzymanie stabilnego selektora CSS, warunku reguły oraz zmiennej wyciągającej wartość to różnica między pięcioma minutami a półgodziną — zwłaszcza na stronach, których nazwy klas są generowane i zmieniają się przy każdym wdrożeniu.

Kiedy tryb podglądu nadal jest właściwy

Wtedy, gdy pytanie brzmi dlaczego. Dlaczego ta reguła zadziałała na stronie, na której nie powinna. Która zmienna była pusta w chwili uruchomienia tagu. Co zwróciła tabela odnośników. Podgląd jest jedyną rzeczą, która widzi wnętrze oceny dokonywanej przez GTM, i żadna ilość czytania żądań tego nie zastąpi. Żądaniami ustal, że coś jest nie tak i gdzie; podglądem ustal dlaczego.

Powiązane poradniki

Sprawdź na własnej stronie

Tag Master jest darmowy, nie wymaga konta i nie zbiera żadnych danych.

Dodaj do Chrome — za darmo