Расширенная электронная торговля (Enhanced Ecommerce) Google Analytics - это возможность отслеживать действия пользователя на сайте, начиная от просмотра товара, заканчивая его заказом на сайте, отследить цепочку взаимодействий на уровне больших данных, сделать системные выводы и принять решения о структурных изменениях. Самая продвинутая аналитика для интернет-магазинов.
Сейчас понятия расширенная электронная торговля уже нет. Этот термин пришел к нам из Google Analytics Universal, но мы его решили оставить, так как старая версия аналитики была для многих классической в понимании и алгоритмах.
Настройка расширенной электронной торговли Google Analytics 4
Расширенная электронная торговля в Google Analytics 4 по своей сути ничем не отличается от версии Universal Analytics, только здесь нет необходимости отдельно включать опцию расширенной электронной торговли. Все события в версии GA4 можно сразу настроить по умолчанию, без доработок в текущем представлении.
Настройка осуществляется 2-я способами:
- через gtag (данные отправляются напрямую в Google Analytics 4);
- через Data Layer (данные отправляются в библиотеку Data Layer, из которой, через обработчик события в Tag Manager попадают в Google Analytics 4).
Мы с Вами будем рассматривать 2-й способ, так как практически все сайты работают с Tag Manager.
В Google Analytics 4 у каждого события есть уникальное название, которое рекомендуется системой. Сделать все через один event, как в версии Universal, не получится.
Итак, пройдемся по событиям.
Просмотры и показы товаров или позиций из списка
Событие: view_item_list.
Размещение: любой список товаров.
Описание: показ товаров в каталоге или в результате поиска конкретного товара, либо при открытии категории.
Сработка события: в момент показа товара в видимой области.
// Measure product views / impressions
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "view_item_list",
ecommerce: {
items: [
{
item_name: "Triblend Android T-Shirt", // Name or ID is required.
item_id: "12345",
price: 15.25,
item_brand: "Google",
item_category: "Apparel", //// Главная категория
item_category2: "Mens", //// Подкатегория
item_category3: "Shirts", //// Подподкатегория
item_category4: "Tshirts", //// Подподподкатегория
item_variant: "Gray", /// /Вариант
item_list_name: "Search Results", /////// Здесь задается место (список), где показывается товар (главная страница, категория, результат поиска, фильтр товаров)
index: 1, //// Позиция товара в списке
quantity: 1
},
{
item_name: "Donut Friday Scented T-Shirt",
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_category2: "Mens",
item_category3: "Shirts",
item_category4: "Tshirts",
item_variant: "Black",
item_list_name: "Search Results",
index: 2,
}]
}
});
Клики по товару из списка позиций
Событие: select_item.
Размещение: место, откуда был совершен клик по товару.
Описание: передача данных о кликах и переходах в товар.
Сработка события: в момент клика на карточку товара.
/**
* Call this function when a user clicks on a product link.
* @param {Object} productObj An object that represents the product that is clicked.
*/
function onProductClick(productObj) {
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "select_item",
ecommerce: {
items: [{
item_name: productObj.name, // Name or ID is required.
item_id: productObj.id,
item_brand: productObj.brand,
item_category: productObj.category,
item_category2: productObj.category_2,
item_category3: productObj.category_3,
item_category4: productObj.category_4,
item_variant: productObj.variant,
item_list_name: productObj.list_name, /////// Здесь задается место (список) откуда был клик по товару (категория, результат поиск, фильтр)
index: productObj.index, ///// Позиция товара в списке
price: productObj.price
}]
}
});
}
Просмотры информации о товаре или позиции
Событие: view_item.
Размещение: карточка товара.
Описание: просмотр товара.
Сработка события: в момент просмотра фото или характеристик товара.
// Measure a view of product details. This example assumes the detail view occurs on pageload,
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "view_item",
ecommerce: {
items: [{
item_name: "Donut Friday Scented T-Shirt", // Name or ID is required.
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_category2: "Mens",
item_category3: "Shirts",
item_category4: "Tshirts",
item_variant: "Black",
quantity: 1
}]
}
});
Добавление товара в корзину
Событие: add_to_cart.
Размещение: карточка товара или список товаров, где есть кнопка купить.
Описание: добавление товара в корзину.
Сработка события: в момент клика на кнопку купить.
// Measure when a product is added to a shopping cart
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "add_to_cart",
ecommerce: {
items: [{
item_name: "Donut Friday Scented T-Shirt", // Name or ID is required.
item_id: "67890",
price: "33.75",
item_brand: "Google",
item_category: "Apparel",
item_category2: "Mens",
item_category3: "Shirts",
item_category4: "Tshirts",
item_variant: "Black",
item_list_name: "Search Results", //// Включаем этот параметр если нажимают “купить” из списка товаров
index: 1, //// Позиция в списке, включаем этот параметр если нажимают “купить” из списка товаров
}]
}
});
Удаление товара из корзины
Событие: remove_from_cart.
Размещение: корзина.
Описание: удаление товаров из корзины.
Сработка события: в момент нажатия на крестик в корзине или кнопку “удалить” напротив товара.
// Measure the removal of a product from a shopping cart.
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "remove_from_cart",
ecommerce: {
items: [{
item_name: "Donut Friday Scented T-Shirt", // Name or ID is required.
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_variant: "Black",
}]
}
});
Оформление покупки
Событие: begin_checkout.
Размещение: корзина.
Описание: отправка информации о начале оформления заказа.
Сработка события: в момент, когда пользователь посещает корзину для оформления заказа.
/**
* A function to handle a click on a checkout button.
*/
function onCheckout() {
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "begin_checkout",
ecommerce: {
items: [{
item_name: "Donut Friday Scented T-Shirt", // Name or ID is required.
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_category2: "Mens",
item_category3: "Shirts",
item_category4: "Tshirts",
item_variant: "Black",
quantity: 1
}]
}
});
}
Если оформление в корзине проходит в несколько этапов, то в Google Analytics 4 это делится на следующие дополнительные events:
- add_payment_info (добавление информации об оплате);
- add_shipping_info (добавление информации о доставке).
Покупка
Событие: purchase.
Размещение: страница благодарности.
Описание: отправка информации о заказе.
Сработка события: в момент, когда заказ принят.
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "purchase",
ecommerce: {
transaction_id: "T12345",
affiliation: "Online Store",
value: "59.89",
tax: "4.90",
shipping: "5.99",
currency: "EUR",
coupon: "SUMMER_SALE",
items: [{
item_name: "Triblend Android T-Shirt",
item_id: "12345",
price: "15.25",
item_brand: "Google",
item_category: "Apparel",
item_variant: "Gray",
quantity: 1
}, {
item_name: "Donut Friday Scented T-Shirt",
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_variant: "Black",
quantity: 1
}]
}
});
Выше - это отправка данных по протоколу Data Layer. Это половина дела. Идем дальше.
Что необходимо сделать в Tag Manager для расширенной электронной торговли Google Analytics 4?
- Создать теги для каждого из событий;
- Для всех событий, кроме purchase, задать параметр “items” со значением ecommerce.items
- Для purchase дополнительно прошиваются все параметры по заказу.
Теги в TGM будут выглядеть примерно так:

Как выглядят отчеты расширенной электронной торговли в GA4?
Как таковых, готовых отчетов в системе пока 1-2. Кастомизированные пока работают с серьезными ошибками, поэтому не приводим их в пример, чтобы не тратить ваше время.
Один из готовых отчетов “путь к покупке” выглядит так:

За более подробной информацией, обращайтесь по контактам агентства. Кроме того, рекомендуем к просмотру видео о пользе расширенной электронной торговли в продвижении интернет-магазинов.