Blog
Google Ads i tagowanie po stronie serwera: jak każda konwersja odnajduje swoje kliknięcie
Opublikowano · 5 min czytania
Konfiguracja śledzenia konwersji w Google Ads kończy się dwiema prośbami: połączyć istniejący tag Google i wkleić fragment zdarzenia na stronie zakupu. Przy tagowaniu po stronie serwera pierwsze jest w porządku, a drugie to błąd. Ten artykuł śledzi jedno kliknięcie reklamy od strony docelowej do konwersji w Google Ads: co przechodzi przez Twój serwer tagowania, co trafia prosto do Google i czym po drodze zajmuje się SignalHost. Sami prowadzimy kampanie Google Ads dla signalhost.io, więc wszystko tutaj zostało zmierzone na naszej własnej stronie.
Co się zmienia, gdy połączysz tag Google
Gdy tworzysz działanie powodujące konwersję, Google Ads szuka tagu Google na Twojej stronie i proponuje jego użycie. Jeśli się zgodzisz, Twój tag Google — ten z identyfikatorem pomiaru G- — dostaje Twoje konto Ads (AW-…) jako drugie miejsce docelowe. Google ostrzega, że zaktualizuje to ustawienia tagu. Zmiana zachodzi w ustawieniach tagu po stronie Google, a nie w Twoim kontenerze Tag Managera, ale od tej chwili każda strona, która ładuje tag, komunikuje się także z Google Ads.
Każde wyświetlenie strony wysyła teraz kilka żądań z przeglądarki odwiedzającego prosto do Google, do googleads.g.doubleclick.net i www.google.com, na potrzeby list remarketingowych i własnych pomiarów Google. Nie przechodzą przez Twój serwer tagowania i tak ma być: przekazywane przez serwer, wszystkie przychodziłyby z adresu serwera zamiast z adresu odwiedzającego, a tego nie chcesz pokazywać platformie reklamowej. Dane GA4 nadal płyną przez Twoją własną domenę, tak jak wcześniej.
Dopiero zaczynasz z tagowaniem po stronie serwera? Jak krok po kroku skonfigurować Google Tag Manager po stronie serwera.
Nie umieszczaj fragmentu konwersji Google na swojej stronie
Następnie Google Ads proponuje fragment zdarzenia dla strony zakupu. Wysyła on konwersję z przeglądarki prosto do Google Ads, z pominięciem Twojego serwera tagowania — z wartością 1.0 i pustym identyfikatorem transakcji, dopóki ktoś ich nie uzupełni.
// Google's event snippet: not for your page.
// Paste it into the Conversion ID box in SignalHost instead.
gtag('event', 'conversion', {
'send_to': 'AW-123456789/AbC-D_efGh12_34',
'value': 1.0,
'currency': 'EUR',
'transaction_id': ''
});Z SignalHost konwersję wysyła Twój kontener serwerowy. Otwórz kontener, rozwiń „Miejsca docelowe konwersji” i wpisz identyfikator oraz etykietę konwersji w sekcji Google Ads. Od tej chwili każdy zakup, który Twoja strona już zgłasza — zdarzenie GA4 purchase — trafia z serwera do Google Ads, z wartością, walutą i identyfikatorem transakcji. W Tag Managerze nic nie musi się zmieniać.
Nie dodawaj dodatkowo fragmentu. Przy obu każdy zakup zostanie zarejestrowany dwa razy: Google łączy dwie konwersje tylko wtedy, gdy mają ten sam identyfikator transakcji, a we fragmencie jest on zwykle pusty.
Nie musisz sam wyciągać identyfikatora i etykiety z fragmentu. Wklej cały fragment albo tylko jego wartość send_to w pole „Identyfikator konwersji”, a oba pola wypełnią się same. Identyfikator działa w obu zapisach: AW-123456789 lub 123456789.
Jak kliknięcie przetrwa do zakupu
Konwersja przydaje się Google Ads tylko wtedy, gdy da się ją powiązać z kliknięciem, które do niej doprowadziło. Łącznikiem jest identyfikator kliknięcia: Google dodaje go do adresu strony docelowej jako gclid=…, a przy następnym kliknięciu odwiedzającego znika on z adresu.
Każdy kontener SignalHost ma do tego serwerowy Conversion Linker. Odczytuje identyfikator kliknięcia z trafienia strony docelowej i zapisuje go w pliku cookie własnej domeny o nazwie FPGCLAW. Gdy przychodzi zakup — trzy strony albo trzy dni później — tag Google Ads w Twoim kontenerze serwerowym odczytuje ten plik cookie i wysyła konwersję razem z kliknięciem.
Muszą być spełnione dwa warunki. Odwiedzający musi zgodzić się na reklamy w banerze cookies: bez tej zgody linker nic nie zapisuje, a tag Ads nic nie wysyła. A przeglądarka musi przyjąć plik cookie, co zależy od adresu, pod którym działa Twój serwer tagowania.
Dlaczego Google Ads potrzebuje Twojej własnej domeny
Plik cookie kliknięcia ustawia Twój serwer tagowania, a przeglądarki przyjmują go tylko wtedy, gdy ten serwer należy do Twojej strony — to subdomena w rodzaju metrics.twojastrona.pl. Adres, od którego zaczyna każdy kontener, jest subdomeną signalhost.io, czyli dla przeglądarki stroną kogoś innego, więc tam plik cookie zostaje odrzucony.
Nic nie sygnalizuje tej różnicy. Konwersje nadal docierają do Google Ads, ale bez swojego kliknięcia, więc Google Ads nie może przypisać ich do żadnej kampanii — co wygląda dokładnie jak reklamy, które nie działają. Połącz własną domenę, zanim ocenisz kampanię po liczbach: wystarczy jeden rekord CNAME, a certyfikat jest wystawiany automatycznie. Dopóki żadna domena nie jest aktywna, ustawienia Google Ads Twojego kontenera o tym informują. Jak skierować własną domenę na serwer tagowania.
Gdy zakup następuje kilka dni później
Okresy próbne i subskrypcje łamią zwykłą ścieżkę: pieniądze przepływają kilka dni po wizycie, gdy nikogo nie ma na Twojej stronie, więc zakup trzeba wysłać z serwera — zwykle z webhooka operatora płatności, jak opisuje nasz przewodnik po własnych checkoutach.
Dla Google Ads taki zakup potrzebuje jeszcze dwóch rzeczy z checkoutu, póki odwiedzający jest na miejscu. Zapisz reklamowe pliki cookie, które niesie żądanie checkoutu — FPGCLAW, FPAU i pliki _gcl_ od Google, które istnieją dopiero po zgodzie na reklamy — i odeślij je jako pliki cookie razem z zakupem, oznaczając zgodę na reklamy jako udzieloną. Bez nich Google Ads nie może ani przyjąć konwersji, ani jej przypisać.
// At checkout: keep the advertising cookies with the order.
// They only exist once the visitor allowed advertising.
const AD_COOKIES = ['FPGCLAW', 'FPAU', '_gcl_aw', '_gcl_au'];
order.adCookies = pick(req.cookies, AD_COOKIES);
// In the payment webhook: send them back with the purchase.
// gcs=G111 in the params: advertising and analytics consent granted.
await fetch(`https://metrics.yoursite.com/g/collect?${params}`, {
method: 'POST',
headers: { cookie: serialize(order.adCookies) },
});Tak signalhost.io zgłasza własne subskrypcje: webhook Stripe wysyła zakup, gdy zostaje opłacona pierwsza faktura, i niesie ze sobą kliknięcie reklamy z checkoutu.
Czym zajmuje się SignalHost
Ty wpisujesz dwie wartości. Cała reszta jest w każdym kontenerze:
- Conversion Linker i tag konwersji Google Ads. Po wpisaniu identyfikatora i etykiety działają od następnego żądania.
- Tag Ads uruchamia się przy zakupach i przy niczym innym. Tag nasłuchujący każdego zdarzenia zapisałby każde wyświetlenie strony jako sprzedaż.
- Zgoda na reklamy jest egzekwowana na serwerze: odwiedzający, który odmówił reklam, nie wywołuje żadnej konwersji w Google Ads.
- Każdy plik cookie ustawiony przez Twój serwer tagowania dociera do przeglądarki — identyfikator kliknięcia, własny identyfikator odwiedzającego i identyfikator użytkownika reklam.
- Identyfikator konwersji jest wysyłany w formie, której oczekuje tag, niezależnie od tego, jak go wpisałeś.
- Strona Twojego kontenera informuje, gdy Google Ads brakuje Twojej własnej domeny.
signalhost.io działa dokładnie na tej konfiguracji i na naszym własnym koncie Google Ads. Kontrola, na której polegamy, to testowa wizyta z identyfikatorem kliknięcia: na końcu plik cookie kliknięcia musi być w przeglądarce.
Jak sprawdzić własną konfigurację
- Otwórz swoją stronę z ?gclid=test na końcu adresu i zgódź się na reklamy w banerze cookies. Wśród plików cookie przeglądarki dla Twojej domeny powinien być teraz FPGCLAW.
- Uruchom sesję podglądu w „Narzędziach deweloperskich” kontenera, kliknij Podgląd przy kontenerze serwerowym w Tag Managerze i zrób testowy zakup. Tag konwersji Google Ads powinien się uruchomić, z wartością, walutą i identyfikatorem transakcji.
- Upewnij się, że fragmentu zdarzenia Google nie ma na stronie zakupu i że żaden tag konwersji Google Ads w Twoim kontenerze internetowym nie uruchamia się przy tym samym zakupie.
- Daj Google Ads dzień: tyle może potrwać, zanim nowe działanie powodujące konwersję pokaże się jako aktywne.
Jeśli konwersje docierają, ale nigdy nie są przypisywane do kampanii, kliknięcie gubi się po drodze: najpierw sprawdź zgodę i własną domenę.
