После регистрации аккаунта Google Analytics 4 нужно настроить отслеживание электронной торговли.
Если у вас такая настройка уже проведена, то можно перейти к пункту «Интеграция Google Analytics 4 с системой».
О том, как настроить отслеживание электронной торговли читайте в справке Google.
Получение кода отслеживания
Код отслеживания Google Analytics 4 — это скрипт на языке JavaScript, который запускается браузером посетителя сайта. С помощью кода отслеживания, данные о действияx посетителя на сайте будут отправляться в Google Analytics.
Как получить код отслеживания читайте в справке Google.
Скопируйте с Google Analytics 4 код отслеживания целиком. Вместо G -XXXXXXXXX
будет отображаться действительный идентификатор отслеживания.
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G -XXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G -XXXXXXXXX');
</script>
Настройки на сайте
Далее, следует добавить код отслеживания на страницы сайта, скопировав его на все страницы сайта перед закрывающим тегом </head>
.
Для того, чтобы в Google Analytics попадала информация о совершенных заказах, нужно на странице извещения пользователя о завершении заказа модифицировать код отслеживания, добавив в него информацию о заказе.
Модифицировать код нужно только на страницах, которые пользователь видит после завершения/подтверждения заказа. Таким образом, модифицированный код должен отработать только один раз для каждого нового заказа.
В отличие от модифицированного, обычный код отслеживания должен выполняться при каждом просмотре страницы, где код добавлен.
Для модуля Google Analytics 4 необходимо модифицировать код отслеживания, отправляя данные о каждом заказе:
<script type="text/javascript">
gtag('event', 'purchase', {
"transaction_id": '1234', // ID транзакции
"affiliation": 'example.com', // Название магазина
"value": 23.07, // Ценность события
"tax": 1.24, // Налог
"shipping": 0, // Стоимость доставки
"items": // Массив с товарами
[{
"id": "1234", // Уникальный идентификатор товара
"name": "Mouse Logitech", // Название товара
"category": "Wireless", // Категория товара
"quantity": 2, // Количество единиц товара
"price": '750' // Покупная цена товара
}]
});
</script>
В этом коде можно указывать поля в любом порядке. Обязательным для корректной работы интеграции является только ID транзакции. Названия полей должны быть заданы маленькими латинскими буквами, например, category
, а не Category
, и не CATEGORY
.
С полным списком возможных полей можно ознакомиться в официальной документации.
Также при отправке данных заказа нужно записать уникальный clientId посетителя в специальный параметр, созданный на шаге 2. Для этого добавьте следующий код:
function get_ga_clientid() {
var cookie = {};
document.cookie.split(';').forEach(function(el) {
var splitCookie = el.split('=');
var key = splitCookie[0].trim();
var value = splitCookie[1];
cookie[key] = value;
});
if ('undefined' === typeof cookie['_ga']) {return ''};
return cookie['_ga'].substring(6);
}
gtag('set', {'analyticsCookieId': get_ga_clientid()});
Важно!
Код, отправляющий значение clientId, должен выполняться только при отправке данных заказа, а не на каждой странице сайта.
При отправке транзакции в Google Analytics могут возникать сложности с некоторыми заказами (например, большое количество товарных позиций). Для расширенной электронной торговли все данные о товарах встроены в один запрос к Google Analytics (в случае, если не имеется специальной реализации запроса). Максимальный размер HTTP-запроса, поддерживаемый большинством браузеров, составляет 8192 байта, и поэтому обращения длиннее этого размера не обрабатываются Google Analytics.
Подробнее в документации Google.