Ноль в отчёте аналитики: никто не нажал или событие не доходит?
На сайте с небольшим трафиком пустая строка в отчёте не значит ничего — она одинаково согласуется с «никто не кликал» и со сломанной разметкой. Разбор: как различить одним кликом и что нашлось у нас.
Вы открыли отчёт по целям, а напротив «клик по кнопке Telegram» стоит ноль. Первая мысль — никто не нажимал. Обычно она верна.
Но у неё есть ровно такой же по правдоподобию двойник: событие не доходит. Разметка сломана, цель не заведена, скрипт не успел загрузиться — вариантов много, и в отчёте все они выглядят одинаково. Ноль от нуля не отличается.
На сайте с большим трафиком двусмысленность рассасывается сама: если кнопку жмут сто раз в день, ноль в отчёте кричит о поломке. На сайте с небольшим трафиком она не рассасывается никогда — и это ровно тот случай, когда работающий замер нужнее всего, потому что каждое обращение на счету.
Мы полгода читали такой ноль как «никто не нажимал». Он означал другое.
Различает один клик — ваш собственный
Способ ровно один: нажать самому и посмотреть, доехало ли. Отчёты реального времени и в Яндекс.Метрике, и в Google Analytics 4 показывают событие за секунды — ждать суток не нужно.
Важное уточнение, ради которого стоит держать две системы, а не одну: проверять надо обе сразу.
- событие видно в обеих — разметка цела, ноль в отчёте означал именно «никто не нажимал»;
- видно в одной — дефект на той стороне, где пусто, и вы сразу знаете, где искать;
- не видно нигде — сломано в самом коде сайта, до систем аналитики дело не дошло.
Одно нажатие разделяет три диагноза. Без него вы гадаете по пустой строке.
Мы так и сделали: отправили по клику на телефон, на почту и на кнопку Telegram. Телефон и почта приехали в обе системы. Telegram не приехал никуда.
Что нашлось: событие проигрывало гонку редиректу
Кнопка «Написать в Telegram» ведёт не прямо в мессенджер, а на промежуточный адрес на сайте: он отправляет событие и переадресовывает человека дальше. Так делают, чтобы клик считался и чтобы адрес бота можно было менять в одном месте.
Дефект был в том, что событие и переадресация стояли подряд. А счётчики подключаются отложенно, уже после того, как страница стала интерактивной. Получается гонка:
- счётчик ещё не загрузился — функция отправки просто ничего не делает. Молча: ни ошибки, ни предупреждения в консоли;
- счётчик загрузился — запрос уходит, но переадресация в том же кадре обрывает его на полпути.
Оба исхода дают одно и то же: человек ушёл в Telegram, а в отчёте пусто.
Починка простая по идее и требует аккуратности в мелочах. Переадресация теперь ждёт: либо пока отзовутся оба счётчика, либо предельные восемьсот миллисекунд. Верхняя граница обязательна — без неё посетитель с блокировщиком рекламы завис бы на пустой странице навсегда. После отправки добавлена ещё небольшая пауза: запрос уходит асинхронно, и переход обрывает его точно так же, как обрывал раньше. А тому, кто отказался от cookie, ждать нечего вовсе — счётчиков у него не будет, и держать его лишнюю секунду не за что.
Результат: событие впервые за всё время дошло — и в Метрику, и в GA4, по одному на один клик. Не «стало приходить лучше», а пришло вообще.
Две системы, и ограничения у них зеркальные
Раз уж речь о двух кабинетах: на одном и том же действии они устроены противоположно, и на этом легко потерять данные.
В Яндекс.Метрике цель нужно завести до события. Отправка достижения несуществующей цели не вызывает ошибки — она молча отбрасывается. Данные за период до заведения цели не появятся никогда, восстановить их нечем.
В GA4 наоборот: ключевым можно отметить только то событие, которое уже приходило. Завести его заранее, по имени, нельзя — звёздочка есть только у строки в списке пришедших, а список обновляется с задержкой до суток.
Практический вывод: разметку GA4 нельзя закончить за один заход. Между первым приходом события и возможностью отметить его ключевым лежат сутки, и это надо закладывать в план, а не обнаруживать в процессе.
И то же самое с автоматикой
Метрика умеет сама ловить клики по телефону и почте — так называемые автоцели. Полезно ровно до того момента, когда вы размечаете те же клики своим кодом: тогда одно действие человека превращается в две строки в отчёте, и любая сводка по обращениям завышена вдвое.
В GA4 этой проблемы нет — но не потому, что там умнее. Там есть автоматический
подсчёт «исходящих кликов», однако tel: и mailto: под него не попадают:
исходящим считается переход на другой домен, а эти ссылки домена не несут.
То есть в GA4 ручная разметка этих кликов обязательна.
Одно и то же действие: в одной системе автоматика мешает, в другой её нет и без разметки клик потеряется совсем. Общего правила «включить автоцели» или «выключить автоцели» не существует — надо смотреть на каждое действие отдельно.
Отдельная мина: выключить автоцели не значит удалить уже созданные. Переключатель останавливает появление новых, а те, что успели завестись, продолжают считать. Убирать их приходится по одной.
Что ещё выглядело настроенным и не было
Пока разбирались, вскрылось несколько вещей, которые со стороны читаются как «аналитика настроена».
Преднастройки GA4. В новом ресурсе уже отмечены ключевыми несколько событий, которых ваш сайт не отправляет вовсе. У всех стоит «поток данных не обнаружен» — то есть система прямо пишет, что данных нет, а список ключевых при этом непустой и выглядит убедительно. Проверять надо не количество, а совпадение имён с теми, что есть в коде. Кстати, часть этих преднастроек снять нельзя в принципе: они остаются в списке навсегда.
Цели, указывающие в никуда. У нас две из трёх «ключевых» целей Метрики считали отправку формы, которой на сайте больше нет. Мёртвая цель ничем не отличается от живой, пока не посмотришь, что именно она ловит.
Список кабинета врёт сразу после правки. Сняли отметку — строка осталась на месте, и это выглядит как отказ системы. На следующий день строки уже нет: правка сработала, а список показывал состояние до неё. Проверять результат надо перезагрузкой страницы, а не тем, что нарисовано во вкладке.
Что из этого стоит забрать себе
- Ноль при малом трафике — не факт, а два разных факта. Не читайте его как «никто не нажимал», пока не проверили.
- Проверка — собственный клик, а не рассуждение. Отчёты реального времени показывают его за секунды.
- Две системы полезнее одной именно здесь. Расхождение показывает, где именно сломано; совпадение подтверждает, что разметка цела.
- Сверяйте имена, а не количества. Список ключевых событий бывает непустым и целиком бесполезным.
- Событие и переадресация не должны стоять подряд. Если после отправки человек сразу уходит со страницы, событие теряется — тихо.
Разбор своей аналитики — обычно первое, что мы делаем в проекте: считать эффект бессмысленно, пока непонятно, чему верить в отчётах. Если это нужно сделать у вас — вот что мы делаем с данными, а вот как автоматизируем то, что вокруг них.
А как мы снимали с сайта форму, из-за которой две цели считали пустоту, — в соседнем разборе.