Офлайн-конверсии в Яндекс.Метрике: как вернуть подписку целью
Содержание
- Что такое офлайн-конверсия и когда она нужна
- Почему подписку в мессенджере нельзя поймать обычной целью
- Кому это нужно, а кому нет
- Как подписка находит дорогу обратно в Метрику
- Что именно передаётся в счётчик
- Настройка: что нужно сделать один раз
- Какую цель нельзя ставить в оптимизацию
- Почему конверсия приходит не мгновенно
- Срок давности: почему клик живёт не вечно
- Что делать, если конверсий нет
- Чего офлайн-конверсии не делают
- Что это даёт на практике
Офлайн-конверсии — способ рассказать Яндекс.Метрике о событии, которое произошло не на сайте: звонке, сделке в CRM или, как в нашем случае, подписке на Telegram-канал. Метрика такое событие увидеть не может: человек ушёл со страницы, и для счётчика история закончилась. Загрузив офлайн-конверсию, вы возвращаете этот факт обратно — и Яндекс.Директ начинает оптимизировать кампанию по подпискам, а не по кликам. Ниже — как это устроено, что нужно передать, почему обычной целью такое не решается и какую цель категорически нельзя ставить в оптимизацию.
Что такое офлайн-конверсия и когда она нужна
Обычная цель в Метрике срабатывает прямо в браузере: человек нажал кнопку, отправил форму, дошёл до страницы «Спасибо». Счётчик это видит своими глазами.
Но значительная часть результата случается там, куда счётчик не дотягивается. Заявку подтвердили по телефону через два дня. Сделку закрыли в CRM через неделю. Человек ушёл из браузера в мессенджер и подписался на канал. Во всех трёх случаях событие произошло, а Метрика о нём не знает.
Офлайн-конверсия — это загрузка такого события в счётчик задним числом, с привязкой к конкретному посетителю. Метрика принимает её и раскладывает по тем же отчётам, что и обычные цели: по источникам, кампаниям, объявлениям.
Почему подписку в мессенджере нельзя поймать обычной целью
Это ключевой момент, и он не про настройки, а про устройство самих систем.
Цель в Метрике — это код, который выполняется на вашей странице. Пока человек на сайте, счётчик за ним следует: видит клики, скроллы, переходы между разделами. В момент, когда посетитель нажимает ссылку на Telegram, происходят две вещи одновременно: браузер закрывается или уходит в фон, а мессенджер открывается отдельным приложением.
Между браузером и приложением нет общего контекста. Метрика не может ни последовать за человеком, ни спросить у мессенджера, чем всё закончилось. UTM-метки, которые обычно решают вопрос атрибуции, здесь тоже не помогают: они живут в адресе страницы, а канал открывается по своей ссылке, где никакой разметки уже нет.
Часто цель ставят на клик по кнопке «Перейти в Telegram». Это лучше, чем ничего, но считает она не то: клик по кнопке — намерение, а не подписка. Между ними теряется половина людей и больше: кто-то не дошёл, кто-то посмотрел канал и закрыл, кто-то подписался и отписался через час. Оптимизируя кампанию по кликам на кнопку, вы учите Директ приводить людей, которые охотно нажимают, а не тех, кто остаётся.
Кому это нужно, а кому нет
Настройка не бесплатная по времени, поэтому честно про то, когда она окупается.
| Ситуация | Стоит ли настраивать |
|---|---|
| Ведёте платный трафик из Директа на канал | да, это основной сценарий |
| Кампания работает на автостратегии | да — стратегии без правильной цели учиться не на чем |
| Несколько кампаний, и непонятно, какая приводит подписчиков | да |
| Только посевы у блогеров, Директа нет | нет, Метрика здесь ни при чём — считайте метками |
| Трафик только органический | нет, атрибутировать нечего |
| Кампания на ручных ставках и без оптимизации | по желанию: пользы для отчётов много, для стратегии нет |
Как подписка находит дорогу обратно в Метрику
Чтобы загрузить офлайн-конверсию, нужно знать кого засчитывать. Метрика идентифицирует посетителя по ClientID — это её собственный идентификатор, который живёт в куке _ym_uid. Значит, задача сводится к одному: связать ClientID из браузера с подпиской, которая произошла в мессенджере.
Цепочка выглядит так:
- Человек кликает по объявлению и попадает на страницу с вашим счётчиком. В этот момент у него уже есть ClientID.
- Он нажимает ссылку-метку, а не прямую ссылку на канал. Метка фиксирует переход и забирает с собой рекламные идентификаторы и ClientID.
- Метка выдаёт персональную ссылку-приглашение — одноразовую, рассчитанную ровно на одного человека.
- Человек вступает в канал по этой ссылке. Поскольку она одноразовая и выдана конкретному клику, вступление сходится с кликом однозначно.
- Подписка уходит в Метрику офлайн-конверсией по сохранённому ClientID.
Третий шаг — тот, на котором держится вся точность. Без персональной ссылки пришлось бы гадать: в канал за минуту вошли пятеро, кликов было восемь, кто из них кто — неизвестно. С персональной ссылкой гадать не нужно.
Это контринтуитивно, но так и есть. Персональные одноразовые приглашения — штатный механизм закрытых каналов, поэтому именно там связка «клик → подписка» получается однозначной. Вступление при этом мгновенное: одобрять заявку вручную не нужно, ссылка просто рассчитана на одного человека.
Что именно передаётся в счётчик
Набор полей у офлайн-конверсии небольшой:
| Поле | Что это | Обязательно |
|---|---|---|
| ClientID | идентификатор посетителя из куки _ym_uid | да |
| Идентификатор цели | какая именно цель засчитана — например, подписка | да |
| Время события | когда произошло, а не когда загрузили | да |
| Стоимость | ценность события в деньгах | нет |
| Валюта | если передаёте стоимость | нет |
Время события стоит передавать честно. Соблазн поставить текущий момент понятен, но тогда в отчётах конверсия приклеится не к тому дню, и вечерний всплеск подписок с утреннего размещения будет выглядеть как результат вечернего.
Настройка: что нужно сделать один раз
Порядок действий в NexusTag короткий, потому что цели заводятся автоматически — руками их создавать не нужно и не стоит: идентификаторы должны совпасть с теми, по которым потом придут конверсии.
- В карточке Директ-источника открыть «Настроить цели и сегменты».
- Авторизоваться в Яндексе — без доступа создать цели в вашем счётчике нельзя.
- Нажать «Создать цели автоматически»: заводятся цели под подписку и под отписку.
- Нажать «Проверить цели в счётчике» и убедиться, что они на месте.
Стратегия, которая училась на несуществующей цели, тратит бюджет вхолостую, и заметить это можно через неделю — по отсутствию оптимизации, а не по ошибке. Проверка занимает секунды, разбор последствий — дни.
Какую цель нельзя ставить в оптимизацию
Целей заводится две: подписка и отписка. И вот здесь легко навредить себе одним движением.
Цель «отписался» нельзя ставить в оптимизацию Яндекс.Директа. Алгоритм не знает, что это плохое событие, — он видит достижение цели и начинает искать похожую аудиторию. То есть добросовестно учится приводить людей, которые подпишутся и уйдут.
Зачем тогда эта цель нужна? Для отчётов и для сегментов ретаргетинга. По ней видно отток в разрезе кампаний, а ещё по ней собирается сегмент, который логично исключить из показов, чтобы не платить второй раз за тех, кто уже ушёл.
| Цель | В оптимизацию | Для чего |
|---|---|---|
| Подписка | да | обучение стратегии, оценка кампаний |
| Отписка | нет | отчёты по оттоку, сегмент на исключение |
Почему конверсия приходит не мгновенно
Между вступлением в канал и появлением конверсии в Метрике проходит время — обычно секунды. Это не задержка «на всякий случай», а следствие того, как устроена отправка.
Раньше конверсия уходила синхронно, прямо в момент обработки вступления. API Яндекса иногда отвечает секундами, и всё это время обработчик события был занят. На потоке рекламы очередь событий копилась, и бот переставал отвечать — то есть попытка сделать «быстрее» делала хуже всей системе.
Сейчас путь другой: вступление мгновенно записывается в очередь, ответ отдаётся сразу, а фоновая задача раз в пятнадцать секунд отправляет накопившееся. Очередь хранится в базе, а не в памяти: при перезапуске или обновлении неотправленные конверсии не должны теряться, иначе Директ недосчитается подписок и хуже обучится. Если Метрика недоступна, попытки повторяются; после нескольких неудач задание помечается неудачным и перестаёт занимать очередь.
Срок давности: почему клик живёт не вечно
Для привязки берётся только свежий рекламный клик — в пределах трёх месяцев. Ограничение выглядит формальностью, но без него ломается логика.
Представьте человека, который подписался в марте, отписался в мае и снова подписался в августе. Без срока давности отписка спустя месяцы приписалась бы к древнему мартовскому клику, а цикл «подписался — отписался — подписался» слал бы конверсии по одному и тому же клику снова и снова. В отчёте кампания выглядела бы эффективнее, чем есть.
Что делать, если конверсий нет
Проверять стоит по порядку — снизу вверх по цепочке, потому что каждый следующий пункт бессмыслен без предыдущего.
| Что проверить | Признак проблемы |
|---|---|
| Счётчик выбран у источника | без него отправлять некуда |
| Авторизация в Яндексе жива | доступ мог истечь или быть отозван |
| Цели существуют в счётчике | кнопка проверки в карточке источника |
| Трафик идёт по ссылке-метке | прямая ссылка на канал ClientID не передаёт |
| Счётчик стоит на всех страницах | только на посадочной — цепочка рвётся |
| Клик не старше трёх месяцев | по старым привязка не делается |
Чаще всего дело в четвёртом пункте: где-то в связке осталась прямая ссылка на канал. Она работает для человека и не работает для аналитики — по ней в мессенджер не уезжает ничего, кроме самого перехода. Подробнее про устройство ссылок — в разборе того, как работает метка.
Чего офлайн-конверсии не делают
Честные ограничения, чтобы не ждать лишнего.
- Не восстанавливают историю задним числом. Подписки, которые случились до настройки, в Метрику не попадут: ClientID тех людей нигде не сохранён.
- Не работают без рекламного клика. Человек, пришедший из поиска или по совету друга, в отчёты Директа не попадёт — ему нечего атрибутировать.
- Не заменяют отчёт по источникам. Метрика покажет подписки в разрезе кампаний, но не покажет, сколько человек осталось через месяц, — это считается на стороне сервиса. Почему цифры двух систем не обязаны сходиться, разобрано в отдельной статье.
- Не отменяют разметку. Если трафик идёт ещё и на сайт, UTM по-прежнему нужны — их удобно собрать под связку с Метрикой.
Что это даёт на практике
Смысл всей конструкции в одной фразе: стратегия Директа начинает учиться на том событии, ради которого запускалась кампания.
До настройки алгоритм оптимизируется по кликам и в лучшем случае по нажатию кнопки. Он честно ищет людей, склонных нажимать. После настройки он ищет тех, кто подписывается, — а это другая аудитория, и цена подписчика у неё считается иначе.
Второй эффект скучнее, но не менее полезный: в отчётах Метрики появляется срез подписок по кампаниям и объявлениям. Без офлайн-конверсий этот срез собирают руками, сопоставляя выгрузку из кабинета с приростом канала, — и получают приблизительно.
Чем офлайн-конверсия отличается от обычной цели
Обычная цель срабатывает в браузере, на вашей странице. Офлайн-конверсия загружается в счётчик отдельно и относится к событию, которого браузер не видел: звонку, сделке в CRM, подписке в мессенджере. В отчётах Метрики они выглядят одинаково.
Нужен ли доступ к счётчику
Да. Цели создаются в вашем счётчике, поэтому нужна авторизация в Яндексе. Без неё завести цели автоматически невозможно, а созданные вручную рискуют не совпасть идентификаторами с теми, по которым придут конверсии.
Через сколько конверсия появится в Метрике
Обычно в пределах полуминуты: вступление попадает в очередь мгновенно, фоновая задача отправляет накопившееся раз в пятнадцать секунд. Если Метрика недоступна, отправка повторяется несколько раз.
Можно ли ставить цель «отписался» в оптимизацию Директа
Нет. Алгоритм воспримет её как желаемое событие и начнёт приводить людей, склонных отписываться. Эта цель нужна для отчётов по оттоку и для сегмента, который исключают из показов.
Работает ли это для MAX
Механика метки и отчётов та же, но подтверждение подписки в MAX идёт сверкой списка участников, а не событием: мессенджер о вступлениях не сообщает. Разбор различий — на странице аналитики каналов в MAX.
Что если человек подписался с телефона, а кликал с компьютера
Связка не сработает: ClientID у браузеров разный, и Метрика видит двух разных посетителей. Это общее ограничение офлайн-конверсий, а не особенность мессенджеров.
Узнайте, какой источник приводит живых подписчиков
Метка ставится на любую ссылку: посев, Telegram Ads, Яндекс.Директ, сайт или бесплатное упоминание. Все источники сходятся в одном отчёте.
Открыть NexusTagМетка создаётся за минуту. Канал подключается без разработчика.


