Обычные цели показывают, сколько заказов было. Электронная коммерция в Метрике показывает, какие товары купили, на какую сумму, сколько стоил каждый заказ и какие категории пользуются спросом у рекламного трафика. Для интернет-магазина это разница между «реклама работает» и «реклама работает на конкретные товары с маржой».


Что такое электронная коммерция в Метрике

Электронная коммерция (ecommerce) - это механизм передачи данных о покупках из интернет-магазина в Яндекс Метрику. С её помощью Метрика получает информацию о:

  • Просмотрах карточек товаров
  • Добавлениях в корзину
  • Начале оформления заказа
  • Завершённых покупках: товары, количество, цены, доход

После настройки в Метрике появляются специальные отчёты в разделе «Электронная коммерция»: - Обзор электронной коммерции - Товары - Транзакции - Продажи (сегменты)


Как работает передача данных

Данные передаются через слой данных (dataLayer). Это массив JavaScript, который сайт заполняет при определённых событиях, а счётчик Метрики его считывает.

Перед установкой убедитесь, что в коде счётчика включена опция ecommerce:

ym(XXXXXXXX, 'init', {
    clickmap: true,
    trackLinks: true,
    accurateTrackBounce: true,
    webvisor: true,
    ecommerce: "dataLayer"
});

Параметр ecommerce: "dataLayer" указывает Метрике, из какого массива брать данные. Можно использовать другое имя, но dataLayer - стандарт.


Структура событий ecommerce

Просмотр товара (detail)

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
    ecommerce: {
        detail: {
            products: [{
                id: 'SKU-123',
                name: 'Кресло офисное Herman Miller',
                price: 45000,
                brand: 'Herman Miller',
                category: 'Мебель/Кресла',
                position: 1
            }]
        }
    }
});

Добавление в корзину (add)

window.dataLayer.push({
    ecommerce: {
        add: {
            products: [{
                id: 'SKU-123',
                name: 'Кресло офисное Herman Miller',
                price: 45000,
                quantity: 1
            }]
        }
    }
});

Покупка (purchase)

Самое важное событие - без него отчёт по транзакциям останется пустым:

window.dataLayer.push({
    ecommerce: {
        purchase: {
            actionField: {
                id: 'ORDER-78542',
                revenue: 47500,
                tax: 7917,
                shipping: 500,
                coupon: 'PROMO10'
            },
            products: [{
                id: 'SKU-123',
                name: 'Кресло офисное Herman Miller',
                price: 45000,
                quantity: 1
            }, {
                id: 'SKU-456',
                name: 'Подставка для ноутбука',
                price: 2500,
                quantity: 1
            }]
        }
    }
});

Событие purchase размещается на странице «Спасибо за заказ» или вызывается после успешного ответа API оформления заказа.


Настройка через популярные CMS

1C-Битрикс

В Битрикс ecommerce встроено в модуль «Интернет-магазин». Включите его в настройках модуля «Яндекс.Метрика». Битрикс автоматически передаёт события просмотра, корзины и покупки.

WooCommerce (WordPress)

Используйте плагин «WooCommerce Google Analytics Integration» или специализированный плагин для Яндекс Метрики. Или настройте вручную через functions.php - данные заказа доступны через хуки WooCommerce.

Tilda

В Tilda ecommerce настраивается через параметры магазина. Зайдите в Настройки сайта - Аналитика - включите «Передавать данные покупок в Яндекс.Метрику».

Custom (произвольный сайт)

Разместите push в dataLayer на соответствующих страницах. Для страницы заказа данные берутся из серверного рендеринга - PHP/Python/Node.js передаёт переменные в шаблон страницы, а JavaScript записывает их в dataLayer.


Отчёты электронной коммерции в Метрике

Обзор

Показывает общий доход, количество транзакций, средний чек и коэффициент транзакций за выбранный период. Сравните периоды - до и после изменения кампаний.

Товары

Разбивка продаж по конкретным позициям. Вы видите, какой товар продаётся лучше всего через рекламный канал. Фильтруйте по источнику трафика - сегмент «Директ» - и сравнивайте с органическим поиском.

Транзакции

Каждый заказ отдельной строкой с ID, суммой, датой и составом. Полезно для проверки - совпадает ли число транзакций в Метрике с числом заказов в CRM.


Связь с Яндекс Директом

Когда ecommerce настроена и счётчик связан с Директом, вы можете:

  1. Видеть доход по каждой кампании в Директе - добавьте столбец «Доход» в мастер отчётов
  2. Анализировать ROAS (возврат на рекламные расходы) по кампаниям и группам
  3. Запускать автостратегию «Целевая доля рекламных расходов» - Директ оптимизирует ставки для достижения заданного ROAS

Например: кампания на бренд «кресло офисное» стоит 50 000 рублей в месяц, приносит заказов на 400 000 рублей. ROAS = 800%. Кампания на «купить кресло недорого» стоит 80 000 рублей, приносит 150 000 рублей. ROAS = 188%. Без ecommerce вы не знаете этих цифр и тратите бюджет на убыточную кампанию.


Типичные ошибки при настройке ecommerce

Ошибка Последствие Решение
Событие purchase срабатывает при каждом обновлении страницы Задвоение транзакций Использовать флаг «уже отправлено» в sessionStorage
Не передаётся ID транзакции Дубли не отфильтрировать Обязательно заполнять id в actionField
Цена без НДС в одном заказе и с НДС в другом Некорректная статистика дохода Унифицировать: всегда передавать цену с НДС
dataLayer не инициализирован до кода счётчика Данные теряются Инициализировать window.dataLayer = [] выше кода счётчика

Заключение

Электронная коммерция в Метрике превращает рекламную аналитику из «сколько кликов» в «сколько рублей заработали». Настройка требует участия разработчика (3-8 часов работы в зависимости от CMS), но окупается в первый же месяц - вы увидите, какие кампании и ключевые слова реально прибыльны, а какие только создают видимость работы.