Метод Точного Входа OS
🎯 Кабинет директолога
← Все статьи

Офлайн-конверсии в Директе: обучаем алгоритм продажами

⚙️ Практика Директа·Денис Смагин··обновлено ·9 мин чтения
Офлайн-конверсии в Директе: обучаем алгоритм продажами
Коротко

Офлайн-конверсии в Директе учат алгоритм на реальных продажах вместо заявок. ClientID, загрузка через Метрику и API, настройка целей и 5 частых ошибок.

Офлайн-конверсии — это данные о реальных продажах (сделка закрылась, клиент оплатил, менеджер подтвердил заказ), которые вы загружаете обратно в Яндекс Метрику вручную или через API. Алгоритм Директа получает не суррогатный сигнал «заявка», а факт: купил или нет. Дальше стратегия обучается на деньгах, а не на количестве обращений — и трафик перестаёт разгонять мусорные лиды.

Зачем передавать офлайн-продажи в Директ

Заявка на сайте — не продажа. Из 100 заявок в услугах и B2B до сделки часто доходит 15–30%, а остальные отваливаются на созвоне, счёте или предоплате. Если стратегия Директа обучается на цели «Заявка отправлена», она приводит трафик, похожий на тех, кто оставляет заявки, — не на тех, кто платит. Передача офлайн-конверсий закрывает этот разрыв: алгоритм видит, какие визиты закончились деньгами, и находит похожую аудиторию.

Разница особенно заметна в нишах с длинным циклом сделки — недвижимость, B2B, медицина, ремонт под ключ. Между кликом и оплатой проходят дни или недели, и звонок обрабатывает не сайт, а менеджер в CRM. Без обратной связи от CRM алгоритм может месяцами держать бюджет на сегменте, который генерирует заявки, но не платит. Речь не про абстрактную «точность» — это конкретные деньги: вы платите за клики независимо от того, купил человек или нет, и чем точнее алгоритм узнаёт, кто платит, тем меньше бюджета уходит на кликающих, но не покупающих пользователей. Подробнее о логике такого подхода — в статье про цену продажи вместо цены лида.

Как работает передача офлайн-конверсий

Схема простая на бумаге: посетитель заходит на сайт, Метрика присваивает визиту ClientID, вы сохраняете его в заявке в CRM, а когда сделка закрывается — отправляете ClientID и статус («Продажа», сумма, дата) обратно в Метрику. Метрика привязывает офлайн-событие к исходному визиту и передаёт его в Директ как конверсию по нужной цели.

Технически это два независимых шага: сбор ClientID на сайте (JS-код счётчика уже это делает, нужно только сохранить значение в скрытое поле формы) и загрузка результата — файлом через интерфейс Метрики или через Offline Conversions API. Задержка между визитом и загрузкой не критична: Метрика принимает офлайн-конверсии с датой визита до 21 дня в прошлом, этого хватает для большинства циклов сделки в рекламе. Важно понимать: офлайн-конверсия не подменяет онлайн-цель, а дополняет её — обе продолжают жить в счётчике параллельно, просто стратегия ориентируется на ту, что ближе к деньгам. Разметка целей и событий для этого настраивается в Центре конверсий — без этого офлайн-данным будет некуда засчитываться.

ClientID — основа связки визита и продажи

ClientID — идентификатор посетителя, который счётчик Метрики генерирует при первом визите и хранит в cookie _ym_uid. Это единственный ключ, по которому офлайн-продажа привязывается обратно к рекламному клику: без него загруженная конверсия останется висеть без источника трафика.

На практике ClientID передают в CRM через скрытое поле формы: JS-код на странице читает ym(ID, 'getClientID', callback) и подставляет значение в поле client_id перед отправкой. Для звонков используется похожая механика через коллтрекинг, где номер подменяется на визит, — большинство сервисов подмены номеров сами прокидывают ClientID в CRM при интеграции с Метрикой. Если сайт держит несколько счётчиков или домен меняется на поддомене, ClientID может теряться — проверяйте, что в CRM он приходит непустым по каждой заявке, иначе часть офлайн-конверсий загрузится без привязки и не попадёт в отчёты Директа. Отдельно стоит учитывать срок жизни cookie: по умолчанию она живёт около года, и если сделка закрывается позже, ClientID в CRM может относиться уже к визиту без активного рекламного контакта.

Формат файла для загрузки конверсий

Для ручной загрузки Метрика принимает CSV или XLSX с четырьмя колонками: ClientID, дата и время конверсии, название цели и опционально сумма сделки. Каждая строка — одна продажа, привязанная к конкретному визиту.

Формат строгий: ClientID берётся ровно тот, что сохранён в CRM на момент визита, дата — в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС, название цели должно совпадать с целью, уже созданной в счётчике. Сумма нужна, если вы хотите, чтобы стратегия оптимизировалась не просто на факт продажи, а на выручку, — тогда в Директе можно включить оптимизацию по ценности конверсии, а не по их количеству. Файл с ошибкой в формате даты или несуществующим ClientID Метрика либо отклонит целиком, либо тихо пропустит проблемные строки — после каждой загрузки стоит свериться со статусом обработки в интерфейсе, а не считать, что раз файл принят, все строки учтены.

Загрузка через интерфейс Метрики

Ручная загрузка подходит небольшим объёмам — до нескольких сотен сделок в месяц: раздел «Загрузка данных → Офлайн-конверсии» в счётчике принимает подготовленный файл и в течение нескольких минут показывает, сколько строк принято и сколько отклонено.

Плюс интерфейса — сразу видно ошибки: неверный формат даты, ClientID без визита, дубликаты. Минус — это ручной процесс: кто-то в компании должен регулярно выгружать закрытые сделки из CRM, приводить к нужному формату и заливать файл, иначе данные копятся с опозданием в недели, а стратегия продолжает работать на старой картине. Для потока в 10–20 заявок в день это ещё терпимо при загрузке раз в неделю. Что выбрать при большем объёме, помогает сравнение ниже.

КритерийФайл через интерфейсOffline Conversions API
Объём сделокдо ~300 в месяцбез ограничения
Задержказависит от частоты ручной выгрузкив день закрытия сделки
Кто настраиваетсотрудник, готовящий файлразработчик или коннектор CRM
Риск ошибокопечатки в датах и ClientIDошибки интеграции, но без ручного ввода

Автоматизация через API

Offline Conversions API Метрики принимает те же данные, что и файл, но по HTTP-запросу — CRM или скрипт-коннектор отправляет закрытые сделки автоматически, без ручной выгрузки. Это снимает задержку и человеческий фактор: сделка закрылась — событие ушло в Метрику тем же днём.

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

Какие цели и стратегии настроить

Под офлайн-конверсии в Метрике создают отдельную цель — обычно «Оплата» или «Сделка закрыта», отдельно от цели «Заявка отправлена». В Директе стратегию переключают на оптимизацию именно по ней, иначе смысл передачи офлайн-данных теряется.

Если сумма сделки различается по товарам или услугам, есть смысл включить оптимизацию по ценности конверсии — тогда алгоритм различает клиента на 5 000 ₽ и клиента на 150 000 ₽ и перераспределяет бюджет в пользу вторых. Для B2B и услуг с длинным циклом на старте разумно держать две цели одновременно: «Заявка» — для набора статистики на этапе обучения, «Оплата» — как целевую для итоговой оптимизации после накопления 10–20 офлайн-конверсий в месяц. Для проектов с длинным решением о покупке разметка целей во многом пересекается с подходом из статьи Директ для B2B — там разобрана логика многошаговых воронок.

Частые ошибки при передаче офлайн-данных

Самая частая ошибка — передавать статус «Заявка принята» вместо «Оплата»: тогда офлайн-конверсия дублирует онлайн-цель и ничего не меняет в обучении стратегии. Вторая по частоте — терять ClientID при передаче звонков или заявок с нескольких форм на сайте.

Дальше по частоте: загружать сделки нерегулярно (раз в квартал вместо еженедельно — алгоритм не успевает подстроиться), не чистить дубликаты при повторной выгрузке (одна и та же продажа попадает в отчёт дважды и завышает конверсию) и переключать стратегию на оптимизацию по офлайн-цели раньше, чем накопилось достаточно данных — меньше 10 конверсий в неделю недостаточно для обучения. Отдельная ошибка — путать источник цели: часть команд настраивает офлайн-конверсии в CRM, но забывает связать цель Метрики с нужным счётчиком в Центре конверсий, и данные технически загружаются, но на обучение стратегии не влияют.

Как проверить, что данные дошли

После загрузки зайдите в отчёт «Конверсии» в Метрике и отфильтруйте по нужной цели за период загрузки — число офлайн-конверсий должно совпасть с числом строк в файле или количеством закрытых сделок за это время. Расхождение означает, что часть ClientID не привязалась к визитам.

В Директе проверка на уровень ниже: в статистике кампаний цель «Оплата» должна показывать не ноль хотя бы для части кампаний спустя пару недель после старта передачи — если цифра стоит на нуле дольше месяца, а сделки в CRM есть, ищите разрыв на этапе сохранения ClientID в форме. Полезная проверка на старте — свериться вручную: взять 5–10 недавних сделок из CRM, найти их в отчёте Метрики по ClientID и убедиться, что дата, сумма и статус совпадают с CRM. Так же, как в A/B-тестах в Директе, доверять цифрам стоит только после ручной проверки выборки, а не сразу после запуска механизма.

Разобрали теорию; практику закрывает Отчёт клиенту по рекламе и сквозная аналитика Директа.

Частые вопросы

Сколько офлайн-конверсий нужно для обучения стратегии?

Ориентир — от 10 конверсий в неделю по целевой цели. Меньше — стратегия Директа не успевает найти закономерность и продолжает оптимизироваться по прежнему сигналу.

Можно ли передавать офлайн-конверсии без CRM, из Excel вручную?

Можно, если менеджер вручную ведёт таблицу закрытых сделок с ClientID. При потоке больше 20–30 заявок в день ручной учёт быстро теряет точность, и удобнее интеграция CRM с Метрикой через API.

Что делать, если у сделки нет ClientID — клиент звонил, а не оставлял заявку?

Нужен коллтрекинг с привязкой звонка к визиту: сервис подменяет номер под каждый визит и после звонка передаёт связанный ClientID в CRM тем же способом, что и заявки с формы.

Как быстро виден эффект после начала передачи офлайн-конверсий?

Первые сигналы в статистике — через 1–2 недели, устойчивое изменение состава трафика — через 4–6 недель: обучение автостратегий требует накопления новой статистики поверх старой.

Влияют ли офлайн-конверсии на стратегии с ручным управлением ставками?

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

Источники

ДС
Денис Смагин →

Специалист по платному трафику: Яндекс Директ и таргет ВКонтакте. 11 лет практики, больше 50 ниш — от угг и мороженого до онлайн-школ и авто. Все статьи пишу из своих проектов.

PRO-кабинет директолога

Это же делается за пару кликов

Разбор из статьи — ручная работа на каждом клиенте. В PRO-кабинете такие проверки идут по расписанию сами, а вам приходит короткий вывод: где поехало и что делать.

Проверьте на своих цифрах
Бесплатные инструменты директолога

Больше 50 бесплатных калькуляторов и аудитов: грейдер аккаунта, чистка площадок, минус-слова из запросов, экономика клиента. Без регистрации.

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