Интеграция Битрикс24 с Яндекс.Метрикой

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Интеграция Битрикс24 с Яндекс.Метрикой
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1173
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    745
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Интеграция Битрикс24 с Яндекс.Метрикой

Яндекс.Метрика показывает трафик, Битрикс24 показывает сделки. Между ними — пропасть: непонятно, какие именно визиты конвертируются в выручку. Интеграция закрывает этот разрыв и позволяет оптимизировать рекламу по реальным продажам, а не по заявкам.

Два уровня интеграции

Первый уровень: передача офлайн-конверсий — отправка данных о сделках из Битрикс24 в Яндекс.Метрику как офлайн-конверсии. Метрика обогащает данные: видно, из каких источников и кампаний пришли клиенты, которые реально купили.

Второй уровень: ClientID в CRM — запись _ym_uid (ClientID Метрики) в поле сделки при создании лида. Позволяет из CRM открыть конкретную сессию в Метрике и увидеть полный путь клиента на сайте.

Передача офлайн-конверсий в Яндекс.Метрику

Схема: при переходе сделки в стадию «Победа» данные отправляются в Метрику через API офлайн-конверсий.

Метрика принимает офлайн-конверсии через метод POST /upload/v1/counter/{counterId}/goals/upload. Формат запроса:

{
  "Hits": [
    {
      "ClientId": "{{ _ym_uid клиента }}",
      "DateTime": "2026-03-13T10:00:00",
      "Target": "deal_won",
      "Price": 150000,
      "Currency": "RUB"
    }
  ]
}

Реализация через кастомный робот CRM (см. статью про разработку кастомных роботов): при переходе на стадию «Победа» робот читает поле сделки с ClientID, формирует запрос к API Метрики.

Авторизация в API Метрики: OAuth-токен с правами metrika:write. Токен хранится в настройках модуля или в переменных среды на сервере.

Запись ClientID в сделку

Это ключевая часть, которую нужно реализовать на сайте при отправке формы. JavaScript собирает _ym_uid из куки:

function getYmClientId() {
    const match = document.cookie.match(/_ym_uid=([^;]+)/);
    return match ? match[1] : null;
}

// При отправке формы
const formData = {
    name: document.getElementById('name').value,
    phone: document.getElementById('phone').value,
    ym_client_id: getYmClientId(),
    // ... другие поля
};

На сервере при создании лида через REST API:

$client->call('crm.lead.add', [
    'fields' => [
        'TITLE'                   => 'Заявка с сайта',
        'UF_CRM_YM_CLIENT_ID'     => $formData['ym_client_id'],
        'UTM_SOURCE'              => $_GET['utm_source'] ?? '',
        'UTM_CAMPAIGN'            => $_GET['utm_campaign'] ?? '',
        // ...
    ],
]);

Поле UF_CRM_YM_CLIENT_ID создаётся вручную в настройках CRM: строковое поле на лиде и сделке. При конвертации лида в сделку поле копируется (если правильно настроить — см. статью про источники лидов).

Проблема с multi-touch атрибуцией

Метрика по умолчанию использует атрибуцию по последнему клику. Для правильного расчёта ценности рекламных каналов это приводит к недооценке брендинговых кампаний (которые формируют спрос, но не закрывают конверсию) и переоценке ретаргетинга.

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

Синхронизация аудиторий

Метрика позволяет создавать сегменты аудиторий на основе офлайн-конверсий: «клиенты, заплатившие более 100 000 руб.», «клиенты, купившие 2+ раза». Эти аудитории передаются в Яндекс.Директ как Look-alike или для ретаргетинга.

Создание сегмента: Метрика → Аудитории → Загрузить данные → Офлайн-конверсии. Выбирается цель deal_won, строится сегмент. Экспортируется в Директ.

Реальный кейс: оптимизация контекстной рекламы по выручке

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

Решение: офлайн-конверсии с передачей суммы сделки в Метрику. Настроили передачу двух событий: lead_qualified (при квалификации лида менеджером) и deal_won (при победе в сделке с суммой).

Что увидели: из трёх кампаний Директа кампания «общие ключи» давала 40% заявок, но только 10% выручки. Кампания «бренд конкурентов» давала 15% заявок и 35% выручки. Без офлайн-конверсий это было невидимо.

Результат: перераспределили бюджет, CPA по выручке снизился на 28% за два месяца.

Сроки интеграции

Задача Время
Реализация передачи ClientID с форм сайта 1–2 дня
Разработка кастомного робота для отправки в Метрику 2–3 дня
Настройка сегментов аудиторий в Метрике 1 день
Тестирование цепочки и верификация данных 1–2 дня

Полная интеграция — 1–2 недели с учётом тестирования корректности передачи данных.