Вы установили счётчик Яндекс Метрики - и ждёте, когда данные заработают сами. Иногда так и есть: Метрика умеет создавать цели без единой строчки кода. Но бывают ситуации, когда только ручная настройка через JavaScript даёт точный результат. В этой статье разберём оба подхода - с конкретными примерами, кодом и частыми ошибками.
Что такое автоматические цели и JS-события
Автоматические цели: как Метрика видит конверсии сама
Автоматические цели - это функция Яндекс Метрики, которая создаёт цели без участия разработчика. Метрика анализирует HTML страницы и фиксирует действия пользователей по стандартным сигналам: tel: в ссылке = клик по телефону, mailto: = клик по email, тег <form> с атрибутами = отправка формы.
Важный нюанс: автоцель появится, только если на сайте реально происходит соответствующее событие. Метрика не создаёт «пустые» цели - система сначала убеждается, что данные будут накапливаться.
Авторская ремарка: я видел счётчики, на которых автоцели молчали неделями - оказалось, форма работала только через Ajax без стандартного тега
<form>. Метрика это не поймала. Именно для таких случаев существуют JS-события.
JS-событие: ручное управление отслеживанием
JS-событие (тип цели «JavaScript-событие») - это конверсия, которую разработчик запускает вручную через вызов функции в коде страницы. Синтаксис простой:
ym(XXXXXXX, "reachGoal", "your_goal_id");
Здесь XXXXXXX - номер счётчика Метрики, your_goal_id - идентификатор, который вы задали в настройках цели латиницей.
JS-события незаменимы там, где автоцели не справляются:
- Модальные окна и popup-формы
- Ajax-отправки без стандартного
<form> - Шаги многоэтапных форм
- Одностраничные приложения (SPA/React/Vue)
- Кастомные кнопки, не подпадающие под стандартные теги
Разница между автоцелью и JS-событием
| Параметр | Автоматическая цель | JS-событие |
|---|---|---|
| Код на сайте | Не нужен | Обязателен |
| Точность | Зависит от разметки HTML | Полная, разработчик управляет сам |
| Составная цель | ❌ Нельзя использовать | ✅ Можно |
| Настройка идентификатора | Нет (задаёт Метрика) | Задаёт разработчик |
| Подходит для SPA | ❌ Ограниченно | ✅ Да |
| Включается | Автоматически | Вручную через код |
Ключевое ограничение: автоматическую цель нельзя использовать как шаг составной цели (воронки). Если нужна воронка «открыл форму → заполнил → отправил», придётся писать JS-события для каждого шага.
Как включить автоматические цели
Новый счётчик: автоцели активны по умолчанию
На новых счётчиках и счётчиках, где ещё нет ни одной цели, Метрика уже включила автоматические цели - делать ничего не нужно. Когда система зафиксирует первое событие на сайте, вы получите уведомление в интерфейсе.
Важное исключение: если в счётчике уже есть хоть одна цель типа «JavaScript-событие», автоцели по умолчанию автоматически не создаются. Нужно включить вручную.
Старый счётчик: включение вручную
- Откройте Яндекс Метрику → нужный счётчик.
- Перейдите в «Настройки» → вкладка «Цели».
- Включите переключатель «Автоматические цели».
- Подождите - система проверит события на сайте.
Ещё одно ограничение: автоматические цели недоступны для автоматических счётчиков - только для обычных, созданных вручную.
Что войдёт в автоцели
Полный перечень того, что Метрика отслеживает автоматически (по официальной документации):
- Клик по телефону - определяет по
tel:в ссылках - Клик по email - определяет по
mailto:в ссылках - Клик по кнопке - кликабельные элементы
a,button,div,input; для Яндекс Бизнес отдельно создаётся «Автоцель: Заявка» - Отправка формы - тег
<form>с атрибутамиid,nameили путём к DOM-элементу; требует настроенной валидации - Переход в мессенджер - WhatsApp, Viber, VK Мессенджер по URL в ссылках
- Скачивание файлов - любые файлы на сайте
- Поиск по сайту - параметры
q,text,query,searchв URL - Переход в соцсети - ВКонтакте, YouTube и другие по URL в ссылках
- Возврат из платёжной системы - по URL платёжной системы в реферере
- Ecommerce: добавление в корзину - событие
addиз разметки электронной коммерции - Ecommerce: покупка - событие
purchaseиз разметки электронной коммерции - Заполнение контактных данных - с декабря 2023 года данные передаются в хешированном виде при включённой опции «Дополнительные настройки отслеживания»
- Авторизация с Яндекс ID - только при прямом входе через Яндекс ID
- События сервисов - Jivo, Nethouse и другие интегрированные сервисы
Как настроить JS-событие в Метрике
Шаг 1: создайте цель в интерфейсе
- Откройте счётчик → раздел «Цели» в боковом меню.
- Нажмите «Добавить цель».
- Введите название цели (любое, понятное вам).
- Выберите тип условия «JavaScript-событие».
- Укажите идентификатор цели - только латиница, без пробелов, например
form_submitилиclick_call. - Нажмите «Добавить цель».
Совет: идентификатор
form_submitудобнее расшифровывать через год, чемgoal1илиabc. Сделайте имена говорящими сразу.
Шаг 2: добавьте вызов в код
Разместите функцию там, где происходит событие. Пример - кнопка с обработчиком onclick:
<button onclick="ym(XXXXXXX,'reachGoal','form_submit')">
Отправить заявку
</button>
Пример для React / SPA:
const handleSubmit = () => {
ym(XXXXXXX, "reachGoal", "form_submit");
// остальная логика
};
Для старых версий счётчика (до 2020 года) используйте альтернативный синтаксис:
yaCounterXXXXXXX.reachGoal("form_submit");
Шаг 3: передача события через Google Tag Manager
Если менять код напрямую нельзя - используйте GTM.
В GTM создайте новый тег → тип «Пользовательский HTML».
В поле HTML вставьте:
<script> ym(XXXXXXX, "reachGoal", "click_subscribe"); </script>Выберите триггер - событие, на которое реагирует тег.
Перед публикацией проверьте в режиме предварительного просмотра GTM.
Опубликуйте контейнер.
Если используете Яндекс Тег Менеджер вместо GTM - логика та же: тег с кодом ym() + триггер на нужное событие.
Как проверить и отлаживать цели
Проверка через отчёт реального времени
Самый быстрый способ убедиться, что цель работает:
- Откройте Метрику → «Отчёты» → «В реальном времени».
- На сайте выполните целевое действие (нажмите кнопку, отправьте форму).
- Через 30–60 секунд обновите отчёт - конверсия должна появиться.
Если хотите видеть только нужную цель, фильтруйте в Отчёте «Конверсии»: «Визиты, в которых...» → «Поведение» → «Достижение цели».
Частые причины, почему цель не срабатывает
Собрал из реальной практики - все эти случаи встречались у реальных сайтов:
- AdBlock или uBlock у пользователя блокирует скрипт счётчика - данные просто не доходят до Метрики
- Форма без тега <form> или без атрибутов
id/name- автоцель «Отправка формы» не создастся - Неверный идентификатор в коде - опечатка в
reachGoal('form_submitt')при целиform_submit - Медленный интернет - страница загружается, но счётчик не успевает инициализироваться до действия пользователя
- SPA без History API - Метрика не фиксирует смену «страниц» как новые визиты, цели не учитываются
Одно ограничение стоит знать: Метрика фиксирует достижение одной и той же цели не чаще раза в секунду на одном счётчике. За один визит можно зафиксировать до 400 онлайн-целей и до 1000 офлайн-целей.
Как использовать цели в Директе и ретаргетинге
Настроенная цель сразу становится доступна в Яндекс Директ. Используйте её для:
- Оптимизации ставок - Директ автоматически повышает ставки для пользователей, похожих на тех, кто уже достигал цели
- Ретаргетинга - показывайте объявления тем, кто добавил товар в корзину, но не купил
- Сегментов аудитории - разделите трафик на тех, кто конвертировался, и тех, кто ушёл
Авторская ремарка: не удаляйте автоцели только потому, что они «лишние». Особенно «Автоцель: Заявка» для Яндекс Бизнес - она напрямую влияет на качество рекламы в Директе. Сам Яндекс рекомендует её не трогать.
Рекомендуемые цели: настройка по индустрии
Помимо автоцелей, Метрика предлагает рекомендуемые цели под конкретные типы бизнеса. Это заготовленный набор событий, которые нужно поддержать на сайте со стандартными идентификаторами - тогда Метрика автоматически создаст цели под них.
Примеры для сегмента «Услуги»:
| Цель | Событие |
|---|---|
| Открытие формы заявки | Посетитель открыл форму заявки |
| Отправка формы заявки | Посетитель заполнил и отправил заявку |
| Успешный заказ | Успешная оплата |
| Подписка на рассылку | Посетитель подписался |
| Открытие чата | Посетитель открыл чат |
Если сайт использует Google Analytics или Facebook Pixel*, Метрика распознаёт разметку этих систем и автоматически создаёт цели для их событий.
*Facebook Pixel - сервис, запрещённый на территории РФ.
Важные ограничения: не попасть в ловушку
Автоматические цели не учитываются в общем лимите 200 целей на счётчик - это плюс. Но есть ограничения, о которых легко забыть:
- Нельзя добавить автоцель как шаг в составную цель
- После удаления автоцели она не будет создаваться повторно автоматически - придётся воссоздавать вручную
- Если удалить цель, вся накопленная статистика по ней пропадёт из отчётов - это необратимо
- Нельзя редактировать условие автоцели - только название и ценность (доход)
- Автоматическая цель не создаётся, если уже есть цель с точно таким же условием
Альтернативное мнение
Часть аналитиков считает автоцели избыточными и советует отключать их, чтобы не засорять счётчик «шумными» данными. Логика понятна: клик по email может сделать случайный пользователь, который не планировал писать, - и это уже исказит отчёт по конверсиям. Автор придерживается другой точки зрения: автоцели полезны как сигнал о вовлечённости, если правильно разграничить «мягкие» (soft) и «твёрдые» (hard) конверсии в Директе. Используйте автоцели для контекстного анализа поведения - и отдельные JS-цели для оптимизации рекламы.
Нетривиальный факт
Метрика умеет распознавать события Google Analytics, если они уже настроены на сайте, и автоматически создавать под них цели - без дополнительного кода. Это означает: если вы когда-то внедряли GA4 и настраивали там события, часть автоцелей в Метрике появится сама, «прочитав» чужую разметку. Полезно при миграции с Google-стека на Яндекс.
FAQ
Чем отличается автоматическая цель от JS-события в Метрике?
Автоцель создаётся без кода - Метрика сама анализирует HTML и фиксирует клики по tel:, mailto:, отправки <form> и другие стандартные события. JS-событие - ручное: разработчик явно вызывает ym(counterId,'reachGoal','id') в нужном месте кода. Автоцель проще, JS-событие - точнее и гибче.
Автоматические цели считаются в лимите 200 целей на счётчик?
Нет. Автоцели не входят в лимит 200 целей - это официальное поведение Яндекс Метрики.
Можно ли использовать автоцель в составной цели (воронке)?
Нельзя. Автоматическую цель нельзя добавить как шаг составной цели. Для воронки используйте «JavaScript-событие» или «Посещение страниц».
Почему на моём счётчике не появляются автоцели?
Три возможные причины: (1) на счётчике уже есть цель типа «JavaScript-событие» - тогда включите автоцели вручную в настройках; (2) счётчик является автоматическим - для них автоцели недоступны; (3) на сайте ещё не было подходящих событий.
Что будет, если я удалю автоцель?
Цель перестанет создаваться повторно. Вся накопленная статистика по ней исчезнет из отчётов - данные не восстановить. Воссоздать цель вручную можно, но прошлые данные к ней не прикрепятся.
Как передать JS-событие Метрики через Google Tag Manager?
Создайте тег типа «Пользовательский HTML», вставьте <script>ym(XXXXXXX,'reachGoal','goal_id');</script>, выберите нужный триггер, проверьте в Preview-режиме и опубликуйте контейнер.
Работают ли автоцели на SPA (React, Vue, Angular)?
Ограниченно. Автоцели привязаны к стандартной HTML-разметке при загрузке страницы. В SPA, где DOM меняется динамически без перезагрузки, автоцели часто не срабатывают корректно - рекомендуются ручные JS-события.
Источники
- Яндекс Метрика. Справка: Автоматические цели. https://yandex.ru/support/metrica/general/auto-goals.html
- Яндекс для вебмастеров. Яндекс Метрика: теперь аналитика настраивает себя сама. https://webmaster.yandex.ru/blog/yandeks-metrika-teper-analitika-nastraivaet-sebya-sama
- Константин Булгаков. Как передать цель из Google Tag Manager в Яндекс.Метрику. https://konstantinbulgakov.com/post/5386
- Блог Dubkov.org. Что такое цели в Яндекс Метрике и как их настроить. https://blog.dubkov.org/ppc/goals/
- Soldi Marketing. Как настроить цели в Яндекс Метрике. https://soldimarketing.ru/analitika/tseli-v-yandeks-metrike-chto-eto-takoe-i-kak-nastroit/
- Zmitroc.by. Установка Яндекс.Метрики и Google Analytics через GTM. https://zmitroc.by/articles/web-analitika/ustanovka-yandeks-metriki-i-google-analytics-cherez-gtm
- Habr. Яндекс Тег Менеджер против Google: обзор, реальный опыт. https://habr.com/ru/articles/951400/



.svg.webp)





