Выполнение
Краткое содержание
Реализация отслеживания конверсий состоит из трех частей:
- Сбор
rwg_token
иmerchant_id
с целевой страницы/точки входа в приложение. - Сохранение
rwg_token
иmerchant_id
для соответствующего окна атрибуции. - Сравните сохраненные значения
merchant_id
иmerchant_id
во время конверсии (бронирование завершено). - Отправка события конверсии во время конверсии (бронирование завершено).
Эта реализация отслеживания конверсий не требует использования Google Analytics или любого другого стороннего JavaScript.
Прежде чем приступить к реализации отслеживания конверсий, вам следует решить, будете ли вы отслеживать конверсии на уровне устройства или на уровне пользователя:
- Уровень устройства включает использование файлов cookie браузера, локального хранилища, локального хранилища приложения или любого другого метода, позволяющего сохранять токен в течение 30-дневного окна атрибуции. Поскольку токен будет храниться локально на устройстве пользователя, если пользователь меняет используемое устройство, очищает локальное хранилище или файлы cookie или использует приватный режим просмотра или режим инкогнито, событие конверсии может быть неправильно атрибутировано. При использовании отслеживания конверсий на уровне устройства вам необходимо повторно реализовать его на всех поддерживаемых платформах (включая мобильные устройства).
- Уровень пользователя включает сохранение его в базе данных вашего приложения через серверную систему аналитики или другие серверные системы. Поскольку токен будет храниться на стороне сервера, если пользователь меняет используемое устройство, очищает свое локальное хранилище или файлы cookie или использует приватный просмотр или режим инкогнито, событие конверсии все равно будет атрибутировано после того, как пользователь снова войдет в систему. . При использовании отслеживания конверсий на уровне пользователя в зависимости от архитектуры вашей системы вы можете реализовать это один раз на стороне сервера и повторно использовать его на всех поддерживаемых платформах.
Сбор rwg_token
Каждый раз, когда Google отображает ссылку action_link, которую вы предоставили через каналы, этот URL-адрес изменяется и включает уникальный параметр запроса: rwg_token
. Значение rwg_token
— это закодированная строка, которая содержит некоторые метаданные о ссылке, по которой щелкнул пользователь, но не содержит пользовательских данных . Вам следует сохранить этот токен и передать его обратно как часть события преобразования.
На каждой целевой странице/точке входа в приложение вы должны проанализировать значение, установленное для параметра запроса rwg_token
, и сохранить его. Требования к хранению этого параметра описаны на шаге «Сохранение rwg_token
.
Ниже приведен пример того, как этот токен можно проанализировать для отслеживания на уровне устройства через браузер. Альтернативно вы можете получить этот токен на стороне сервера при ответе на запрос:
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;
}
}
Сбор merchant_id
Если вы реализуете логику отслеживания конверсий во внешнем интерфейсе, на целевой странице необходимо реализовать собственный скрипт, который будет находить и фиксировать merchant_id
. Обычно merchant_id
может уже присутствовать на целевой странице или в URL-адресе, поэтому вы можете получить его оттуда. Если нет, вы должны найти способ разместить его где-нибудь, чтобы его можно было захватить, что, вероятно, повлечет за собой изменения в серверной части.
Если вы реализуете логику отслеживания конверсий на серверной стороне, вы можете найти merchant_id
рядом с данными, которые запрашивают вашу внутреннюю систему для создания внешней страницы.
Этот merchant_id
должен совпадать с тем, который вы предоставили Google в своем фиде.
Сохранение rwg_token
и merchant_id
Вам необходимо будет сохранить параметр URL- rwg_token
, который будет добавлен ко всем предоставленным вами ссылкам на действия, в течение общего периода 30 дней. Значение rwg_token
должно быть сохранено и возвращено без каких-либо изменений.
Наряду с rwg_token
вам необходимо будет сохранить merchant_id
связанный со ссылкой на действие.
Если существует существующий токен, сохранившийся после предыдущего посещения, более ранние rwg_token
и merchant_id
должны быть заменены, а 30-дневное окно хранения должно быть сброшено.
При сохранении вышеуказанной пары вы можете сохранить значения либо на уровне устройства, либо на уровне пользователя:
- Уровень устройства включает использование файлов cookie браузера, локального хранилища, локального хранилища приложения или любого другого метода, позволяющего сохранять токен в течение 30-дневного окна атрибуции.
- Уровень пользователя включает сохранение его в базе данных вашего приложения через серверную систему аналитики или другие серверные системы.
Ниже приведен пример отслеживания конверсий на уровне устройства, в котором эти значения сохраняются в веб-браузере с использованием собственных файлов cookie. В этом примере предполагается, что вы преобразовали значение токена в переменную, как в примере выше. Чтобы использовать этот пример, вам необходимо обновить rootdomain.com
до своего домена.
if (typeof rwg_token !== 'undefined') {
document.cookie =
"_rwg_token=" + rwg_token + ";_merchant_id=" + merchantid + ";max-age=2592000;domain=rootdomain.com;path=/";
}
При использовании отслеживания конверсий на уровне пользователя rwg_token
+ merchant_id
должны храниться на сервере и связываться с пользователем.
Отправка данных о конверсиях
Когда пользователь завершает транзакцию, связанную со ссылкой Google Place Action, вы должны отправить HTTP-запрос POST в конечную точку конверсии. Существует две конечные точки: одна для производственной среды и одна для изолированной среды.
- Производство: https://www.google.com/maps/conversion/collect
- Песочница: https://www.google.com/maps/conversion/debug/collect
Тело сообщения должно представлять собой объект в формате JSON в формате:
{
"conversion_partner_id": <partnerId>,
"rwg_token": <rwg_token_val>,
"merchant_changed": 1|2
}
Пример ( без изменений продавец с тестовым токеном для партнера 20123456 ):
{
"conversion_partner_id": 20123456,
"rwg_token": "AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==",
"merchant_changed": 2
}
Значение Merchant_changed используется для определения того, изменился ли продавец по сравнению с первоначальным продавцом перенаправления. Есть два значения, которые можно передать
Изменение стоимости продавца | Требование |
---|---|
1 | Это значение следует использовать, когда пользователь покинул веб-сайт исходного продавца и совершил покупку через вашу платформу у другого продавца. |
2 | Это значение следует использовать, когда клиент завершил транзакцию через исходную организацию (продавца). |
Как в тестовой, так и в производственной среде вам необходимо предоставить действительный rwg_token
при отправке события преобразования. В целях тестирования используйте следующий тестовый токен в обеих средах до запуска:
AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==
Для тестирования в песочнице вам необходимо вручную добавить следующий параметр URL-адреса к ссылкам песочницы:
rwg_token=AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ%3D%3D
Полный пример отслеживания конверсий на уровне устройства (с использованием файла cookie на устройстве пользователя) в JavaScript, показывающий, как сделать этот запрос на публикацию, приведен ниже:
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
})
});
}
При использовании отслеживания конверсий на уровне пользователя вам следует получить токен, связанный с пользователем (независимо от того, на какой поверхности он находится), из механизма хранения на стороне сервера и отправить токен, используя те же конечные точки рабочей среды или песочницы.
Требования к атрибуции конверсий
Обязательным стандартом Google для атрибуции конверсий является 30-дневный период атрибуции для любого взаимодействия со ссылкой на место в любом магазине.
Это окно атрибуции означает, что Google ожидает отправки события-конверсии в любом из следующих сценариев:
- Пользователь переходит по ссылке «Разместить действие» и размещает заказ у того же продавца в одном сеансе. (Значение изменения продавца = 2)
- Пользователь переходит по ссылке «Разместить действие», а затем возвращается из другого канала в течение 30 дней, чтобы разместить заказ у того же продавца. (Значение изменения продавца = 2)
- Пользователь переходит по ссылке «Разместить действие», а затем размещает заказ в другом магазине либо в рамках того же сеанса, либо в другом сеансе в течение 30-дневного периода. (Значение изменения продавца = 1)
Кроме того, Google ожидает, что события конверсии будут отправляться со всех поверхностей, на которые пользователь может попасть по ссылке на действие места. Включая:
- Настольные или мобильные веб-приложения
- Мобильные приложения через глубокую ссылку на приложение или зарегистрированное намерение приложения для вашего домена.
Если токен хранится на уровне пользователя (см. раздел «Сохранение токена»), ожидается, что вы обеспечите атрибуцию между устройствами. То есть пользователь, который переходит по ссылке действия с рабочего стола, а затем завершает транзакцию на мобильном устройстве (используя ту же учетную запись пользователя), должен инициировать событие конверсии.
Если токен хранится исключительно на уровне устройства, например в файлах cookie браузера, от вас не требуется предоставления атрибуции между устройствами. В этом случае на каждом устройстве будет сохраняться отдельный токен, если пользователь перешел по ссылке действия на этом устройстве, и каждое устройство будет следовать правилам атрибуции отдельно.