Главная · Установка · Google Tag Manager

Установка через Google Tag Manager

Десять минут в контейнере GTM плюс один раз залитая по FTP папка /cg/ на вашем домене. Файлы сайта не трогаем, PHP не правим. Ниже — точные названия кнопок и что делать, если не заработало.

Нужны: доступ к контейнеру GTM с правом публикации и FTP к домену сайта.

Шаг 0 — до GTM

Папка /cg/ заливается по FTP. GTM её не создаст

Tag Manager умеет вставлять в страницу HTML и JavaScript. Создать файл на вашем хостинге он не может — такой функции у него нет. Поэтому приёмник данных кладётся руками: в корне домена создаётся папка cg, в неё — два файла из кабинета.

cg-tracker.safe.js

Сам счётчик. Грузится с вашего домена, весит меньше 20 КБ, подключается асинхронно.

collect.php

Приёмник. Принимает данные от счётчика на вашем домене и пересылает их нам. Требует PHP на хостинге.

Права

На папку 755, на файлы 644. Владелец — тот же пользователь, под которым работает сайт.

Проверка перед тем, как идти в GTM: откройте в браузере https://vash-sajt.com/cg/cg-tracker.safe.js — должен отдаться код скрипта, а не 404 и не страница ошибки хостинга.

Если PHP на площадке нет (Tilda, Wix, чистая статика) — класть приёмник некуда. Напишите в @sadalclik_bot до установки, разберём ваш случай отдельно.

Шесть шагов в контейнере

Названия кнопок даны так, как они подписаны в русском интерфейсе GTM, в скобках — английский вариант.

  1. Переменная-константа CG Account

    Левое меню: Переменные (Variables) → блок Пользовательские переменные (User-Defined Variables) → Создать (New) → Конфигурация переменной → тип Константа (Constant). Имя переменной — CG Account, значение — код аккаунта из бота @sadalclik_bot. Сохранить. Дальше код аккаунта живёт в одном месте: сменился — правите переменную, а не теги.

  2. Тег Custom HTML

    Теги (Tags) → Создать (New) → Конфигурация тега (Tag Configuration) → Пользовательский HTML (Custom HTML). В поле вставьте код из блока ниже. Назовите тег SadalClik — All Pages, чтобы через полгода было понятно, что это.

  3. Один раз на страницу

    В теге разверните Расширенные настройки (Advanced Settings) → Параметры активации тега (Tag firing options) и выберите Один раз на странице (Once per page). Без этого на сайтах с виртуальными просмотрами тег выстрелит несколько раз и один визит посчитается двумя.

  4. Триггер All Pages

    Блок Триггеры (Triggering) → выберите встроенный All Pages (тип Просмотр страницы / Page View). Больше триггеров не добавляйте: переходы внутри страницы счётчик отслеживает сам.

  5. Предварительный просмотр

    Кнопка Предварительный просмотр (Preview) вверху справа. Введите адрес сайта, он откроется в окне Tag Assistant. В колонке Tags Fired должен быть ваш тег — и ровно один раз.

  6. Отправить и опубликовать

    Отправить (Submit) → назовите версию (например «SadalClik, установка») → Опубликовать (Publish). Пока контейнер не опубликован, тег работает только в вашем окне предпросмотра, и в панели не будет ни одного визита.

Код для поля Custom HTML

<script>
  window.CG_ACC = '{{CG Account}}';
  window.CG_CG_ENDPOINT = 'https://vash-sajt.com/cg/collect.php';
</script>
<script src="https://vash-sajt.com/cg/cg-tracker.safe.js" async></script>

{{CG Account}} — подстановка той самой переменной из шага 1: GTM заменит её на код аккаунта. Фигурные скобки оставьте как есть.

vash-sajt.com замените на свой домен — тот же, который указан в кабинете. Протокол только https, адрес без www или с www — ровно так, как открывается сайт.

Что настраивается дальше: пороги и режимы

Проверка: четыре точки, где видно правду

Пройдите их по порядку. Первая же, которая не сошлась, и есть место поломки — дальше можно не искать.

Что проверяемГде смотретьНорма
Тег сработалTag Assistant, вкладка TagsНорма SadalClik — All Pages в списке Tags Fired, один раз
Файлы на местеБраузер: /cg/cg-tracker.safe.jsНорма Отдаётся код скрипта, ответ 200
Запрос ушёлИнструменты разработчика → Сеть (Network), фильтр collectНорма POST на ваш домен, ответ 200, не 404 и не CORS-ошибка
Визит дошёлПанель SadalClik, журнал визитовНорма Строка с вашим IP и устройством; оценка проставится в ближайшие 10 минут

Свой визит в журнале — это нормально и даже полезно: сразу видно, как выглядит запись живого человека. Свои IP и офисную сеть потом добавьте в белый список в настройках, чтобы они не попадали в статистику.

Про честные ограничения

Блокировщики режут сам gtm.js — и это не чинится тегом

Часть посетителей приходит с расширениями, которые блокируют домен googletagmanager.com по списку. У этих людей контейнер не загрузится вообще: не сработает ни наш тег, ни ваша аналитика, ни пиксели. Мы на это повлиять не можем и стопроцентного охвата не обещаем.

Зато то, что загрузилось, доходит до конца. Счётчик и приёмник лежат на вашем домене, а не на стороннем: следующий фильтр, который отрезает запросы к чужим адресам, здесь не срабатывает. Ради этого папка /cg/ и заливается — иначе половина собранного терялась бы на последнем шаге.

Если для вас критично собрать максимум визитов — ставьте код прямо в шаблон сайта, мимо контейнера. Тогда блокировка gtm.js на вас не влияет.

Код прямо на сайте

Consent Mode v2

Схема с тегом в GTM ложится на Consent Mode v2 без отдельной интеграции. В теге: Расширенные настройки → Настройки согласия (Consent Settings) → Требовать дополнительное согласие (Require additional consent) и укажите analytics_storage.

Дальше GTM решает сам: пока посетитель не дал согласие в вашем баннере, тег просто не срабатывает. Запрос на collect.php не уходит вообще — не «уходит обезличенным», а не уходит. После согласия сбор начинается со следующего просмотра страницы.

Что именно собирает счётчик и сколько это хранится

Частые ошибки установки

Три случая закрывают почти все обращения по установке.

Каждый визит в журнале дважды

Симптом: визитов ровно вдвое больше, чем в Google Analytics, время на странице по нулям у половины строк.

Причина одна из двух: в теге не выставлено Один раз на странице, либо контейнер GTM вставлен в шаблон сайта дважды. Откройте исходный код страницы и поищите gtm.js — вхождение должно быть одно. Отдельно проверьте, не остался ли код счётчика ещё и прямо в шаблоне: вместе с тегом GTM он даст двойной счёт.

В панели пусто, а в Preview всё зелёное

Симптом: Tag Assistant показывает Tags Fired, журнал визитов пустой сутки.

Контейнер не опубликован. Предварительный просмотр работает только в вашем браузере и только на время сессии отладки — остальные посетители получают последнюю опубликованную версию, а в ней тега нет. Лечится так: Отправить (Submit) → Опубликовать (Publish). Проверьте номер версии на вкладке Версии.

Запросы 404 или не уходят

Симптом: во вкладке Сеть запрос collect.php красный, либо ошибка о блокировке междоменного запроса.

В CG_CG_ENDPOINT неверный домен: остался пример vash-sajt.com, либо адрес с www, когда сайт открывается без www (и наоборот), либо http вместо https. Адрес в CG_CG_ENDPOINT должен совпадать с доменом открытой страницы символ в символ. Второй вариант — файла collect.php просто нет по этому пути.

Не помогло — напишите в бот, посмотрим вашу страницу вместе.

Контакты Вопросы и ответы

Посмотрите на свой трафик

Аккаунт создаётся бесплатно, без карты — платная подписка сама не включается. Мы ничего не блокируем, просто показываем, кто к вам приходит.