Google Analytics
Google Tag Manager

Как использовать одновременно код Google Analytics и Google Tag Manager

Материал обновлен:
16:12:2015
Комментарии:
21

Вопрос одновременного использования кода отслеживания Google Analytics и настроек в Google Tag Manager набирает популярность вместе с популярностью Google Tag Manager.

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

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

Второй вариант: на сайте установлен Google Tag Manager, но “по старинке” выполняется настройка отслеживания, как пример, событий, через код отслеживания Google Analytics. Или на сайте установлен Google Tag Manager и используются сторонние сервисы, которые имеют возможность отправлять в ваш счетчик данные о событиях связанных с их работой (например, он-лайн консультант: открытие чата, отправка сообщения и т.п.).

Обращаю ваше внимание, что все описанное выполнялось на тестовом сайте без дополнительных настроек Google Analytics. Идентификатор отслеживания Google Analytics (номер счетчика) для кода отслеживания и для Google Tag Manager – идентичен.

Разберем первый вариант. Собственно никаких проблем с передачей данных в Google Analytics замечено не было.

Код Google Analytics и Google Tag Manager на одной странице

Код Google Analytics и Google Tag Manager на одной странице

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

Второй вариант – сложнее. Мы имеем на сайте код контейнера Google Tag Manager, настроенные в нем события, а также код отслеживания Google Analytics, который также фиксирует некоторые события на странице.

Код Google Tag Manager и отслеживание события

Код Google Tag Manager и отслеживание события

Если вы будете использовать вариант как на изображении, то у вас код отслеживания Google Analytics не будет срабатывать:

Типичная ситуация, когда при установке на сайт Google Tag Manager перестают отслеживаться сторонние сервисы, которые передают свои сведения через подобный код отслеживания.

Как найти решение?

Оно кроется в принципе работы Google Analytics. При загрузке страницы выполняется код Google Analytics (не важно каким образом он добавлен на сайт, через код отслеживания или через Google Tag Manager), в числе прочих действий создается трекер, которому присваивается имя и все последующие взаимодействия со счетчиком Google Analytics происходят через него. По умолчанию Google Analytics использует имя трекера t0.

Почему не работает, если сначала идет код контейнера Google Tag Manager?

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

Имя трекера Google Analytics в Google Tag Manager

Имя трекера Google Analytics в Google Tag Manager

Код Google Analytics ожидает имя t0, но на странице используется другое, и он не может передать данные на свой сервер.

Если вы пользуетесь дебаггером Google Analytics, то в нем отобразится вот такое сообщение:

Сообщение о проблеме при отправке

Сообщение о проблеме при отправке

Решение проблемы.

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

Указание имени трекера в Google Tag Manager

Указание имени трекера в Google Tag Manager

Необходимо отметить опции как на изображении и ввести значение t0 в поле (правильное решение – использование собственной переменной типа константа, подробнее о переменных здесь).

После такой настройки код Google Analytics должен работать корректно. Пример информации в отладчике:

Отправка события

Отправка события

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

Тэг

Рассылка бесплатных кейсов, инструкций, обзоров

Настройки, интеграции, примеры реальных задач, пошаговые инструкции


  1. Михаил
    17.12.2015 at 13:58

    Спасибо!
    Не подскажите, где можно найти дебаггер GA?

    • Ответ автора
      18.12.2015 at 08:59

      В наборе расширений для Вашего браузера, после этого выполнить его установку

  2. Иван
    18.12.2015 at 16:28

    Добрый день. У меня такая ситуация. Есть счетчик GA, который работает корректно. Нашел код GTM который обрабатывает скролинг страницы. Как их совместить? Эта инструкции подойдет?
    Спасибо.

    • Ответ автора
      18.12.2015 at 23:47

      Иван, мой ответ – подойдет, но возможно у нас с Вами разные способы решения задачи

  3. Алексей
    22.12.2015 at 11:59

    Спасибо, надо будет запомнить, хотя не использую события, но мало ли :)

  4. Юрий Брызгалов
    22.12.2015 at 18:09

    Спасибо, Иван, за материал!

    А если речь идёт только о кодах Enhanced Ecommerce, то надо ли использовать это решение?

    • Ответ автора
      24.12.2015 at 14:24

      Юрий, тут нужно смотреть какой код используется. Если код Google Analytics то или явно указываем или вариант с t0 применяем, если торговля описана через уровень данных, то ничего не нужно делать

  5. Maria
    24.12.2015 at 13:25

    Здравствуйте!
    У нас была ситуация с одновременным размещением кодов ГА и ГТМ на сайте (счетчик одинаковый). В результате данные по просмотрам задваивались (отправлялось 2 pageview), а отказы соответственно упали практически до нуля. Вы как-то ограничивали отправку pageview?

    • Ответ автора
      24.12.2015 at 14:25

      Мария, вероятно у Вас и Google Tag Manager и Google Analytics выполняли одни и те-же задачи, отсюда и задвоение

      • Maria
        24.12.2015 at 14:57

        Иван, и как с этим бороться? Понятно, что запрещать отправку страниц :) но технически как это сделать?

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

        Оставлять один из кодов (Google Analytics или Google Tag Manager) либо комбинировать как описано в материале

  6. Ярик
    25.12.2015 at 21:16

    правильно ли я понял что можно оставить код аналитикс добавленный обычны способом, а при желании настраивать события через gtm только нужно выбрать тип отслеживания Событие, но ни разу не Просмотр Страницы и наше будет задвоение показателей

    • Ответ автора
      28.12.2015 at 10:15

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

  7. Валерия
    20.11.2016 at 19:11

    Добрый день, спрсибо за интересную статью. Подскажите, какое правило запуска должно быть для тега с трекером t0 ? Как GTM поймет, что нужно запускать событие?

    • Ответ автора
      22.11.2016 at 14:47

      Все зависит от того, что Вы отслеживаете. Для кликов событие gtm.click, возможно с доп. параметрами, либо пользовательское событие. Имя трекера никак не влияет на остальную работу в Google Tag Manager

  8. Андрей
    10.07.2017 at 11:27

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

    • Ответ автора
      20.07.2017 at 22:45

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

    • Ответ автора
      04.12.2019 at 09:12

      Егор, добрый день. Я бы не был столь категоричен. Если Вы внимательно ознакомились с материалом по ссылке, которую указали, знаете как работает Google Analytics при не стандартной настройке, а также проработали задачу, которая перед Вами стоит, то имя трекера можно изменить. Действительно, необходимо учитывать ту особенность Google Tag Manager, что создание нового тега влечет за собой команду create, но если Ваша задача позволяет работать с такой логикой работы инструмента, то я не вижу в этом проблем. В любом случае, одну задачу можно решить разными способами и если Вам не подходит предложенный мной вариант, Вы всегда найдете альтернативный

  9. Александр
    20.03.2020 at 13:03

    Добрый день! Не проводили ли вы тестов сравнения скорости загрузки тегов размещенных через GTM, с теми же тегами размещенными напрямую в коде? Спасибо

    • Ответ автора
      02.05.2020 at 09:43

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

mode_edit