Сайт использует сookies для хранения данных. Продолжая использовать сайт, вы даёте согласие на работу с этими файлами.

ОК
📈
Маркетинг
Опубликовано:
25.06.2026
Обновлено:
09.07.2026

Автоматические цели и JS-события в Метрике: настройка без ошибок

Тимофей Ищенко

Вы установили счётчик Яндекс Метрики - и ждёте, когда данные заработают сами. Иногда так и есть: Метрика умеет создавать цели без единой строчки кода. Но бывают ситуации, когда только ручная настройка через 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-событие», автоцели по умолчанию автоматически не создаются. Нужно включить вручную.

Старый счётчик: включение вручную

  1. Откройте Яндекс Метрику → нужный счётчик.
  2. Перейдите в «Настройки» → вкладка «Цели».
  3. Включите переключатель «Автоматические цели».
  4. Подождите - система проверит события на сайте.

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

Что войдёт в автоцели

Полный перечень того, что Метрика отслеживает автоматически (по официальной документации):

  • Клик по телефону - определяет по 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: создайте цель в интерфейсе

  1. Откройте счётчик → раздел «Цели» в боковом меню.
  2. Нажмите «Добавить цель».
  3. Введите название цели (любое, понятное вам).
  4. Выберите тип условия «JavaScript-событие».
  5. Укажите идентификатор цели - только латиница, без пробелов, например form_submit или click_call.
  6. Нажмите «Добавить цель».

Совет: идентификатор 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.

  1. В GTM создайте новый тег → тип «Пользовательский HTML».

  2. В поле HTML вставьте:

    <script>
      ym(XXXXXXX, "reachGoal", "click_subscribe");
    </script>
    
  3. Выберите триггер - событие, на которое реагирует тег.

  4. Перед публикацией проверьте в режиме предварительного просмотра GTM.

  5. Опубликуйте контейнер.

Если используете Яндекс Тег Менеджер вместо GTM - логика та же: тег с кодом ym() + триггер на нужное событие.

Как проверить и отлаживать цели

Проверка через отчёт реального времени

Самый быстрый способ убедиться, что цель работает:

  1. Откройте Метрику → «Отчёты»«В реальном времени».
  2. На сайте выполните целевое действие (нажмите кнопку, отправьте форму).
  3. Через 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-события.

Источники

  1. Яндекс Метрика. Справка: Автоматические цели. https://yandex.ru/support/metrica/general/auto-goals.html
  2. Яндекс для вебмастеров. Яндекс Метрика: теперь аналитика настраивает себя сама. https://webmaster.yandex.ru/blog/yandeks-metrika-teper-analitika-nastraivaet-sebya-sama
  3. Константин Булгаков. Как передать цель из Google Tag Manager в Яндекс.Метрику. https://konstantinbulgakov.com/post/5386
  4. Блог Dubkov.org. Что такое цели в Яндекс Метрике и как их настроить. https://blog.dubkov.org/ppc/goals/
  5. Soldi Marketing. Как настроить цели в Яндекс Метрике. https://soldimarketing.ru/analitika/tseli-v-yandeks-metrike-chto-eto-takoe-i-kak-nastroit/
  6. Zmitroc.by. Установка Яндекс.Метрики и Google Analytics через GTM. https://zmitroc.by/articles/web-analitika/ustanovka-yandeks-metriki-i-google-analytics-cherez-gtm
  7. Habr. Яндекс Тег Менеджер против Google: обзор, реальный опыт. https://habr.com/ru/articles/951400/
Это авторская статья, основанная на личном опыте и субъективном взгляде автора. Заметили ошибку или битую ссылку? Сообщите нам: info@codesrc.ru - мы оперативно исправим. Спасибо, что помогаете делать блог лучше.
Следите за нами в соцсетях:

Читайте также