В Метрике стало больше достижений цели «Заявка», а в CRM число обращений не выросло. Чтобы проверить дубли целей в Яндекс Метрике, воспроизведите одну принятую отправку и сравните три записи. Посмотрите, сколько заявок принял сайт, какие события увидел счётчик и по какой цели они отразились в отчёте.

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

Определите, что именно удвоилось

В отчёте «Конверсии» выберите один счётчик, период и конкретную цель. Сравните достижения цели и целевые визиты. Достижения считают случаи срабатывания. Целевой визит учитывается один раз, если выбранная цель в нём достигнута хотя бы однажды. Поэтому два достижения в одном визите возможны и без ошибки. Определения и доступные показатели есть в справке о целях (откроется в новой вкладке) и описании отчёта (откроется в новой вкладке).

Условный пример. Сайт принял одну заявку. Цель сработала после отправки, а через несколько секунд сработала ещё раз при повторном открытии экрана успеха. Метрика зарегистрировала два достижения в одном визите. Если же посетитель за этот визит отправил две отдельные заявки, те же числа могут быть корректными. Проверка начинается с записи сайта о том, сколько отправок он принял.

Если на одно действие отзываются две цели, откройте их по отдельности. Например, встроенная цель «Отправка формы» может учесть попытку отправить форму с ошибкой, а цель с собственным событием фиксирует ответ сайта об успехе. Складывать их как заявки нельзя. Если Метрика показала одно событие, а CRM создала две карточки, начните с маршрута передачи обращения в CRM. Для общего разбора счётчиков и целей пригодится чек-лист аудита Метрики.

Подготовьте один воспроизводимый тест

  1. Запишите URL формы, номер счётчика, название цели и её условие. Для целевого события отдельно запишите ожидаемый идентификатор.
  2. Договоритесь, что в этой форме значит «заявка принята». Для формы с проверкой на сервере это подтверждённый результат отправки. Клик по кнопке или отображение анимации загрузки ещё не подтверждают успех.
  3. Используйте тестовую среду с тем же обработчиком и правилами отправки событий. Если отличие среды не даёт воспроизвести проблему, согласуйте рабочую проверку с владельцем и командой, которая обрабатывает обращения. Время проверки запишите заранее, чтобы не принять тест за результат рекламы.
  4. Добавьте к URL _ym_debug=2 и загрузите страницу. Например, /contacts/?_ym_debug=2. Если в адресе уже есть параметры, добавьте новый через &. Откройте панель отладки значком внизу страницы и выберите нужный счётчик. Во вкладке Events проверьте номер счётчика и действие, во вкладке Console посмотрите идентификатор reachGoal. Для старого кода счётчика или если панель не появилась, откройте страницу с _ym_debug=1 и смотрите консоль браузера. Инструкция Яндекса (откроется в новой вкладке).

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

Найдите источник второго события

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

Если идентификаторы разные, откройте условия цели. Условие «содержит» может принять два разных идентификатора. Например, для form подойдут и form_start, и form_success. Если цель должна считать только успешную отправку, для form_success можно указать условие «совпадает». Условия цели работают по правилу «или». Проверьте, не принимает ли другое условие form_start. Проверьте также, нет ли рядом автоцели с другим назначением. В отчёте «Конверсии» такие цели можно выделить по метке «Автоматические». Условия целевого события (откроется в новой вкладке).

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

У двух вызовов reachGoal и двух достижений разный смысл. Метрика регистрирует повторы одной цели от одного посетителя на том же счётчике с интервалом не меньше секунды. Сверьте порядок в отладчике и результат после обработки в отчёте. Если там один результат, это ещё не повод считать два вызова безопасной настройкой.

Проверьте исправление на четырёх сценариях

Для цели успешной отправки ожидаемое поведение удобно описать до правок. Таблица ниже относится именно к этой цели. У клика по кнопке и просмотра формы могут быть свои правила.

СценарийЧто подтверждает сайтЧто должна получить цель успешной отправки
Форма не прошла проверкуЗаявка не принятаНи одного события
Успешная отправкаОдна новая заявкаОдно событие
Обновление после успехаНовая заявка не принятаНи одного нового события
Две самостоятельные успешные отправкиДве разные заявкиПо событию на каждую заявку

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

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

Передайте разработчику причину и критерий приёмки

В задаче укажите адрес формы, время теста, номер счётчика, цель, последовательность событий и ожидаемое поведение. Например: «Сайт принял одну заявку. Целевое событие form_success уходит повторно после обновления. После исправления успешная отправка даёт одно событие, обновление не отправляет новое». Приложите обезличенные записи проверки.

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

Если причина осталась неясной, на платную часовую консультацию можно принести отчёт по одной цели и последовательность событий без личных данных. Разберём, какой участок учёта проверить следующим.