Обычная цель «страница спасибо» говорит: «было 47 заказов». Электронная коммерция в Метрике говорит: «было 47 заказов на общую сумму 284 000 рублей, из них 19 заказов - кроссовки Nike Air Max, средний чек 6 040 рублей, и 12 из этих заказов пришли из рекламы по запросу "купить кроссовки найк"». Разница принципиальная. Разберём, как подключить электронную коммерцию и что с ней делать.


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

Электронная коммерция - это набор стандартизированных событий, которые передаются в Метрику при действиях пользователя с товарами: просмотр карточки, добавление в корзину, оформление и оплата заказа.

Метрика поддерживает два формата передачи данных: - dataLayer - стандарт Google, который Метрика научилась принимать. Если на сайте уже настроена электронная коммерция для Google Analytics, переключиться на Метрику будет проще - Нативный формат Яндекса - через объект window.dataLayer с событиями в формате Яндекса

На практике для новых проектов без подключённой аналитики проще использовать нативный формат Яндекса. Если сайт уже работает с GA4, используйте режим совместимости с Google.


Включение модуля электронной коммерции

Первый шаг - активация модуля в настройках счётчика:

  1. Зайдите в Метрику, выберите счётчик
  2. «Настройки» - вкладка «Электронная коммерция»
  3. Включите переключатель
  4. Укажите имя контейнера данных - по умолчанию dataLayer
  5. Сохраните настройки

Это только активирует приём данных. Сами данные нужно передавать через JavaScript-код на сайте - об этом ниже.


Какие события нужно передавать

Яндекс Метрика поддерживает следующие события электронной коммерции:

Событие Когда срабатывает Что передаёт
detail Просмотр карточки товара ID, название, категория, цена
add Добавление в корзину ID, название, цена, количество
remove Удаление из корзины ID, название, количество
purchase Оформление заказа Номер заказа, список товаров, общая сумма

Для базовой аналитики достаточно add и purchase. Но detail позволяет анализировать конверсию карточки товара - какой процент просмотров приводит к добавлению в корзину.


Пример кода для события «Покупка»

Самое важное событие - purchase. Оно должно срабатывать на странице успешного оформления заказа.

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
    "ecommerce": {
        "currencyCode": "RUB",
        "purchase": {
            "actionField": {
                "id": "12345",
                "revenue": "8500"
            },
            "products": [
                {
                    "id": "SKU-789",
                    "name": "Кроссовки Nike Air Max 270",
                    "price": "7500",
                    "brand": "Nike",
                    "category": "Обувь/Кроссовки",
                    "quantity": 1
                },
                {
                    "id": "SKU-234",
                    "name": "Носки спортивные",
                    "price": "500",
                    "brand": "Adidas",
                    "category": "Аксессуары",
                    "quantity": 2
                }
            ]
        }
    }
});

Ключевые поля: - id в actionField - уникальный номер заказа (из вашей CMS) - revenue - итоговая сумма заказа (то, что заплатил покупатель, включая доставку) - id в products - SKU товара - price - цена единицы товара

Этот код разработчик размещает на странице «Спасибо за заказ». Важно: данные о заказе должны подставляться динамически из бэкенда, а не быть статическими в коде.


Что вы получаете в отчётах

После настройки электронной коммерции в Метрике появляется раздел «Электронная торговля» в меню отчётов.

Отчёт «Заказы»

Список всех зафиксированных заказов с суммами, датами, товарами. Можно применить сегмент по источнику трафика и увидеть только заказы из Директа.

Отчёт «Товары»

Самый ценный для оптимизации рекламы. Показывает: - Какие товары покупают больше всего - Средний чек по категориям - Выручку по товарам

Пример применения: рекламная кампания на категорию «ноутбуки» тратит 50 000 рублей в месяц. Отчёт по товарам показывает: 80% продаж - модели дороже 60 000 рублей. Вывод: перераспределить бюджет на ключевые слова с упоминанием конкретных дорогих моделей, отключить общие запросы.

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

Когда электронная коммерция настроена, в отчёте «Директ, Сводка» появляются столбцы: - Доход - сумма заказов, пришедших из конкретной кампании или ключевого слова - ROAS - возврат рекламных затрат (доход / расход × 100%) - Средний чек - средняя сумма заказа по источнику

Это позволяет сравнивать кампании не по стоимости конверсии, а по ROAS. Две кампании могут иметь одинаковую стоимость конверсии в 1 500 рублей, но разный средний чек: 4 000 и 12 000 рублей. ROAS у второй в три раза выше.


Интеграция с популярными CMS

1C-Битрикс

В Битриксе есть встроенный модуль Яндекс Метрики. В настройках модуля можно включить отправку событий электронной коммерции без ручного написания кода. Проверьте настройки в разделе «Маркетинг» - «Аналитика» - «Яндекс.Метрика».

OpenCart / OcStore

Есть готовые модули для передачи данных в Метрику. Стоимость модулей - 1500-3000 рублей, но они закрывают задачу без разработки.

WooCommerce (WordPress)

Плагины типа «WooCommerce + Яндекс Метрика» передают события покупок. Если используете GTM, можно настроить через него - это даёт больше гибкости.

Самописные сайты

Разработчик добавляет код в шаблон страницы подтверждения заказа. Данные заказа подтягиваются из базы данных через серверный код (PHP, Python и т.д.) и выводятся в JavaScript-переменные перед вызовом dataLayer.push().


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

Фиксируют сумму до скидок. Если покупатель использовал промокод и получил скидку 20%, в параметр revenue нужно передавать финальную сумму - то, что он заплатил. Иначе ROAS будет завышен.

Не передают все товары из заказа. Если в заказе 5 товаров, а в событии purchase передаётся только первый - статистика по товарам будет некорректной.

Дублируют событие покупки. Если страница «Спасибо» открывается несколько раз (пользователь нажал F5 или вернулся на неё) - событие может задублироваться. Решение: сохранять флаг об отправке события в localStorage и не отправлять повторно.

Передают тестовые данные в продакшн-счётчик. При тестировании на staging-окружении убедитесь, что используется тестовый счётчик, а не боевой.

Не проверяют работу после обновления сайта. После каждого значительного обновления CMS или шаблона проверяйте, что электронная коммерция продолжает работать - коды легко теряются при апдейтах.


Проверка корректности данных

Чтобы убедиться, что всё работает:

  1. Откройте вкладку «Электронная коммерция» в Метрике - если данные есть, отображается сводка по заказам
  2. Сделайте тестовый заказ на сайте (можно через режим тестирования CMS с суммой 1 рубль)
  3. В Метрике в разделе «Онлайн» посмотрите свой визит - в нём должно быть событие ecommerce
  4. Через 1-2 часа заказ должен появиться в отчёте «Заказы»

Инструмент для диагностики: расширение Яндекс.Метрика для браузера или Яндекс Tag Assistant показывает в консоли браузера все события, которые отправляются на счётчик. Это самый быстрый способ проверить, что событие сформировано правильно.


Заключение

Электронная коммерция в Метрике - это переход от управления рекламой «по кликам» к управлению «по деньгам». Вы начинаете видеть не просто «из этой кампании пришли покупатели», а «из этой кампании пришли покупатели на 180 000 рублей при расходе 24 000, то есть ROAS 750%».

Настройка занимает от нескольких часов (на готовых CMS) до нескольких дней (на самописных системах). Но после настройки принципы оптимизации рекламы меняются полностью: отключаются кампании с низким ROAS, масштабируются те, что приносят максимальную выручку, а бюджет перераспределяется в сторону товаров с высоким средним чеком.