Co przygotować
- GA4: Measurement ID i API secret — wymagane. GA4 jest podstawą pomiaru i nie da się go odznaczyć.
- Google Ads, Meta, TikTok — opcjonalnie, tylko dla platform, z których korzystasz.
- Dostęp do DNS domeny sklepu — jeśli chcesz własną subdomenę pomiarową. Sklep musi mieć podpiętą własną domenę w Shopify (Ustawienia → Domeny); sam adres
.myshopify.comnie wystarczy. - Dostęp do edytora motywu w Shopify — do kroku 4.
Gdzie dokładnie znaleźć każdy identyfikator: identyfikatory platform.
Instalacja i uprawnienia
Otwórz TagRelay w Shopify App Store i kliknij instalację.
Zaakceptuj uprawnienia. Aplikacja prosi o cztery: odczyt zdarzeń klientów, odczyt zamówień, odczyt motywów i zapis pikseli.
Po instalacji otwiera się kreator: „Przejdziemy razem przez 5 kroków”.
| Uprawnienie | Do czego służy |
|---|---|
| Odczyt zdarzeń klientów | Zdarzenia ze sklepu i z koszyka (wyświetlenia, dodania do koszyka, rozpoczęcie zamówienia). |
| Odczyt zamówień | Zdarzenie zakupu wysyłane z serwera oraz liczenie zamówień do limitu planu. |
| Odczyt motywów | Sprawdzenie, czy wstawka aplikacji jest włączona w aktywnym motywie. |
| Zapis pikseli | Utworzenie piksela aplikacji w Twoim sklepie. |
Co dzieje się samo, bez klikania:
- Serwer pomiarowy sklepu uruchamia się zwykle w 1–3 minuty od instalacji.
- Tagi importują się w tle około 20–40 minut. W tym czasie możesz przechodzić kolejne kroki; dane zaczną płynąć po zakończeniu importu.
- Aplikacja sama podłącza powiadomienie o nowym zamówieniu — zakup trafia do platform z serwera Shopify, a nie z przeglądarki klienta.
Krok 1. Identyfikatory platform
Zaznacz platformy, z których korzystasz, i wypełnij pola. Aplikacja sprawdza format każdej wartości i od razu pokazuje błąd przy polu.
| Platforma | Pole | Format | Uwagi |
|---|---|---|---|
| GA4 | Measurement ID | G- i 6–14 wielkich liter lub cyfr | Wymagane. |
| GA4 | API secret (Measurement Protocol) | 16–64 znaki | Wymagane. Wartości „na próbę” (same cyfry, powtórzony znak) są odrzucane. |
| Google Ads | Conversion ID | AW- i 9–11 cyfr | Jedno na konto Google Ads. |
| Google Ads | Etykieta konwersji — zakup | 6–64 znaki | Wymagana po zaznaczeniu Google Ads. |
| Google Ads | Etykiety: dodanie do koszyka, rozpoczęcie zamówienia, subskrypcja, formularz | 6–64 znaki | Opcjonalne. Zostaw puste, jeśli nie mierzysz danego zdarzenia. |
| Meta | Pixel ID | 15–16 cyfr | |
| Meta | Token Conversions API | zaczyna się od EA | Generujesz w ustawieniach piksela. |
| TikTok | Pixel ID | 11–31 wielkich liter lub cyfr | |
| TikTok | Token Events API | 32–64 znaki (cyfry, litery a–f) |
Kliknij „Zapisz identyfikatory”. Poprawny zapis potwierdza komunikat: „Zapisano identyfikatory — konfiguracja poszła do Twojego kontenera.”
Pinterest jest w aplikacji oznaczony jako „wkrótce” — nie ma jeszcze pól do wypełnienia.
Krok 2. Własna domena pomiarowa (opcjonalnie)
Z własną subdomeną pomiar działa z adresu w Twojej domenie. Daje to najlepszą jakość danych w Safari i przy blokerach reklam.
W polu „Subdomena trackingowa” zostaw domyślne
sstalbo wpisz własną nazwę (1–30 znaków: małe litery, cyfry, myślnik). Rekord poniżej zaktualizuje się sam.U dostawcy domeny dodaj rekord CNAME dokładnie taki, jaki pokazuje aplikacja. W Cloudflare — z wyłączonym proxy („DNS only”).
Kliknij „Sprawdź DNS”. Aplikacja pokazuje trzy etapy: „1. Rekord DNS (CNAME)”, „2. Certyfikat SSL”, „3. Kontener odpowiada”.
Jeśli któryś etap jeszcze trwa, kliknij „Sprawdź ponownie” po kilku minutach. Certyfikat wystawia się automatycznie.
Możesz też kliknąć „Pomiń — tracking na naszej domenie” i wrócić do tego kroku później. Pomiar będzie działał, ale Safari ograniczy cookies do 7 dni, a część blokerów zablokuje obcą domenę.
Plan Starter nie obejmuje własnej domeny. Jest dostępna w okresie próbnym oraz w planach Growth, Business i Scale.
Krok 3. Aktywacja piksela
Kliknij „Aktywuj pixel”. Aplikacja sama tworzy swój piksel w Twoim sklepie — niczego nie wklejasz. Potwierdzenie: „Pixel aktywny — zdarzenia płyną do Twojego kontenera.”
Krok 4. Wstawka w motywie (theme embed)
Wstawka zapisuje przy koszyku identyfikatory wizyty i kliknięć reklam. Dzięki temu zamówienie da się przypisać do źródła także wtedy, gdy bloker reklam zatrzyma piksel.
Kliknij „Otwórz edytor motywu” — blok „tracking” będzie już zaznaczony.
Upewnij się, że przełącznik bloku jest włączony.
Kliknij „Zapisz” w prawym górnym rogu edytora Shopify.
Wróć do aplikacji i kliknij „Sprawdź włączenie” — aplikacja sprawdzi aktywny motyw.
Po zmianie motywu powtórz ten krok. Wstawka jest zapisana w konkretnym motywie. Gdy opublikujesz inny, aplikacja pokaże ostrzeżenie „Theme embed został wyłączony”.
Krok 5. Test
Otwórz stronę główną sklepu tak jak klient (najlepiej w oknie prywatnym) i zaakceptuj cookies.
Wejdź na dowolną kartę produktu.
Dodaj produkt do koszyka.
Aplikacja sprawdza zdarzenia co 15 sekund — niczego nie odświeżasz. Po 10 minutach bez zdarzeń automatyczne sprawdzanie się zatrzymuje; wtedy kliknij „Sprawdź ponownie”.
Jeśli podgląd zdarzeń nie jest dostępny w Twojej instalacji, potwierdzasz ręcznie: po 2–3 minutach zdarzenia powinny być widoczne w GA4 w raporcie „Czas rzeczywisty”. Wtedy kliknij „Widzę zdarzenia — zakończ konfigurację”.
Test ma sens dopiero po zakończeniu importu tagów. Do tego czasu przycisk potwierdzenia jest zablokowany i odblokuje się sam.
Po konfiguracji
- Kreator zamienia się w ekran ustawień — każdą sekcję możesz rozwinąć i zmienić w dowolnej kolejności.
- Strona główna aplikacji pokazuje status: „Aktywny”, „Uruchamianie” albo „Błąd konfiguracji”.
- Masz własny kontener GTM w przeglądarce? W ustawieniach wpisz jego identyfikator w polu „ID Twojego kontenera web” (format
GTM-XXXXXXX). Przycisk „Pobierz kontener web (JSON)” daje gotowy zestaw tagów z Twoimi identyfikatorami; importujesz go w GTM: Administracja → Importuj kontener → Scal.
Jakie zdarzenia są mierzone
| Co robi klient | Zdarzenie w GA4 |
|---|---|
| Otwiera stronę | page_view |
| Ogląda produkt | view_item |
| Ogląda kolekcję | view_item_list |
| Szuka w sklepie | search |
| Dodaje do koszyka / usuwa z koszyka | add_to_cart / remove_from_cart |
| Otwiera koszyk | view_cart |
| Rozpoczyna zamówienie | begin_checkout |
| Podaje adres dostawy / dane płatności | add_shipping_info / add_payment_info |
| Kupuje | purchase |
Zakup liczy się raz. Źródłem zakupu jest powiadomienie o zamówieniu z serwera Shopify. Zakup zgłoszony przez przeglądarkę służy tylko do połączenia zamówienia z wizytą — nie jest wysyłany do platform drugi raz.
Zgody na cookies
- Aplikacja korzysta z ustawień prywatności klientów w Shopify. Piksel deklaruje cele „analityka” i „marketing”, więc Shopify uruchamia go zgodnie z decyzją klienta w banerze.
- Wstawka w motywie odczytuje tę samą decyzję i dołącza ją do zamówienia, więc zakup wysyłany z serwera niesie informację o zgodzie na analitykę i marketing. Zapisywana jest tylko jawna decyzja klienta — brak decyzji nie jest zamieniany na zgodę.
- Baner cookies ustawiasz w Shopify: Ustawienia → Prywatność klientów. TagRelay nie zastępuje banera.
Plany i limity
| Plan | Zamówienia / miesiąc | Cena / miesiąc | Własna domena |
|---|---|---|---|
| Okres próbny (14 dni) | do 1 500 | 0 USD | tak |
| Starter | do 500 | 39 USD | nie |
| Growth | do 1 500 | 69 USD | tak |
| Business | do 3 000 | 99 USD | tak |
| Scale | do 7 500 | 159 USD | tak |
- Przekroczenie limitu nie wyłącza pomiaru. Aplikacja pokazuje baner i proponuje wyższy plan; nie nalicza dopłat za pojedyncze zamówienia.
- Po okresie próbnym bez wybranego planu zbieranie danych też nie jest przerywane — aplikacja prosi o wybór planu.
- Powyżej 7 500 zamówień miesięcznie — oferta indywidualna.
- Opłata przechodzi przez rozliczenia Shopify, w cyklu 30-dniowym.
Typowe problemy
| Komunikat lub objaw | Przyczyna | Co zrobić |
|---|---|---|
| „Twój kontener śledzący nie jest jeszcze gotowy” | Serwer jeszcze się uruchamia (1–3 minuty). | Zaczekaj — status na górze strony odświeży się sam. |
| „Nie znaleziono rekordu CNAME” | Rekord nie został dodany albo jeszcze się nie rozpropagował (do kilku godzin). | Sprawdź rekord u dostawcy DNS i kliknij „Sprawdź ponownie”. |
| Rekord dodany w Cloudflare, a aplikacja go nie widzi | Włączone proxy (pomarańczowa chmurka). | Przestaw rekord na „DNS only”. |
| „Znaleziono CNAME wskazujący na…” | Rekord prowadzi pod inny adres niż oczekiwany. | Popraw cel rekordu na ten z aplikacji. |
| Certyfikat „nie jest jeszcze gotowy” | Wystawianie certyfikatu SSL trwa. | Kliknij „Sprawdź ponownie” za kilka minut. |
| „Nieprawidłowa subdomena” | Nazwa spoza dozwolonego formatu. | Użyj 1–30 znaków: małe litery, cyfry, myślnik. |
| „Theme embed jest wyłączony” | Przełącznik bloku w edytorze motywu jest wyłączony. | Włącz przełącznik, kliknij „Zapisz”, sprawdź ponownie. |
| „Nie znaleźliśmy theme embed w aktywnym motywie” | Blok nie został zapisany w tym motywie. | Otwórz edytor przyciskiem z aplikacji i kliknij „Zapisz”. |
| Krok 4 zaliczony warunkowo | Starsza instalacja bez uprawnienia do odczytu motywów. | Otwórz aplikację ponownie i zaakceptuj nowe uprawnienie. |
| „Nie udało się zaimportować tagów” | Import przerwał się w trakcie. | Kliknij „Ponów import” — wznawia się od miejsca przerwania. |
| „Nie udało się utworzyć kontenera” | Błąd po stronie serwera. | Kliknij „Spróbuj ponownie”; jeśli się powtarza, napisz do mnie. |
| „Zapisaliśmy ustawienia, ale nie udało się ich przesłać do kontenera” | Serwer chwilowo nie przyjął konfiguracji. | Kliknij „Wyślij konfigurację ponownie”. |
| „Od dłuższego czasu brak zdarzeń” | Najczęściej zmiana motywu, rekordu DNS albo identyfikatorów. | Sprawdź kolejno krok 4, krok 2 i krok 1. |
Odinstalowanie i dane
- Po odinstalowaniu aplikacja usuwa piksel i dostęp do sklepu, a serwer pomiarowy zostaje wyłączony.
- Ustawienia platform są zachowane do czasu, aż Shopify zgłosi usunięcie danych sklepu (48 godzin po odinstalowaniu) — żeby ponowna instalacja w tym oknie nie wymagała konfiguracji od zera.
- Po ponownej instalacji sklep dostaje nowy adres serwera. Jeśli używasz własnej subdomeny, zaktualizuj rekord CNAME na ten, który pokaże aplikacja.
- Aplikacja nie prowadzi bazy klientów sklepu. Zestawienia zdarzeń i zamówień — bez danych osobowych — są przechowywane do 30 dni.