Настройка электронной торговли (e-commerce) Google Analytics в Google Tag Manager

Google Analytics
Google Tag Manager
Бесплатная версия онлайн курса по Google Tag Manager

7 уроков, более 2 часов обучающих видео материалов. Вы можете начать изучение прямо сейчас!
Более 600 человек уже изучают этот вариант курса

Обратите внимание, что для настройки отслеживания электронной торговли с помощью Google Tag Manager понадобится внесение изменений в исходный код страниц сайта, которые завершают процесс оформления покупки. Без этого не обойтись.

Приступим к настройке. Советую начать с проверки настроек представлений, с которыми вы будете работать для анализа собранной информации. Перейдите в Google Analytics в режим администратора и выберите нужное представление из списка, после чего выберите пункт меню Настройки представления:

Настройки представления Google Analytics

Настройки представления Google Analytics

Затем в нижней части страницы найдите блок Отслеживание электронной торговли и включите отслеживание переведя переключатель в положение ВКЛ:

Включение отслеживания электронной торговли в Google Analytics

Включение отслеживания электронной торговли в Google Analytics

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

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

Приступаем к настройке e-commerce или электронной торговли в Google Tag Manager.

Для того, чтобы в Google Tag Manager попали сведения о выполненной покупке необходимо использовать уровень данных или dataLayer (что такое dataLayer?) и определенную структуру для передачи сведений.

Предположим, наша страница завершения покупки называется thanks.html. На ней необходимо разместить следующий код на JavaScript передающий данные о покупке в Googlе Tag Manager:

Важно! Этот код должен быть размещен до загрузки контейнера Google Tag Manager:

Разберем параметры электронной торговли передаваемые в Google Tag Manager.

Фрагмент приведенный выше взят из документации на русском языке по Google Tag Manager. На момент написания этого материала в ней имеются ошибки в переводе, по этой причине прокомментирую код:

  • transactionId – идентификатор транзакции *;
  • transactionAffiliation – название магазина где была осуществлена продажа;
  • transactionTotal – общая сумма транзакции *;
  • transactionTax – сумма налога;
  • transactionShipping – стоимость доставки;
  • transactionProducts – описывает товары в транзакции
    • sku – артикул товара *;
    • name – название товара *;
    • category – категория, тип или вид товара;
    • price – стоимость *;
    • quantity – количество *.

* отмечены обязательные позиции.

Несколько слов об обязательных полях. Если сравнить стандартные функции отслеживания электронной торговли в Google Analytics и Universal Analytics, можно увидеть разницу в количестве обязательных параметров. Для Universal Analytics не являются обязательными sku, price и quantity. Аналогичная ситуация и при использовании Measurement Protocol. Мое мнение, что лучше указать все возможные параметры, чтобы иметь  более полную информацию при работе с отчетами.

Часто возникает вопрос откуда взять данные о стоимости, артикуле, названии товара, идентификаторе транзакции и другим полям? Для ответа на этот вопрос пообщайтесь с разработчиками вашего сайта, расскажите им что и где необходимо разместить на сайте.

После того, как будет настроена передача данных с помощью dataLayer, необходимо настроить тег, который будет передавать данные о транзакции в Google Analytics.

Создайте новый тег типа Google Analytics или Universal Analytics, укажите для него тип отслеживания транзакция:

Google Tag Manager тип тега транзакция

Google Tag Manager тип тега транзакция

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

Для идентификации страницы (для нашего примера) используйте триггер:

Срабатывание тега Google Tag Manager

Срабатывание тега Google Tag Manager

После этого сохраните тег, создайте версию и опубликуйте ее.

Собранные данные об электронной коммерции начнут поступать в Google Analytics. Возможно для того, чтобы сведения появились в отчетах понадобится некоторое время.

На этом настройка классической версии e-commerce или электронной торговли в Google Tag Manager завершена. Если вам необходима информация о расширенной электронной торговле, ознакомьтесь с материалами из соответствующего раздела.

Автор блога: Иванов Иван, практикующий веб-аналитик. Специалист по внедреннию Google Analytics и Яндекс Метрики. Занимаюсь разработкой решений для формирования данных и отчетов по сквозной аналитике. Автор обучающего курса по Google Tag Manager, преподаватель в Нетологии
Еженедельная рассылка кейсов!
Обсуждение
  1. Антон
    20.02.2014 at 18:19

    А как быть, если нет страницы последней странички в html, а выскакивает всплывашка? Можно ли настроить правило активации тэга по нажатию кнопки (к примеру “оформить заказ”) непосредственно перед всплывающим окном?

    • Иван
      21.02.2014 at 23:33

      Добрый вечер, Антон!
      Настроить отправку данных о транзакции можно и по нажатию на кнопку. Для этого нужно передать данные через dataLayer в GTM, после чего активировать тег с типом “транзакция”. Для настройки используйте правила активации тега после нужного вам события

      • Юлия
        28.01.2015 at 13:14

        Иван, у нас подобная ситуация, как и у Антона – заказ оформляется во всплывающем окне. Код e-commerce разместили на последнем этапе “Спасибо за покупку” так как только на этом шаге заказу присваивается уникальный код, который идет как код транзакции, а активировать правило могу только по отслеживанию заполнение формы заказа, но оно на предыдущем этапе (через id, classes и тексты не активируется правило) и данные в Analytics не поступают… Как можно решить эту проблему?

      • Иван
        03.02.2015 at 12:39

        Юлия, чтобы ответить на Ваш вопрос нужно посмотреть на сам процесс оформления покупки в действии

  2. Ева
    25.02.2014 at 17:11

    Здравствуйте, Иван!
    У меня уже загружен контейнер GTM.
    Я хочу настроить e-commerce. У меня готов скрипт на странице покупки.

    Исходя из ваших рекомендаций, сначала мне нужно удалить контейнер, затем загрузить скрипт на нужную страницу, затем заново вставить контейнер?

    Подскажите пожалуйста! Не могу разобраться

    • Иван
      26.02.2014 at 12:38

      Добрый день, Ева!
      Мне сложно сказать не видя Ваш сайт, что и как в Вашем конкретном случае нужно сделать. Общая схема – разместить dataLayer до GTM, настроить активацию тега “транзакция” на нужную страницу/событие

      • Сергей
        29.08.2014 at 13:08

        Ева, не надо ничего удалять. Чтобы корректно всё работало, добавьте в условие активации тега отслеживания транзакций условие наступления события ({{event}} = gtm.dom. DOM – это сокращение от Document Object Model. По-русски -объектная модель документа. Условие говорит о том, что тег tag manager (простите за тавтологию), будет активизироваться после загрузки ВСЕХ элементов страницы. Соответственно, при таком условии datalayer можно размещать в любом месте страницы. Ничего стирать не надо и ничего изобретать с шаблонами для CMS тоже не надо.

  3. Кира
    28.02.2014 at 15:02

    Добрый день. Меня тоже интересует вопрос, который пришел от Евы. Мне дать Вам название сайта или что-то может быть почитать чтоб понять что делать и как включить отслеживание e-commerce.?

    • Иван
      06.03.2014 at 14:01

      Все зависит от логики работы Вашего сайта. Общий порядок описан в материале, попробуйте реализовать его с теми, кто разрабатывал для Вас сайт. К сожалению временем для разбора частных случаев – я не располагаю, только если не выполняю настройку в рамках оказания услуг

  4. Reklaman
    06.03.2014 at 20:13

    Иван, Вы пользуетесь популярностью у девушек!! )))

  5. Кристина
    03.05.2014 at 16:42

    Здравствуйте, Иван!
    В принципе, суть настройки ecommerce мне ясна. Хотелось бы узнать только такую штуку: откуда берутся значения для параметров? Поясню вопрос: в Вашем примере стоит
    ‘transactionAffiliation’: ‘Acme Clothing’,
    ‘transactionTotal’: ’11.99′,
    Откуда берется Acme Clothing и 11.99? И если это автоматически подтягивается при завершении покупки, что тогда нужно ставить на конечную страницу, в нашем случае – thank-you.html? Не ставить же туда код с уже указанными параметрами.

    • Иван
      04.05.2014 at 09:01

      Добрый день, Кристина!
      Эти параметры берутся из Вашей системы управления сайтом. Это динамические параметры, обратитесь за помощью к разработчикам сайта – они Вам подскажут, как конкретно в Вашем случае получить нужные значения

  6. Юлия
    07.05.2014 at 15:55

    Иван, вы настраивали транзакции для сайта? Как это делается? В нашем Интернет-магазине установлен код отслеживания статистики Universal Google Analytics. Не могу настроить отслеживание электронной торговли в Интернет-магазине. Чтобы в аккаунте Google Analytics в разделе “Транзакции” начали отображаться данные про оформленные заказы, заказанные товары и т.д. Готова заплатить, чтобы вы помогли разобраться.

  7. Ольга
    17.07.2014 at 10:32

    Иван, подскажите, пожалуйста.
    если dataLayer должен быть размещен выше GTM, то где именно его прописывать? в body? или перед ?

    заранее благодарю за ответ.

    • Иван
      17.07.2014 at 11:04

      @Ольга, не принципиально, я не встречал проблем. Обратите внимание на то, что синтаксис для dataLayer при вызове до кода GTM и после немного отличается

      • Настя
        01.12.2014 at 20:06

        Подскажите, пожалуйста, каким образом отличается синтаксис для dataLayer при вызове до кода GTM и после? Не встречала информации по этому поводу. Думала, что отличие только в наличии доп. условия gtm.dom.

      • Иван
        07.12.2014 at 00:44

        До кода GTM вы создаете объект и описываете его, после GTM нужно отправлять данные в объект с помощью конструкции push.

  8. Артур
    30.07.2014 at 18:19

    Добрый день, Иван! А Вы могли бы прислать пример ТЗ на установку dataLayer. Был бы очень благодарен.)

    • Иван
      04.08.2014 at 18:06

      @Артур, какая-то конкретная задача или сам принцип Вам интересен?

  9. Ruslan
    04.11.2014 at 02:53

    Добрый день! У вас написано что для транзакции нужно вставить следующий код:
    dataLayer = [{
    ‘transactionId’: ’1234′,
    ‘transactionAffiliation’: ‘Acme Clothing’,
    ‘transactionTotal’: ’11.99′,
    ‘transactionTax’: ’1.29′,
    ‘transactionShipping’: ’5′,
    ‘transactionProducts’: [{
    'sku': 'DD44',
    'name': 'T-Shirt',
    'category': 'Apparel',
    'price': '11.99',
    'quantity': '1'
    }]
    }];

    Но он почему-то не работает.

    И тут ещё я наткнулся на следующее руководство от гугла:
    https://developers.google.com/tag-manager/enhanced-ecommerce?hl=ru
    Тут гугл пишет, что нужен следующий код:

    // Product impressions are sent by pushing an impressions object
    // containing one or more impressionFieldObjects.
    dataLayer.push({
    ‘ecommerce’: {
    ‘currencyCode’: ‘EUR’, // Local currency is optional.
    ‘impressions’: [
    {
    'name': 'Triblend Android T-Shirt', // Name or ID is required.
    'id': '12345',
    'price': '15.25',
    'brand': 'Google',
    'category': 'Apparel',
    'variant': 'Gray',
    'list': 'Search Results',
    'position': 1
    },
    {
    'name': 'Donut Friday Scented T-Shirt',
    'id': '67890',
    'price': '33.75',
    'brand': 'Google',
    'category': 'Apparel',
    'variant': 'Black',
    'list': 'Search Results',
    'position': 2
    }]
    }
    });

    Кому верить?

    Вставляю конструкцию от гугла
    dataLayer.push(…)
    Оказывается что нужно отдельно создать переменную dataLayer

    Прокомментируйте пожалуйста данную ситуацию?
    Как вы настраиваете расширенную эл.коммерцию через ГТМ?

    • Иван
      05.11.2014 at 09:29

      Обе конструкции верные, вопрос в том, в какой момент они встречаются в коде – до или после кода GTM. Расширенную торговлю настраиваю через GTM путем дополнения исходного кода страниц специальными командами описывающими dataLayer, затем передаю данные в GA через определенные теги

      • Антон
        10.02.2016 at 16:35

        Иван, день добрый, я правильно понимаю что ваш вариант кода уровня данных нужно вставлять ДО контейнера GTM (и он сформирует/добавит данные уже на этапе загрузки страницы), а вариант который был в комментарии выше от Гугла – вставляется ПОСЛЕ кода GTM и он вставляет методом пуш, то есть к примеру на onclick и пуши не срабатывают при загрузке кода, а только после определенных действий – тех же онкликов?

      • Ответ автора
        12.02.2016 at 11:01

        Антон, общее правило – ДО кода Google Tag Manager “определяем”, ПОСЛЕ кода, используем push(). Посмотрите вот этот материал, возможно окажется полезным

      • Валерий
        08.03.2016 at 23:14

        Иван, это говорит о том, что данный аспект в Вашей статье освещен однобоко. Лучше приводить сразу два примера: вариант до TGM и вариант после TGM, имхо

      • Ответ автора
        09.03.2016 at 09:16

        Валерий, мои материалы не претендуют на полноту освещения вопроса со всеми нюансами и т.п. Я стараюсь показать направление, в котором может быть решена задача, поделиться своим опытом решения, но я не ставлю цель подготовки исчерпывающих руководств по типу “скопировал и заработало”. Для описанного Вами случая, как и где правильно определять уровень данных необходимо понимание что это такое и как реализовано технически, тогда многие вопросы саами по себе отпадают. Помимо этого про уровень данных я писал ранее, более подробно.

  10. Андрей
    18.11.2014 at 13:29

    Здравствуйте,
    Подскажите, пожалуйста! В документации по настройке Ecommerce для Universal Analytics сказано следующее:

    “Чтобы загрузить плагин электронной торговли, используйте следующую команду:

    ga(‘require’, ‘ecommerce’);”

    У меня сейчас стоит Google Tag Manager и указанной выше строчки в коде GA не было. Нужно ли ее добавлять в код GA и если да, то каким образом это сделать через Google Tag Manager.

    Спасибо!

    • Иван
      18.11.2014 at 14:29

      Андрей, в Google Tag Manager для этого есть блок настроек Функции электронной торговли в Дополнительных настройках тега типа Universal Analytics

  11. Александр
    01.12.2014 at 12:15

    Спасибо!
    Но как быть с Корзиной. Допустим, товар из нее удаляется, при этом страница не меняется.
    Как подгрузить данные в Data Layer?

    • Иван
      07.12.2014 at 00:43

      Смотря что Вы имеете ввиду, если этап до фиксации транзакции, то ничего делать не нужно, просто в момент фиксации транзакции передавайте фактическое содержимое корзины. Если после отправки данных в GA, то нужно использовать отрицательные значения в транзакции для ее изменения. Как вариант работы с корзиной посмотрите на расширенную торговлю.

  12. Сергей
    03.12.2014 at 09:43

    Здравствуйте.
    Такой вопрос: Как настроить e-commerce при условии, что процесс заказа на сайте не линеен?
    Одно дело, когда у тебя есть ряд шагов, по которым можно посчитать промежуточную и итоговую конверсию, а другое – когда при разных условиях у тебя разные шаги и разная последовательности…
    Например при выборе – самовывоз у тебя одна форма заказа, при доставке другая, при покупке в 1 клик третья, при покупке в кредит – четвёртая, при оплате на любом из шагов пятая и т.д.

    • Иван
      07.12.2014 at 00:45

      Я бы посоветовал для каждого варианта построить свои воронки, а с помощью виртуальных страниц постараться реализовать общую схему объединяющую все варианты

  13. Николай
    02.03.2015 at 16:58

    Иван добрый день,

    Подскажется будет ли работать такая конструкция:

    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
    '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-P8XR');

    dataLayer.push({
    'transactionId': '1234',
    'transactionAffiliation': 'Acme Clothing',
    'transactionTotal': 38.26,
    'transactionTax': 1.29,
    'transactionShipping': 5,
    'transactionProducts': [{
    'sku': 'DD44',
    'name': 'T-Shirt',
    'category': 'Apparel',
    'price': 11.99,
    'quantity': 1
    },{
    'sku': 'AA1243544',
    'name': 'Socks',
    'category': 'Apparel',
    'price': 9.99,
    'quantity': 2
    }]
    });

    Т.е. мне нужно на thank you page отправить данные уже после блока иницализации GTM. Будет ли такое работать?
    Спасибо!

    • Ответ автора
      03.03.2015 at 10:07

      Я не вижу тут каких-то ошибок. А Вы проверили в отладчике какие данные содержатся в GTM на различных этапах?

      • Николай
        04.03.2015 at 18:01

        Тут проблема в том, что по документации dataLayer должен быть строго ДО кода инициализации GTM.

        Вроде как еще написано, что можно сделать так, но надо еще добавить условие gtm.dom дождаться загрузки DOM.

        Но пока не работает :)

      • Ответ автора
        04.03.2015 at 18:52

        Николай, dataLayer можно использовать как ДО так и ПОСЛЕ кода GTM, разница в описании

  14. SevenEl
    26.03.2015 at 16:10

    Подскажите, а что надо ставить в коде вместо строк 1234, 38.26, 1.29, AA1243544?
    Как передвавать значения о товаре со страницы сайта?

  15. Алексей
    23.04.2015 at 21:47

    Интересная статья, но мне кажется, что проще настраивать просто цели, после выполненной покупки пользователь оказывается на определенной странице и это будет отображено в целях. Или я ошибаюсь и в данных настройках есть какие-то другие инструменты более эффективные? Чем вообще настройка целей в аналитикс отличается от э.торговли Tag Manager?
    Спасибо за ответ заранее!

    • Ответ автора
      24.04.2015 at 09:57

      Алексей, Google Tag Manager это инструмент для настройки Google Analytics, сравнивать их нельзя, у них разные задачи

  16. Александр
    27.06.2015 at 01:47

    Иван, подскажите, пжл, этот код http://c2n.me/3jUW7N1.png отправит данные о заказе, если был куплен только один товар? просто там поле (на скрине в красной рамке) вроде только для одного товара или я не правильно понял?

    • Ответ автора
      04.07.2015 at 18:29

      Александр, пока что эти данные только в dataLayer, чтобы они “ушили” в Google Tag Manager, необходимо активировать тег Google Analytics типа “транзакция”. В приведенном коде описан один товар

  17. Никита
    09.07.2015 at 15:20

    Коллеги, философский вопрос на тему метрики: кто как ставит транзакцию? на фактическую ответ эквайринга об успешной оплате или просто на сумму заказа без подтверждения оплаты? Для кого какие метрики важны?

    • Ответ автора
      11.07.2015 at 13:39

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

  18. Ismail
    06.10.2015 at 18:41

    Хорошая статья, спасибо!

    Остался вопрос: можно ли отправить прибыль с каждого купленного товара или хотя бы общую прибыль? То есть для товара указываем закупочную цену, которую не показываем посетителю (в крайнем случае ajax’ом подгружать) и отправляем ее вместе с остальными параметрами товаров.

    Не могу найти об этом инфу нигде. Можно отправлять тегом transactionTax, но это как-то неправильно и только для всех товаров…

    • Ответ автора
      07.10.2015 at 11:49

      Попробуйте использовать пользовательские показатели

  19. Мария
    15.10.2015 at 14:18

    Иван, вы описываете передачу значений в Google Analytics. Можно ли передавать, в нашем случае номер заказа, для рекламной системы?
    1. То есть мы создали пользовательский тег, в нем разместили код для рекламной кампании, но в нем нет возможности выбрать “Тип отслеживая – Транзакция” как указано у вас на стриншоте. Как нам быть в этом случае?
    2. И еще вопрос – можем ли мы в коде “на JavaScript передающий данные о покупке в Googlе Tag Manager” указать только ‘transactionId’, т.к. все остальное нам не нужно передавать?

    • Ответ автора
      15.10.2015 at 14:32

      Мария, я не понял вопроса. Тип отслеживания доступен только у тегов типа Google Analytics, вы же, скорее всего, используете другой тип для размещения кода рекламной системы. По второму вопросу, есть перечень обязательных полей для транзакции и объекта в ней, остальные можно не применять

  20. Мария
    15.10.2015 at 17:02

    Иван, суть задачи в том, чтобы разместить на сайте код рекламной кампании и передавать номер заявки при отправке этой заявки.
    Для того чтобы это работало через GTM нужно, как я поняла, прописать в datalayer передачу номера заявки, а через макрос дальше передавать в код CPA партнера.

    Как нам правильно технически реализовать этот процесс?

    • Ответ автора
      15.10.2015 at 22:00

      Мария, я не готов ответить на Ваш вопрос, т.к. подобные задачи необходимо решать на конкретном сайте

  21. Мария
    16.10.2015 at 14:59

    Иван, благодарю, за уделенное время!

  22. Александр
    26.11.2015 at 22:56

    Иван, здравствуйте! Хотелось бы уточнить: когда мы размещаем код екоммерс до кода GTM, то понятно (данные о транзакции сначала передаем в datalayer, а потом при загрузке кода GTM, тут же идет загрузка кода GA и мы передаем данные о транзакции в GA – то есть, данные о транзакции мы отправляем в GA при загрузке счетчика GA), но когда мы размещаем код екоммерс после кода GTM, то не совсем понятно как тут происходит передача данных о транзакции в GA, ведь получается счетчик GA уже прогрузился (то есть данные в GA отправились), а после этого мы грузим в datalayer данные о транзакции. И вопрос тогда возникает – как в данном случае отправляются данные о транзакции в GA? Заранее спасибо за ответ!

    • Ответ автора
      27.11.2015 at 11:53

      Александр, любые сведения по расширенной торговле передаются хитами типа просмотр страницы или событие. До момента активации тега Google Analytics соответствующего типа отслеживания, сведения по расширенной торговле должны быть определены. Сделать это можно разными способами, все зависит от того, как работает сайт

  23. Лора
    02.12.2015 at 14:47

    Скажите пожалуйста, должен ли Enhanced ecommerce автоматически конвертировать валюту? У меня аналитикс настроен на доллары, транзакцию тестовую определила в евро. В отчете аналитикса сумма не изменилась, только значек долларовый.
    Спасибо заранее!

    • Ответ автора
      02.12.2015 at 18:44

      Давно подобных вопросов не было. Как-то ранее я писал, что конвертация выполнялась

  24. Максим
    21.02.2016 at 00:43

    Иван, подскажите есть ли статья по воз вратам в отчет по электронной торговли. Где-то попалось видео, что там речь идет о cvs файлах. Правильно я понял что возврат не получится делать возврат который указан в отчете по электронной торговли https://developers.google.com/tag-manager/enhanced-ecommerce#refunds

    • Ответ автора
      24.02.2016 at 09:38

      Максим, у меня на сайте нет такого материала. Возвраты, как один из вариантов, можно импортировать через csv файлы

  25. Kirill
    24.02.2016 at 21:25

    Добрый день. Все далаю как в инструкции.
    Делаю тестовый заказ вижу код (см. ниже).
    Но в Google Analytics передаются транзакции (номер, общая сумма), но сами продукты (название продуктов, категория их цена итд) не передаются почему?

    Вот код, который появляется на стр. спасибо за покупку:

    dataLayer = [{
    'transactionId': '97',
    'transactionAffiliation': 'Name',
    'transactionTotal': '6688.0000',
    'transactionTax': '0',
    'transactionShipping': '5',
    'transactionProducts': [
    {
    'sku': 'P71011LZ20T_53K',
    'name': 'БРЮКИ ЖЕН.',
    'category': 'Apparel',
    'price': '3439.0000',
    'quantity': '1'
    }, {
    'sku': 'Y88200LX201_554',
    'name': 'ЛЕГГИНСЫ ЖЕН.',
    'category': 'Apparel',
    'price': '2899.0000',
    'quantity': '1'
    }, ]
    }];

    • Kirill
      24.02.2016 at 21:49

      проблемы решил. dataLayer грузился после тег менеджера.
      В этом была проблема

      • Светлана
        05.01.2018 at 02:22

        где вы брали эти параметры, которые передаете? можете как пример скинуть свой код который вы ставили?

      • Ответ автора
        17.01.2018 at 07:40

        Светлана, пример кода указан в статье, нужные Вам значения в него должны быть подставлены в момент отображения страницы, в этом Вам должны помочь разработчики

  26. Ольга
    03.03.2016 at 19:57

    Добрый день, Иван.
    Посоветуйте, пожалуйста, на какую страницу лучше ставить код электронной торговли в следующей ситуации:
    на сайте есть 2 путя попадания на страницу “Спасибо за заказ” – при оформлении заказа с выбором оплаты наличными, либо по переадресации с внешнего сайта (платёжная система). Клиенту даётся выбор: возвращаться на сайт (осуществляется переход на страницу “Спасибо за заказ!”) или остаться на сайте платёжной системы.
    Проблема в том, что по данным аналитики практически никто не выбирают вариант “вернуться на сайт”.

      • Ольга
        05.03.2016 at 19:02

        Иван, спасибо!
        Буду пробовать.

  27. Сергей
    08.03.2016 at 02:29

    Извините за , может быть, глупый вопрос, но я не сильно понял, нужно один тег UA создавать и указывать “просмотр страниц”, а второй тег UA и указывать “транзакция” для электронной торговли, или создается один просто указывается “транзакция” и он будет отслеживать как электронную торговлю так и посещение страниц, от куда пришли и т.д., в общем остальное стандартное, что отслеживает UA без дополнительных кодов и скриптов?
    Наперед спасибо за ответ.

    • Ответ автора
      09.03.2016 at 09:11

      Сергей, смотря какую торговлю Вы используете. Для расширенной необходима доп. настройка тега, для классической выбор соответствующего типа хита

  28. Денис
    11.03.2016 at 13:09

    Сделал все настройки. В GTM в режиме предварительного просмотра все работает. В аналитике данные по транзакциям не отображаются. В чем может быть проблема?

    • Ответ автора
      12.03.2016 at 18:24

      Денис, на самом деле много моментов, где можно искать проблему. Проверьте настройку целей и передаваемые в Google Analytics данные, убедитесь что данные поступают в отчеты и т.п.

    • Андрей
      15.03.2016 at 16:58

      У вас загружается модуль EC в консоле ?
      вот в примере как у меня при нажатие на кнопку срабатывает событие и транзакция
      http://joxi.ru/E2pgvJYtBbGRom?d=1

      • Денис
        27.04.2016 at 17:40

        Андрей, добрый день!
        Подскажите, пожалуйста, о какой консоле идет речь?

  29. Fariza
    20.04.2016 at 09:43

    Настроила отслеживание шагов чекаута. Передается как событие в гугл аналитику. Но никаких данных о товаре не поступает. Может нужно еще какой нибудь тег сделать?

    • Ответ автора
      20.04.2016 at 11:24

      Подобные вопросы требуют изучения настроек Google Tag Manager и страниц сайта

  30. Александр
    21.07.2016 at 16:29

    Здравствуйте Иван! Такая проблема, настроил отслеживание электронной торговли
    для яндекса, на все события из документации (просмотр товара, добавление/удаление
    из корзины, оформление заказа). В метрике всё ок.
    Теперь пытаюсь настроить то же самое в Google.

    Во-первых создал контейнер в GTM и разместил соответствующий код в
    подвале сайта взамен обычного кода гугл аналитики http://joxi.ru/v29Q16GTGoOKV2 .

    Во-вторых создал тег с универсальной аналитикой, в настройках которой включил
    расширенную функцию электронной торговли с использованием уровня
    данных http://joxi.ru/52a1M7BtG7Wad2 .

    На сколько я понял после проделанных мной операций JS код который ранее
    был успешно настроен для яндекс, должен начать работать и для google, например: http://joxi.ru/bmoow4JIMPjedm т.к. структура массива сохраняемого в dataLayer в
    яндекс и google – одинаковая. Ошибок в консоли нет, но данных в
    отчёте по электронной торговле в Google нет =( http://joxi.ru/krDpEXRI0b3kOr .

    Что я делаю не так?

    • Ответ автора
      03.08.2016 at 09:44

      Александр, проверьте включена ли расширенная торговля в настройках представления. Если – да, то для решения вопроса необходимо разбираться непосредственно на сайте, изучая исходный код страниц

  31. Данил
    29.07.2016 at 12:14

    Иван, здравствуйте! Скажите, Вы не описывали нигде кейс по настройке на сайте плагина ecommerce с дополнительной возможностью подгрузки данных о покупке из CRM или гуглдока?

    Хотелось бы отслеживать поведение пользователей на сайте и взаимодействие с товарами с конверсией в отправку заявки с сайта, и также дополнительно подгружать данные об оплате, т.к. в нашей сфере оплата происходит не на сайте, а наличными или при доставке.

    или могли бы посоветовать какой-то материал для ознакомления по этому вопросу?

    • Ответ автора
      03.08.2016 at 09:46

      Данил, если я правильно понял, то Вам необходимо фиксировать транзакцию после фактического поступления оплаты. Для этого используют протокол передачи данных Google Analytics

  32. Роман
    16.08.2016 at 23:25

    Здравствуйте. Подскажите, пожалуйста, делаю по инструкции https://developers.google.com/tag-manager/enhanced-ecommerce?hl=ru. Там вроде как все идет через dataLayer.push. Прочитал все комментарии, но так и не могу понять, до GTM эти коды должны появляться или после?

    • Ответ автора
      23.08.2016 at 07:00

      Роман, посмотрите вот этот материал про уровень данных.

  33. Роман
    16.08.2016 at 23:26

    Еще, подскажите, пожалуйста, есть ли у вас пример ТЗ для разработчика на внедрение расширенной электронной торговли через GTM?

    • Ответ автора
      23.08.2016 at 07:01

      Готовых ТЗ в открытом доступе на этом сайте нет. При работе с клиентом я разрабатываю ТЗ с учетом особенностей его сайта

  34. Кирилл
    06.10.2016 at 18:10

    Добрый день!
    Пытаюсь настроить e-commerce согласно вашей статьи, вроде бы все выполнил правильно:
    1. отслеживание в GA включил,
    2. в dataLayer нужные мне данные вносятся http://prnt.sc/cqjx2n http://prnt.sc/cqjzjk
    3. на странице его разместил, создал тригер, вроде бы срабатывает http://prnt.sc/cqjxuw http://prnt.sc/cqjybr
    4. так как сам GTM находится выше использую dataLayer.push, но в аналитикс почему-то данные не поступают, в чем может быть ошибка, помогите пожалуйста…

    • Ответ автора
      09.10.2016 at 19:16

      Кирилл, в описании товаров должен быть указан идентификатор транзакции, к которым они относятся, также у тега Google Analytics необходимо выбирать тип “транзакция”

      • Кирилл
        10.10.2016 at 11:07

        dataLayer.push({
        ‘transactionId’: ’6289′,
        ‘transactionTotal’: ’5864.9000′,
        ‘transactionProducts’: [
        {
        'sku': '32909',
        'name': 'Brother Comfort 10 32909-04',
        'price': '2893.0000',
        'quantity': '1'
        } , {
        'sku': '32910',
        'name': 'Brother Comfort 12 32910-04',
        'price': '2971.9000',
        'quantity': '1'
        } ]
        });

        Я в коде использую в качестве значения ‘transactionId’ номер заказа, это и есть тот параметр о котором Вы говорите или есть ещё какой-то идентификатор транзакции? Просто я не совсем понял, в описании товаров это где именно?

      • Кирилл
        10.10.2016 at 11:22

        Кстати когда перехожу в GA в закладке Конверсии – Электронная торговля – Транзакции сверху следующее сообщение: В таблицу включены данные только по параметру “Идентификатор транзакции”, а диаграмма составлена на основе полной статистики.

      • Кирилл
        12.10.2016 at 13:28

        Нашел решение этой злосчастной проблемы которая две недели плавила мне мозг, дело было в следующем:
        Бывает, что во время отправки тега с Транзакцией, GTM еще не видит DataLayers. В подобном случае можно изменить тип триггера для тега с транзакцией на “Просмотр страницы – Модель DOM готова” – http://prntscr.com/csfv49

  35. Тимофей
    28.11.2017 at 17:58

    Иван, повторюсь с вопросом о ТЗ для разработчика. Есть возможность показать любой пример? Буду крайне благодарен. Суть в том, что я не являюсь разработчиком и не понимаю как в ТЗ отобразить то, как нужно поправить код, взятый в справочнике гугл под конкретный сайт.

    • Ответ автора
      04.12.2017 at 23:04

      Тимофей, ТЗ я готовлю под каждый конкретный проект. Значения для параметров Вам не нужно “подставлять”, это как раз и есть задача для разработчиков. Вам нужно описать какой код, когда должен сработать

  36. Иван
    15.12.2017 at 14:36

    Добрый день. Есть тестовый сайт – https://enhancedecommerce.appspot.com/checkout Почему там в примере описано так
    dataLayer.push({
    “event”: “transaction”,
    “ecommerce”: {
    “purchase”: {
    “actionField”: {
    “id”: “eacb19af-139e-4add-8235-e276d0b63ab4″,
    “affiliation”: “Online Store”,
    “revenue”: 175,
    “tax”: 5,
    “shipping”: 5
    },
    “products”: [{
    "id": "f6be8",
    "name": "Comverges T-Shirt",
    "price": "33.00",
    "brand": "Comverges",
    "category": "T-Shirts",
    "variant": "blue",
    "dimension1": "M",
    "position": 0,
    "quantity": 5
    }]
    }
    }
    });

    А у вас совсем по-другому? Спасибо

    • Ответ автора
      19.12.2017 at 23:12

      Добрый день! В статье пример настройки для “классического” модуля, а Вы указали код “расширенной” торговли

  37. Dmitriy
    03.04.2018 at 15:49

    Добрый день,
    У нас эквайринг (оплата) происходит на стороннем сайте, и на thank you page мы приходим уже с сайта эквайринга, подскажите если я размещу код там, то у меня в аналитике будет отображаться, что все покупки у меня совершаются при переходе с сайта эквайринга?
    Можно как этого избежать? Ибо если поставить код на кнопку Оплатить (до ухода на эквайринг), то мы не будем знать статус покупки (отмена/отказ/успех).

    • Ответ автора
      17.05.2018 at 22:41

      Добрый день. Добавьте сайт приема платежей в исключаемые источники переходов в настройках ресурса

  38. Вячеслав
    25.05.2018 at 21:54

    Здравствуйте. А можно ли установить скрипт dataLayer посредством GTM , не привлекая программистов?

    • Ответ автора
      26.05.2018 at 21:44

      Здравствуйте. Нет, уровень данных описывает код вне Google Tag Manager и уже в него передает информацию. Но, если Вы хорошо знаете JavaScript, то можете в Google Tag Manager реализовать наполнение уровня данных нужными значениями и потом как-бы отправить их в Google Tag Manager для обработки.

Ваш комментарий
Выберите рубрику
Google Analytics (69)
Google Tag Manager (57)
Яндекс Метрика (8)
Обзоры (3)
Яндекс Директ (2)
Power BI (1)
Последние публикации
Последние комментарии