Śledzenie konwersji

Implementacja

Podsumowanie

Implementacja śledzenia konwersji składa się z 3 elementów:

  • Zbieranie rwg_token ze strony docelowej lub punktu wejścia aplikacji.
  • Zachowywanie elementu rwg_token dla odpowiedniego okna atrybucji
  • Wysyłanie zdarzenia konwersji w momencie płatności

Implementacja śledzenia konwersji nie wymaga korzystania z Google Analytics ani żadnego innego kodu JavaScript firmy zewnętrznej.

Zanim rozpoczniesz pracę nad implementacją śledzenia konwersji, zdecyduj, czy chcesz śledzić konwersje na poziomie urządzenia czy użytkownika:

  • Na poziomie urządzenia można stosować pliki cookie przeglądarki, pamięć lokalną, pamięć lokalną aplikacji lub dowolną inną metodę, która pozwala zachować token przez 30 dni. Token będzie przechowywany lokalnie na urządzeniu użytkownika. Jeśli użytkownik zmieni używane urządzenie, wyczyści pamięć lokalną lub pliki cookie albo będzie korzystać z przeglądania prywatnego lub trybu incognito, zdarzenie konwersji może nie zostać prawidłowo przypisane. Jeśli używasz śledzenia konwersji na poziomie urządzenia, musisz wdrożyć je ponownie we wszystkich obsługiwanych platformach (w tym mobilnych).
  • Poziom użytkownika obejmuje przechowywanie go w bazie danych aplikacji za pomocą systemu analitycznego po stronie serwera lub innych systemów po stronie serwera. Token będzie przechowywany po stronie serwera. Jeśli użytkownik zmieni używane urządzenie, wyczyści pamięć lokalną lub pliki cookie albo korzysta z przeglądania prywatnego lub w trybie incognito, zdarzenie konwersji zostanie przypisane po ponownym zalogowaniu. Gdy korzystasz ze śledzenia konwersji na poziomie użytkownika, w zależności od architektury Twojego systemu możesz spróbować wdrożyć to rozwiązanie raz po stronie serwera i ponownie używać go na wszystkich obsługiwanych platformach.

Zbieranie tokena rwg_token

Za każdym razem, gdy Google wyświetla link action_link podany przez Ciebie w plikach danych, adres URL jest zmodyfikowany tak, aby zawierał unikalny parametr zapytania: rwg_token. Wartość rwg_token jest zakodowanym ciągiem znaków zawierającym metadane dotyczące linku klikniętego przez użytkownika. Zapisz ten token i przekaż go z powrotem w ramach zdarzenia konwersji.

Na każdej stronie docelowej lub w punkcie wejścia do aplikacji musisz przeanalizować i zapisać wartość ustawioną dla parametru zapytania rwg_token. Wymagania dotyczące przechowywania tego parametru są opisane w kroku Trwanie dotyczące rwg_token.

Poniżej znajduje się przykład analizowania tego tokena pod kątem śledzenia na poziomie urządzenia za pomocą przeglądarki. Możesz też zebrać ten token po stronie serwera podczas odpowiadania na żądanie:

<script>
  var query = location.search.substring(1);
  var params = query.split('&');
  var rwgToken = undefined;
  for (var i = 0; i < params.length; ++i) {
    var pair = params[i].split('=');
    if (pair[0] == 'rwg_token') {
      rwgToken = decodeURIComponent(pair[1]);
      break;
    }
  }
</script>

Utrwalanie tokena rwg_token

Parametr adresu URL rwg_token, który zostanie dołączony do wszystkich podanych przez Ciebie linków do działań, będzie wymagany przez 30 dni. Wartość parametru rwg_token powinna być przechowywana i zwracana bez wprowadzania zmian.

Oprócz parametru rwg_token musisz zapisać tag merchant_id powiązany z linkiem do działania.

Jeśli z poprzedniej wizyty został zachowany istniejący token, należy zastąpić wcześniejsze rwg_token i merchant_id oraz zresetować 30-dniowy okres przechowywania.

Jeśli zachowujesz tę parę powyższą, możesz zapisać wartości na poziomie urządzenia lub użytkownika:

  • Na poziomie urządzenia można stosować pliki cookie przeglądarki, pamięć lokalną, pamięć lokalną aplikacji lub dowolną inną metodę, która pozwala zachować token przez 30 dni.
  • Poziom użytkownika obejmuje przechowywanie go w bazie danych aplikacji za pomocą systemu analitycznego po stronie serwera lub innych systemów po stronie serwera.

Poniżej znajduje się przykład śledzenia konwersji na poziomie urządzenia, które przechowuje te wartości w przeglądarce za pomocą własnego pliku cookie. W tym przykładzie zakładamy, że wartość tokena została przeanalizowana jako zmienna, jak w przykładzie powyżej. Aby skorzystać z tego przykładu, musisz zaktualizować domenę „rootdomain” do swojej domeny.

<script>
  if (typeof rwg_token !== 'undefined') {
    document.cookie =
    "_rwg_token=" + rwg_token + ";_merchant_id="+merchantid +";max-age=2592000;domain=rootdomain.com;path=/";
  }
</script>

Jeśli używasz śledzenia konwersji na poziomie użytkownika, parametry rwg_token + merchant_id powinny być przechowywane na serwerze i powiązane z użytkownikiem.

Wysyłanie danych o konwersjach

Gdy użytkownik zrealizuje transakcję, która jest powiązana z linkiem do działania w miejscu Google, musisz wysłać żądanie HTTP POST do punktu końcowego konwersji. Istnieją 2 punkty końcowe: jeden dla środowiska produkcyjnego i jeden dla środowiska piaskownicy.

  • Wersja produkcyjna: https://www.google.com/maps/conversion/collect
  • Piaskownica: https://www.google.com/maps/conversion/debug/collect

Treść posta powinna być obiektem zakodowanym w formacie JSON w formacie:

{
  "conversion_partner_id": <partnerId>,
  "rwg_token": <rwg_token_val>
  "merchant_changed": 1|2
}

Wartość merchant_changed służy do określenia, czy sprzedawca zmienił się ze początkowego przekierowania. Są 2 wartości, które można przekazywać

Wartość zmiany sprzedawcy Co musisz zrobić
1 Należy użyć tej wartości, gdy użytkownik opuścił witrynę pierwotnego sprzedawcy i dokonał zakupu na Twojej platformie u innego sprzedawcy.
2 Tej wartości należy użyć, gdy klient zrealizował transakcję za pośrednictwem pierwotnego podmiotu (sprzedawcy).

Zarówno w środowisku piaskownicy, jak i w środowisku produkcyjnym musisz podać prawidłowy token rwg_token podczas wysyłania zdarzenia konwersji. Do testowania używaj tego tokena testowego w obu środowiskach do czasu uruchomienia:

ADQ7psRE9YyDSVR6YpfD-fYdxoFYVKS1xeTvXdSxqF8a3bnk0W62eMEnUjoNPwjhNHG0elwBnM1awTjr9vXET8yOowCeuODjwA==

Pełny przykład śledzenia konwersji na poziomie urządzenia (za pomocą pliku cookie na urządzeniu użytkownika) w JavaScripcie, by dowiedzieć się, jak utworzyć żądanie publikacji, znajdziesz poniżej:

const partnerId = XXXXXXXXXX;

const endpoint = `https://www.google.com/maps/conversion/collect`;

const rwgTokenCookie = document.cookie
  .split('; ')
  .find(row => row.startsWith('_rwg_token='));

if (typeof rwgTokenCookie !== 'undefined') {
  const rwgTokenVal = rwgTokenCookie.split('=')[1];
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: rwgTokenVal,
      Merchant_changed: merchantChanged
    })
  });
}

Jeśli korzystasz ze śledzenia konwersji na poziomie użytkownika, musisz pobrać token powiązany z użytkownikiem (niezależnie od platformy, na której się on znajduje) z mechanizmu przechowywania danych po stronie serwera i wysłać token za pomocą tych samych punktów końcowych w środowisku produkcyjnym lub w piaskownicy.

Wymagania dotyczące atrybucji konwersji

Wymaganym przez Google standardem atrybucji konwersji jest 30-dniowe okno atrybucji w przypadku każdej interakcji z linkiem do danego miejsca w dowolnym sklepie.

Oznacza ono, że Google oczekuje, że zdarzenie konwersji będzie wysyłane w każdym z tych scenariuszy:

  • Użytkownik klika link do działania i w ramach tej samej sesji składa zamówienie tego samego sprzedawcy(wartość zmiany sprzedawcy = 2).
  • Użytkownik klika link do działania związanego z danym miejscem, a potem w ciągu 30 dni wraca z innego kanału, aby złożyć zamówienie tego samego sprzedawcy. ( Wartość zmiany sprzedawcy = 2 )
  • Użytkownik klika link działania związanego z miejscem, a potem składa zamówienie w innym sklepie w ramach tej samej lub innej sesji w ciągu 30 dni. ( Wartość zmiany sprzedawcy = 1 )

Google oczekuje też, że zdarzenia konwersji będą wysyłane ze wszystkich miejsc, na które użytkownik może wejść po kliknięciu linku do działania związanego z danym miejscem. W tym:

  • Aplikacje internetowe na komputery lub urządzenia mobilne
  • aplikacji mobilnych – za pomocą precyzyjnego linku lub zamiaru aplikacji zarejestrowanej w Twojej domenie.

Jeśli token jest przechowywany na poziomie użytkownika (zobacz instrukcje dotyczące zachowywania tokena), zwykle należy podać atrybucję na różnych urządzeniach. Oznacza to, że użytkownik, który klika na komputerze link do działania, a potem realizuje transakcję na urządzeniu mobilnym (używając tego samego konta użytkownika), powinno wywołać zdarzenie konwersji.

Jeśli token jest przechowywany wyłącznie na poziomie urządzenia, np. w plikach cookie w przeglądarce, nie ma potrzeby podawania atrybucji na różnych urządzeniach. W takim przypadku na każdym urządzeniu zostanie zachowany osobny token, jeśli użytkownik kliknie link działania na tym urządzeniu. Każde urządzenie będzie podlegało regułom atrybucji z osobna.