Wysyłaj GA4 z GTM Web przez kontener serwerowy
Twój kontener serwerowy działa, ale nic jeszcze nie wysyła do niego danych. W tej lekcji utworzysz usługę GA4, dodasz Google tag i tagi GA4 Event w kontenerze Web i każesz im wysyłać każde trafienie na Twoją subdomenę zamiast do Google. Przeglądarka rozmawia wtedy tylko z sgtm.example.com, w kontekście first-party, a kontener serwerowy decyduje, dokąd dane trafią dalej.
Średnio zaawansowany 12 min czytania
Czego się nauczysz
- Utworzysz usługę GA4 i strumień danych z witryny oraz znajdziesz Measurement ID.
- Dodasz w kontenerze Web Google tag z
server_container_url. - Wyślesz własne zdarzenia i zdarzenia e-commerce tagami GA4 Event.
- Potwierdzisz w DevTools, że trafienia idą na Twoją subdomenę.
01 Utwórz usługę GA4 i strumień danych z witryny
Jeśli masz już usługę GA4, pomiń tę sekcję. Potrzebujesz tylko jej Measurement ID.
- 1 Otwórz analytics.google.com, wejdź w Admin i kliknij Create, a potem Property.
- 2 Wpisz nazwę usługi, strefę czasową raportowania i walutę, a potem uzupełnij dane firmy.
- 3 Gdy GA4 poprosi o rozpoczęcie zbierania danych, wybierz Web, wpisz adres strony i nazwę strumienia, a potem kliknij Create stream.
- 4 Skopiuj Measurement ID ze szczegółów strumienia. Wygląda tak:
G-XXXXXXXXXX.
02 Dodaj Google tag z adresem serwera
Google tag ładuje GA4 na stronie i wysyła page_view. Jedno ustawienie, server_container_url, zmienia miejsce, do którego trafiają jego dane.
- 1 W kontenerze Web wejdź w Tags, kliknij New i jako typ tagu wybierz Google tag.
- 2 Wklej swój Measurement ID w pole Tag ID.
- 3 W sekcji Configuration settings dodaj wiersz z parametrem i wartością jak poniżej.
- 4 Ustaw regułę Initialization - All Pages (albo All Pages), nazwij tag i zapisz.
Configuration parameter: server_container_url
Value: https://sgtm.example.comWpisz dokładnie adres swojego kontenera serwerowego: z https://, bez ścieżki i bez ukośnika na końcu. Initialization - All Pages uruchamia się przed innymi tagami, więc nawet wczesne zdarzenia wiedzą, dokąd wysłać dane.
03 Wysyłaj zdarzenia tagami GA4 Event
Wyświetlenia stron wysyła Google tag. Cała reszta, na przykład rejestracje i zakupy, wymaga tagu Google Analytics: GA4 Event. Wykorzystaj regułę sign_up z lekcji 1:
- 1 Utwórz tag typu Google Analytics: GA4 Event.
- 2 W polu Measurement ID wpisz
G-XXXXXXXXXX(swój identyfikator). Zdarzenie pójdzie przez Google tag o tym samym ID, razem z jego adresem serwera. - 3 W polu Event Name wpisz
sign_up. W sekcji Event Parameters dodajmethodze zmienną Data Layer Variable utworzoną wcześniej. - 4 Wybierz regułę Custom Event
sign_upi zapisz.
W e-commerce strona wysyła szczegóły zakupu w obiekcie ecommerce, którego oczekuje GA4. Najpierw wyczyść poprzedni obiekt ecommerce, tak jak w tym przykładzie.
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ ecommerce: null });
window.dataLayer.push({
event: 'purchase',
ecommerce: {
transaction_id: 'T-10293',
value: 129.90,
currency: 'EUR',
items: [{ item_id: 'SKU-1', item_name: 'Shoes', price: 129.90, quantity: 1 }]
}
});- 1 Utwórz regułę Custom Event dla
purchase. - 2 Utwórz tag Google Analytics: GA4 Event z Event Name
purchase. - 3 Otwórz More Settings, potem Ecommerce, zaznacz Send Ecommerce data i jako Data source wybierz Data Layer.
- 4 Podepnij regułę
purchasei zapisz.
04 Co zmienia się w przeglądarce
Bez adresu serwera GA4 wysyła trafienia do google-analytics.com. Z nim te same trafienia idą na Twoją subdomenę, na ścieżkę /g/collect:
https://sgtm.example.com/g/collect?v=2&tid=G-XXXXXXXXXX&en=page_view&...- Zapytanie zostaje w Twojej domenie, więc dla przeglądarki jest first-party.
- Mniej blokerów je dopasowuje, bo nie idzie już do znanej domeny analitycznej.
- Kontener serwerowy widzi każde trafienie, zanim zobaczy je jakikolwiek dostawca, i właśnie tam możesz później filtrować albo wzbogacać dane.
05 Sprawdź i opublikuj
- 1 Kliknij Preview w kontenerze Web i połącz się ze stroną. Google tag powinien uruchomić się na Initialization, a tagi GA4 Event na swoich zdarzeniach.
- 2 W oknie strony otwórz DevTools, przejdź do karty Network i przefiltruj po
collect. - 3 Odśwież stronę. Powinny być widoczne zapytania do
https://sgtm.example.com/g/collectze statusem200albo204i żadnych dogoogle-analytics.com/g/collect. - 4 Gdy wszystko wygląda dobrze, kliknij Submit i opublikuj kontener Web.
- Na stronie nie został żaden wpisany na sztywno kod gtag.js dla tego samego ID.
- Google tag ma
server_container_urlustawione na Twoją subdomenę. - Zapytania
/g/collectidą dosgtm.example.com. - Preview kontenera serwerowego pokazuje przychodzące zapytania (lekcja o debugowaniu wyjaśnia, jak je czytać).
Najczęstsze pytania
Czy mogę to ustawić bez GTM, bezpośrednio w gtag.js?
Tak. Dodaj server_container_url do polecenia config, na przykład gtag('config', 'G-XXXXXXXXXX', { server_container_url: 'https://sgtm.example.com' });. Dalsza część kursu zakłada użycie GTM.
Czy potrzebuję też Google taga dla Google Ads?
Nie w tej lekcji. Trafienia GA4 wystarczą, żeby zasilić kontener serwerowy, a tagi serwerowe innych dostawców mogą korzystać z tych samych przychodzących danych.
Zapytania nadal idą do google-analytics.com. Co jest nie tak?
Zwykle zmiana nie jest jeszcze opublikowana, inny Google tag albo wpisany na sztywno kod gtag.js dla tego samego ID ładuje się bez tego ustawienia, albo w nazwie parametru jest literówka. Musi brzmieć dokładnie server_container_url.
Gotowy, żeby przejść do praktyki?
Wdróż kontener server GTM na własnej domenie w kilka minut. Plan darmowy nie wymaga karty.
Załóż darmowe konto