Генератор UTM метки: пиксель стоит, а событий нет
Порядок проверки, если пиксель установлен, а события не регистрируются: код, триггеры, Test Events, дубли и атрибуция. Разбор по шагам.
Редакция ADS BeastОпубликовано 8 мин чтения
Пиксель загружается, но события не уходят — значит, проблема не в самом коде пикселя, а в триггере, который должен его вызывать. Проверяйте по порядку: загрузка скрипта, срабатывание триггера, отправка запроса, приём в Events Manager. Ниже — порядок проверки, который отсекает причины одну за другой.
Коротко
- Пиксель на странице и событие — разные вещи: код может грузиться, а триггер не вызываться.
- Первая проверка — уходит ли запрос на facebook.com/tr при целевом действии, а не «стоит ли код».
- Если запрос уходит, но событий нет в отчётах, смотрите Test Events и окно атрибуции, а не код.
- Двойные срабатывания почти всегда дают два кода пикселя или дублирование через Google Tag Manager.
- Генератор UTM метки нужен для разметки трафика, но он не заменяет проверку триггеров: метка и событие — разные уровни.
Почему пиксель стоит, а события не регистрируются
Код пикселя на странице отвечает только за загрузку библиотеки. Событие вызывается отдельно — через fbq('track',...) или через триггер в Google Tag Manager. Если триггер не сработал, пиксель загрузится, а запрос о событии не уйдёт. Самая частая причина — кнопка ведёт на другую страницу без отслеживания: клик происходит, переход случается, а код, который должен был вызвать событие, не выполнился.
Вторая частая причина — форма отправляется через AJAX. Страница не перезагружается, а событие привязано именно к перезагрузке. В итоге ни submit, ни thank-you page не фиксируются.
Третья — событие привязано к элементу, которого на момент загрузки скрипта ещё нет в DOM. Скрипт навешивает обработчик, не находит кнопку, тихо ничего не делает.
Отличить эти случаи просто: откройте вкладку Network в браузере, поставьте фильтр по 'tr' и совершите целевое действие руками. Если запроса нет — проблема в коде или триггере. Если запрос есть — проблема дальше по цепочке.
Как проверить, что пиксель вообще загружается
Откройте консоль браузера и введите fbq('getState'). Если объект window.fbq определён, скрипт подключён. Если fbq не определён — скрипт не загрузился или его заблокировал блокировщик рекламы.
Дублирующий способ — фильтр по 'tr' в Network при загрузке страницы. Хотя бы один вызов должен появиться сразу, до всяких действий пользователя. Это базовый PageView.
Проверьте порядок: код инициализации fbq должен идти до кода события. Если событие вызывается раньше, чем определён fbq, браузер выбросит ошибку, а событие потеряется.
Отдельно убедитесь, что пиксель не подключён дважды — например, через тему сайта и через Google Tag Manager одновременно. Это самая частая причина дублей, и она же маскируется под «событие не то считается».
Где смотреть, какие события реально отправляются
В Events Manager есть раздел Test Events. Он показывает события в реальном времени: имя, параметры, источник, время. Это самый быстрый способ увидеть, уходит ли запрос вообще.
Расширение Meta Pixel Helper для Chrome показывает то же самое прямо на странице: подсвечивает сработавшие события и параметры к ним. Удобно, когда нужно проверить конкретную кнопку или форму.
Оба инструмента отвечают на один вопрос: уходит ли запрос и с какими данными. Если в Test Events событие видно, а в отчётах по кампаниям его нет — проблема не в коде, а в настройках аудитории, атрибуции или агрегации. Об этом — в разборе про окно атрибуции и расхождение цифр в статистике.
Сколько ждать появления события в отчётах
Стандартные события и пользовательские конверсии обычно появляются в Events Manager в течение 15-30 минут. Полная агрегация в отчётах по кампаниям может занять до 24 часов.
Если через сутки событий нет, а в Test Events они фиксируются — ищите причину в настройках аудитории, атрибуции или в том, как считается конверсия в самом рекламном кабинете. Код тут уже ни при чём.
Сроки зависят от объёма трафика и от того, насколько быстро рекламная система собирает данные для отчёта. На малых объёмах цифры могут «догоняться» дольше.
Порядок проверки: от загрузки до отчёта
Проходите шаги строго по порядку. Каждый следующий имеет смысл, только если предыдущий пройден.
- Проверьте загрузку пикселя: fbq('getState') в консоли и хотя бы один вызов в Network при загрузке страницы.
- Совершите целевое действие руками и посмотрите, уходит ли запрос на facebook.com/tr в момент действия.
- Если запроса нет — проверьте триггер: кнопка, форма, порядок загрузки скриптов, наличие элемента в DOM.
- Если запрос есть — откройте Test Events и убедитесь, что событие приходит с нужными параметрами.
- Проверьте, не подключён ли пиксель дважды: тема сайта и Google Tag Manager одновременно.
- Дождитесь агрегации и сверьте отчёт с тем, что видели в тестовом режиме.
Такой порядок отсекает причины одну за другой и не даёт чинить код там, где на самом деле проблема в триггере.
Дубли и пропуски: как отличить причину
Двойные срабатывания и полное отсутствие события — две стороны одной проблемы: неправильно настроенного вызова. Различить их помогает простая таблица.
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
| Событие срабатывает дважды | Два кода пикселя или дублирование в GTM | Подключение через тему и через GTM одновременно |
| Событие не срабатывает вовсе | Триггер не вызывается | Кнопка, форма, AJAX, порядок загрузки скриптов |
| Событие есть в тесте, нет в отчёте | Атрибуция или агрегация | Окно атрибуции, настройки аудитории |
| Событие уходит без параметров | Ошибка в коде вызова | Передаваемые параметры и их формат |
Дубли почти всегда дают два источника установки: код в теме сайта и тег в Google Tag Manager. Проверьте оба места, прежде чем что-то менять.
Пропуски чаще связаны с триггером: обработчик навешен, но не на тот элемент, или событие привязано к перезагрузке, которой не происходит.
Как генератор UTM метки связан с проверкой событий
Генератор UTM метки размечает трафик: он добавляет к ссылке параметры utm_source, utm_medium, utm_campaign и другие. Это нужно, чтобы понимать, откуда пришёл человек. Но метка не влияет на то, сработает ли пиксель: это два разных уровня — разметка ссылки и вызов события на странице.
Путаница возникает, когда события не срабатывают, а винят в этом разметку. На деле проверять надо триггер, а не URL. Метка лишь помогает связать конверсию с источником, когда событие уже уходит.
Если вы собираете ссылки вручную и хотите избежать опечаток в параметрах, используйте конструктор UTM-меток для создания ссылок кампаний. Он не чинит пиксель, но снимает часть ручной работы с разметкой.
Проверка на стороне сервера и в CRM
Если события уходят с браузера, но не доходят до карточки в CRM, проблема в передаче данных, а не в пикселе. Браузерная часть может работать идеально, а серверная — терять событие по пути.
Здесь помогает серверная передача конверсий: она отправляет событие напрямую с сервера, минуя ограничения браузера. Настройку без двойного счёта разбираем в статье про серверную передачу конверсий.
Отдельная тема — как метка доходит до карточки в CRM. Если разметка не сохраняется в сделке, аналитика не свяжет конверсию с источником, даже когда событие уходит корректно. Механику разбираем в материале про UTM разметку, которая доходит до карточки в CRM.
И финальная сверка: почему цифры рекламного кабинета не сходятся с CRM. Это почти всегда вопрос атрибуции и разных окон учёта, а не потерянных событий. Подробнее — в разборе про расхождение цифр рекламного кабинета и CRM.
Следующий шаг
Начните с одной проверки: откройте вкладку Network, поставьте фильтр по 'tr' и совершите целевое действие руками. Если запрос не уходит — чините триггер. Если уходит — смотрите Test Events и атрибуцию. Чтобы не тратить время на ручную отладку каждого события, посмотрите, как устроены рекламные операции для агентств: там собран порядок работы с событиями и передачей конверсий.
FAQ
Почему пиксель установлен, но события не регистрируются? Чаще всего код пикселя стоит на странице, но не срабатывает триггер: кнопка ведёт на другую страницу без отслеживания, форма отправляется через AJAX, а событие привязано к перезагрузке. Проверьте в браузере через вкладку Network, уходит ли запрос на facebook.com/tr при целевом действии. Если запроса нет, проблема в коде или в самом триггере, а не в пикселе.
Как проверить, что пиксель вообще загружается на странице? Откройте консоль браузера и введите fbq('getState') или проверьте наличие объекта window.fbq. В Network-фильтре по запросу 'tr' должен появиться хотя бы один вызов при загрузке страницы. Если fbq не определён, скрипт не подключён или заблокирован блокировщиком рекламы.
Сколько времени нужно ждать, чтобы событие появилось в отчётах? Стандартные события и пользовательские конверсии обычно отображаются в Events Manager в течение 15-30 минут. Полная агрегация в отчётах по кампаниям может занять до 24 часов. Если через сутки событий нет, а в тестовом режиме они фиксируются, ищите проблему в настройках аудитории или атрибуции.
Где смотреть, какие события реально отправляются с сайта? В Events Manager есть раздел Test Events: он показывает события в реальном времени с параметрами и источником. Дублирующий способ — расширение Meta Pixel Helper для Chrome, оно подсвечивает сработавшие события прямо на странице. Оба инструмента показывают, уходит ли запрос и с какими данными.
Что делать, если событие срабатывает дважды или не срабатывает вовсе? Двойные срабатывания обычно дают два установленных кода пикселя или дублирование в Google Tag Manager. Проверьте, не подключён ли пиксель одновременно через тему сайта и через GTM. Если событие не срабатывает, проверьте порядок загрузки скриптов: код события должен идти после инициализации fbq.
Мешает ли UTM метка срабатыванию пикселя? Нет. Метка размечает ссылку и помогает связать конверсию с источником, но не влияет на вызов события. Если события не уходят, проверяйте триггер и порядок загрузки скриптов, а не параметры URL.