Przejdź do treści

Konwersje Google Ads i Enhanced Conversions po stronie serwera

Twój kontener serwerowy już odbiera zdarzenie GA4 purchase z wartością, walutą i identyfikatorem transakcji. Google Ads może użyć tego samego zdarzenia, więc nie potrzebujesz drugiego strumienia danych z przeglądarki. W tej lekcji dodasz do kontenera serwerowego Conversion Linker i tag Google Ads Conversion Tracking, a potem wyślesz ze zdarzeniem zahashowane dane klienta, żeby Enhanced Conversions mogły dopasować więcej sprzedaży do kliknięć w reklamy.

Zaawansowany 12 min czytania

Czego się nauczysz

  • Zachowasz identyfikator kliknięcia Google Ads w ciasteczkach first-party dzięki Conversion Linkerowi w obu kontenerach.
  • Uruchomisz tag Google Ads Conversion Tracking w kontenerze serwerowym na zdarzeniu GA4 purchase.
  • Wyślesz e-mail, telefon i adres jako dane przekazane przez użytkownika, żeby Enhanced Conversions mogły z nich korzystać.
  • Sprawdzisz konwersję w Preview serwera i w diagnostyce Google Ads.

Zanim zaczniesz

  • Zdarzenie GA4 purchase docierające do kontenera serwerowego (lekcja 9).
  • Działanie powodujące konwersję typu zakup w Google Ads i dostęp do jego ustawień.
  • Wdrożony Consent Mode v2 (lekcja 6).

01 Jak to wszystko do siebie pasuje

Gdy ktoś klika reklamę, adres strony docelowej zawiera gclid. Conversion Linker zapisuje go w ciasteczku first-party (_gcl_aw). Gdy odwiedzający kupuje, trafienie GA4 purchase dociera do kontenera serwerowego, a znajdujący się tam tag Google Ads Conversion Tracking wysyła konwersję do Google Ads z informacją o kliknięciu, wartością zamówienia i, przy Enhanced Conversions, zahashowanymi danymi klienta.

  • Kontener Web: tag Conversion Linker i tagi GA4, które już masz.
  • Kontener serwerowy: tag Conversion Linker, tag Google Ads Conversion Tracking i, jeśli prowadzisz remarketing, tag Google Ads Remarketing.
  • Google Ads: działanie powodujące konwersję z włączonymi Enhanced Conversions.

02 Dodaj Conversion Linker w obu kontenerach

W kontenerze Web Conversion Linker odczytuje identyfikator kliknięcia z adresu strony docelowej i go zapisuje. W kontenerze serwerowym pozwala serwerowi tagowania obsługiwać ciasteczka Google Ads na sgtm.example.com, więc ustawia je jako first-party Twoja własna domena.

  1. 1 W kontenerze Web utwórz tag typu Conversion Linker, ustaw regułę All Pages i zapisz.
  2. 2 W kontenerze serwerowym otwórz Tags, kliknij New i wybierz Conversion Linker.
  3. 3 Uruchamiaj go na każdym trafieniu GA4: regułą typu Custom, która uruchamia się na Some Events z warunkiem Client Name equals GA4. Reguła z lekcji 4 zadziała bez zmian.
  4. 4 Zapisz tag.

03 Dodaj tag Google Ads Conversion Tracking

Najpierw zdobądź dwa identyfikatory działania powodującego konwersję. W Google Ads otwórz Goals, potem Conversions, otwórz działanie dla zakupu i zajrzyj do konfiguracji tagu dla Google Tag Managera. Znajdziesz tam Conversion ID (liczbę z AW-XXXXXXXXX) i Conversion Label.

  1. 1 W kontenerze serwerowym utwórz tag typu Google Ads Conversion Tracking.
  2. 2 Wpisz Conversion ID i Conversion Label z Google Ads.
  3. 3 Sprawdź pola wartości, waluty i identyfikatora transakcji. Domyślnie tag odczytuje je z danych zdarzenia (value, currency, transaction_id), które niesie trafienie zakupu GA4. Wypełnij je tylko wtedy, gdy potrzebujesz innych wartości.
  4. 4 Utwórz regułę typu Custom, która uruchamia się na Some Events z dwoma warunkami: Client Name equals GA4 i Event Name equals purchase.
  5. 5 Nazwij tag, na przykład Google Ads - purchase, i zapisz.

Google Ads używa transaction_id, żeby odrzucać zduplikowane konwersje tego samego zamówienia, więc wysyłaj prawdziwy numer zamówienia, tak jak w poprzedniej lekcji.

04 Wysyłaj dane przekazane przez użytkownika dla Enhanced Conversions

Enhanced Conversions dodają do konwersji dane klienta z zamówienia (e-mail, numer telefonu, imię i nazwisko oraz adres). Google dopasowuje je do zalogowanych kont Google, co odzyskuje konwersje, których same ciasteczka nie wychwycą. Tagi Google normalizują wartości i hashują je SHA-256, zanim wyślą je do Google.

Wyślij dane razem z zakupem, w obiekcie user_data obok ecommerce:

js
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ ecommerce: null });
window.dataLayer.push({
  event: 'purchase',
  user_data: {
    email: '[email protected]',
    phone_number: '+48123456789',
    address: { first_name: 'Jan', last_name: 'Kowalski', postal_code: '00-001', country: 'PL' }
  },
  ecommerce: {
    transaction_id: 'T-10293',
    value: 129.90,
    currency: 'EUR',
    items: [{ item_id: 'SKU-1', item_name: 'Shoes', price: 129.90, quantity: 1 }]
  }
});
  1. 1 W kontenerze Web utwórz zmienne Data Layer Variables dla pól, na przykład user_data.email, user_data.phone_number i user_data.address.postal_code.
  2. 2 Utwórz zmienną typu User-Provided Data, wybierz konfigurację ręczną i przypisz każde pole (e-mail, telefon, imię, nazwisko, kod pocztowy, kraj) do odpowiedniej zmiennej Data Layer Variable.
  3. 3 W Google tagu dodaj parametr konfiguracji user_data ze zmienną User-Provided Data jako wartością. Jeśli chcesz go tylko przy zakupie, dodaj zamiast tego user_data jako parametr zdarzenia w tagu zdarzenia GA4.
  4. 4 W Google Ads otwórz Goals, potem Settings, rozwiń Enhanced conversions for web, włącz tę opcję, jako metodę wybierz Google Tag Manager i zaakceptuj warunki dotyczące danych klientów.

Dane jadą teraz z trafieniem GA4 do sgtm.example.com, a tag Google Ads Conversion Tracking w kontenerze serwerowym wysyła je dalej razem z konwersją. W tagu serwerowym nie musisz niczego dodatkowo konfigurować.

06 Sprawdź konwersję

Otwórz Preview w obu kontenerach. Wejdź na stronę z parametrem testowym, na przykład ?gclid=test123, zaakceptuj wszystkie zgody i złóż zamówienie testowe.

  • Preview Web: Conversion Linker uruchamia się przy ładowaniu strony, a na Twojej domenie istnieje ciasteczko _gcl_aw.
  • Preview serwera: przy zdarzeniu purchase zarówno Conversion Linker, jak i Google Ads - purchase są na liście Tags Fired.
  • Preview serwera: Outgoing HTTP Requests pokazują zapytanie z tagu Google Ads do domeny Google Ads, na przykład googleadservices.com, ze statusem powodzenia.
  • Preview serwera: dane zdarzenia zawierają user_data, a value, currency i transaction_id są ustawione.
  • Google Ads: po kilku dniach działanie powodujące konwersję i jego diagnostyka Enhanced Conversions pokazują zarejestrowane konwersje i dopasowane dane klientów.

Najczęstsze pytania

Czy nadal potrzebuję tagu konwersji Google Ads w kontenerze Web?

Nie. Tag serwerowy wysyła konwersję ze zdarzenia zakupu GA4. Oba tagi naraz policzyłyby każde zamówienie podwójnie, chyba że oba wysyłają ten sam transaction_id. W kontenerze Web zostaw tylko Conversion Linker.

Czy mam sam zahashować e-mail przed wysłaniem do dataLayer?

Nie przy ręcznie skonfigurowanej zmiennej User-Provided Data: tagi Google normalizują i hashują wartości za Ciebie. Jeśli wolisz wysyłać już zahashowane wartości, muszą być znormalizowane i zahashowane SHA-256 dokładnie tak, jak opisuje to Google w dokumentacji Enhanced Conversions.

Dlaczego po zamówieniu testowym w Google Ads nie ma konwersji?

Zamówienie testowe bez prawdziwego kliknięcia w reklamę często nie jest przypisywane do kampanii. Najpierw sprawdź Preview serwera: jeśli zapytanie do Google Ads wyszło z serwera ze statusem powodzenia, a zgoda była udzielona, poczekaj dzień i sprawdź ponownie.

Gotowy, żeby przejść do praktyki?

Wdróż kontener server GTM na własnej domenie w kilka minut. Plan darmowy nie wymaga karty.

Załóż darmowe konto