Yandex Metrica Offline Conversions
Renta загружает офлайн-конверсии из вашего хранилища данных в счётчик Яндекс Метрики: каждая строка модели становится конверсией, которую Яндекс привязывает к породившему её визиту.
В строке лежит достигнутая цель, момент конверсии, идентификатор посетителя и её сумма. Сделки, закрытые в CRM, звонки и покупки в офлайн-точках попадают в те же отчёты, что и цели, которые счётчик фиксирует сам.
Аутентификация
Renta авторизуется через Yandex OAuth. Авторизуйте аккаунт Яндекса, у которого есть права на чтение и редактирование нужного счётчика.
Доступ проверяется на уровне аккаунта, а не счётчика. Токен, который открывает аккаунт, но не даёт прав на конкретный счётчик, упадёт уже во время запуска, поэтому авторизуйте пользователя, который видит этот счётчик в Яндекс Метрике.
Подключение назначения Yandex Metrica Offline Conversions
- Перейдите в раздел Connections > Catalog в левом меню и откройте вкладку Destinations.
- Раскройте категорию Reverse ETL и нажмите карточку Yandex Metrica Offline Conversions.

Нажмите Log in to your Yandex Metrica Offline Conversions account. Яндекс откроется в этой же вкладке.

Яндекс перечислит, что будет разрешено сервису Renta, и предложит аккаунт, под которым вы уже вошли. Подтвердите его или нажмите Выбрать аккаунт, чтобы войти под другим. После подтверждения Яндекс вернёт вас в Renta.

Renta покажет выданный доступ и авторизованный аккаунт. Завершите настройку:
- Destination name.
Укажите имя этого назначения. Оно используется тольк о в интерфейсе Renta.
Нажмите Save.

Новое назначение появится в списке Destinations со статусом Active. Теперь его можно использовать в пайплайнах Reverse ETL.

Подготовьте счётчик
Офлайн-конверсия привязывается к цели, и принимает её только цель типа «офлайн-конверсия». Создайте такую цель в Яндекс Метрике заранее, в разделе Настройки > Цели, и запомните её идентификатор. Это число вы замаппите на Target.
Яндекс связывает загруженную конверсию с визитом, который произошёл не более чем на 21 день раньше. Конверсии с более старым DateTime попадут в файл, но останутся несопоставленными, поэтому держите модель в пределах недавнего периода.
Подготовьте модель данных
Пайплайн Reverse ETL читает данные из модели: это SQL-запрос, сохранённый в разделе Data models, который решает, какие строки хранилища синхронизировать и что лежит в каждой строке. Создайте её до пайплайна, потому что выпадающие списки мапп инга заполняются её колонками.
Renta отправляет каждое значение ровно в том виде, в каком его вернул запрос, поэтому за форматы отвечает модель. DateTime должен быть Unix-временем в секундах, а в идентификаторе должно лежать то самое значение, по которому Яндекс знает посетителя.
-- Offline conversions prepared for Yandex Metrica.
-- The query returns rows only, no table is created.
WITH demo_conversions AS (
SELECT
563581883 AS Target,
UNIX_SECONDS(TIMESTAMP '2026-08-12 10:15:00 UTC') AS DateTime,
'1754300001234567890' AS ClientId,
24990.00 AS Price,
'RUB' AS Currency
UNION ALL SELECT 563581883, UNIX_SECONDS(TIMESTAMP '2026-08-12 13:40:00 UTC'), '1754300002234567890', 8450.00, 'RUB'
UNION ALL SELECT 563581883, UNIX_SECONDS(TIMESTAMP '2026-08-13 09:05:00 UTC'), '1754300003234567890', 51200.00, 'RUB'
)
SELECT * FROM demo_conversionsСоздание модели данных
В левом меню откройте Data models и нажмите New model. Дальше:
- Source.
Выберите подключение к хранилищу, к которому пойдёт запрос. - Write your model query.
Вставьте свой SQL. Тип запроса оставьте SQL query. - Run preview.
Проверьте строки и названия колонок. КолонкаDateTimeдолжна вернуться целым числом, поэтому в BigQuery оберните таймстамп вUNIX_SECONDSили используйте аналог из своего хранилища.
В качестве области выберите Reverse ETL only и нажмите Next step.

Проверьте колонки, которые Renta прочитала из запроса, и отметьте ту, что идентифицирует строку. По этому ключу Reverse ETL отличает изменённую строку от новой, и он же предлагается дальше в блоке сопоставления как идентификатор посетителя, поэтому выбирайте колонку с ClientId, UserId или Yclid.
На последнем шаге дайте модели имя и нажмите Create model. Это имя вы выберете в списке Data model при создании пайплайна.

Создание пайплайна Yandex Metrica Offline Conversions
Назначение и модель данных должны существовать до начала настройки.
В левом меню нажмите New pipeline. На шаге Source переключите тумблер в положение Reverse ETL и выберите своё хранилище, например Google BigQuery.

Выберите подключение к хранилищу, в котором лежат ваши модели данных, и нажмите Next step.

На шаге Destination выберите Yandex Metrica Offline Conversions в блоке Already connected и нажмите Next step.

Выберите созданное ранее подключение Яндекса и нажмите Next step.

Настройка пайплайна
На последнем шаге выберите, какой счётчик принимает конверсии и какие колонки их описывают.
Что отправляет Renta
Выберите объект, модель данных и счётчик.

- What would you like Renta to send to Yandex Metrica.
Basic здесь единственный объект. Конверсии по звонкам и чатам загружаются через отдельные методы Яндекса, которые это назначение не использует. - Data model.
Модель для синхронизации. Колонки, доступные для сопоставления и маппинга ниже, берутся из неё. - Counter ID.
Счётчик, которому принадлежат конверсии. В списке все счётчики, доступные авторизованному аккаунту Яндекса.
Сопоставление записей
Укажите, какая колонка идентифицирует посетителя, чтобы Яндекс привязал конверсию к нужной сессии.

Левый список предлагает уникальный ключ модели данных. Правый список предлагает идентификатор Яндекса, в котором лежит то же значение. Renta сама подставляет это значение в каждую загружаемую строку, поэтому в блоке маппинга ниже идентификатор больше не появляется.
Маппинг полей
Свяжите колонки хранилища с остальными полями офлайн-конверсии. Обязательны Target и DateTime, остальное по желанию.

| Поле | Обязательное | Описание |
|---|---|---|
| Target (goal id) | Да | Числовой идентификатор цели типа «офлайн-конверсия» в счётчике. Один пайплайн передаёт одну цель, поэтому замаппьте колонку или отправьте фиксированное значение через + Static. |
| DateTime (Unix time) | Да | Момент конверсии в секундах. По нему Яндекс ищет визит, поэтому время должно быть в прошлом и укладываться в окно 21 день. |
| ClientId, UserId, Yclid, PurchaseId | Один из них, в блоке выше | Идентификатор посетителя, выбирается в How should records be matched?. ClientId присваивает счётчик, UserId это ваш собственный идентификатор, переданный в счётчик, Yclid это идентификатор клика Яндекс Директа, а PurchaseId связывает конверсию с заказом в электронной коммерции. |
| Price | Нет | Сумма конверсии. Попадает в Яндекс Метрику как доход по цели. |
| Currency (ISO 4217) | Нет | Валюта суммы, например RUB или USD. |
Маппить можно только один идентификатор. Яндекс помечает каждый загруженный файл одним типом идентификатора, поэтому пайплайн с замапленными сразу ClientId и UserId не сохранится.
Кнопка + Static отправляет одно и то же значение в каждой строке: так обычно и задают идентификатор цели. Кнопка + Variable отправляет значение запуска, например имя пайплайна.
Поведение синхронизации
Задайте, что происходит с конверсией, чья строка исчезла из модели, и назовите пайплайн.

- When a source row is deleted.
Ignore здесь единственный вариант. У Яндекса нет метода удаления офлайн-конверсий, поэтому исчезновение строки из модели ничего не меняет на его стороне. - Integration name.
Имя вашего пайплайна. Измените его под свои задачи.
Расписание
Выберите, как часто запускается пайплайн.

| Тип расписания | Описание |
|---|---|
| Manual | Пайплайн запускается только вручную через интерфейс или по API. |
| Daily | Пайплайн запускается раз в сутки в указанное время. |
| Interval | Пайплайн запускается через заданные интервалы времени. |
| Cron Expression | Пайплайн запускается по расписанию, заданному cron-выражением. |
Для расписания Daily укажите Update time (точное время старта каждого запуска) и нажмите Create pipeline.
Renta также поддерживает запуск по API и интеграцию с внешними оркестраторами, такими как Apache Airflow, Dagster и Prefect. Подробности в документации по расписаниям.
Новый пайплайн появится в разделе Pipelines на вкладке Reverse ETL, где видно его запуски и прогресс.

Стратегия синхронизации
Renta синхронизирует данные инкрементально. Запуск сравнивает модель с состоянием, которое записал предыдущий запуск, и загружает только те конверсии, которых раньше не было. Первому запуску не с чем сравнивать, поэтому он доставляет модель целиком.
| Состояние строки | Что делает Renta |
|---|---|
| Новая | Загружает конверсию в счётчик. |
| Изменённая | Загружает строку заново с новыми значениями. Яндекс запишет ещё одну конверсию, а не заменит прежнюю. |
| Без изменений | Ничего не отправляет. |
| Удалённая | Ничего не происходит. Загруженную конверсию отозвать нельзя. |
Renta загружает данные файлами до 10 000 строк. Яндекс сначала принимает файл и только потом сопоставляет его с визитами, поэтому запуск считается успешным в момен т приёма файла.
Ограничения
- Конверсии только добавляются.
Загруженное в счётчик нельзя ни исправить, ни удалить. Проверяйте маппинг на маленькой модели, прежде чем направлять пайплайн на всю историю. - Атрибуция обрывается на 21 дне.
Яндекс связывает конверсию только с визитом, который случился в предыдущий 21 день. Более старые строки принимаются и остаются несопоставленными. - Один идентификатор и одна цель на пайплайн.
И тип идентификатора, и идентификатор цели фиксированы для всей загрузки. Чтобы передавать две цели или сопоставлять часть строк поClientId, а часть поYclid, нужны отдельные пайплайны. - Обработка не мгновенная.
Конверсия появляется в отчётах Яндекс Метрики в течение пары часов после приёма файла. Следите за ней в счётчике, а не в Renta. - Запуск останавливается при потоке отказов.
Renta останавливает запуск, когда отклонено больше 30% партии или больше 10% строк, загруженных с начала запуска. Уже принятые конверсии остаются в счётчике, а следующий запуск продолжит с места остановки.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.