- Главная
- Документация
- Сквозная аналитика: звонки, мессенджеры и конверсии
Сквозная аналитика: звонки, мессенджеры и конверсии
Откуда пришли клиенты, которые звонят и пишут. Конверсии в Метрику и ДАРА.
Сквозная аналитика показывает, откуда пришёл клиент, даже если он не заполнил форму, а позвонил или написал в Telegram. Небольшой скрипт на вашем сайте запоминает рекламную кампанию, поисковик или сайт, с которого пришёл посетитель, и связывает его клик по номеру телефона, по кнопке мессенджера или отправку формы с заявкой в CRM. Когда менеджер берёт заявку в работу или закрывает сделку, CRM сама отправляет конверсию в Яндекс Метрику и ДАРА Аналитику. Функция бесплатная и доступна всем компаниям.
Содержание
- Что делает трекер
- Код на сайт и CSP
- Сайты
- Телефонные номера и рекламный номер
- Мессенджеры
- Формы
- Точность привязки
- Блок «Визит» в карточке заявки
- Отчёт «Источники обращений»
- Яндекс Метрика
- ДАРА Аналитика
- Цели и правила конверсий
- Журнал
- Cookie и политика конфиденциальности
- API и MCP
1. Что делает трекер
- Запоминает, откуда пришёл посетитель: метки UTM, рекламу (метки
utm_medium=cpc,ppc,paidили параметрыyclid,gclid), сайт или поисковик, с которого он перешёл, и первую страницу визита. - Когда посетитель нажимает ссылку на номер телефона, кнопку Telegram или MAX или начинает заполнять форму, скрипт отправляет в CRM касание: что нажато, на какой странице и откуда пришёл посетитель. IP-адрес и браузер записывает сервер CRM, а не скрипт.
- Само касание заявку не создаёт. Заявка появляется как обычно: звонком, сообщением в бот, формой. CRM находит касание этого посетителя и заполняет у новой заявки метки UTM, страницу входа, реферер, ClientID Яндекс Метрики и посетителя ДАРА.
- Касания хранятся 30 дней. Данные визита, привязанные к заявке, хранятся вместе с заявкой.
- Скрипт ничего не показывает посетителю и не меняет вид сайта. Если скрипт не загрузился, заявки приходят как раньше, только без данных визита.
Всё настраивает администратор компании: «Настройки компании», вкладка «Трекинг». Разделы вкладки: «Код на сайт», «Сайты», «Телефонные номера», «Мессенджеры», «Яндекс Метрика», «ДАРА Аналитика», «Конверсии», «Журнал». Сотрудникам вкладка не видна.
2. Код на сайт и CSP
- Откройте «Настройки компании» -> «Трекинг», раздел «Код на сайт».
- Сначала добавьте сайт в разделе «Сайты» (ниже): без списка сайтов код ничего не делает.
- Скопируйте код кнопкой «Скопировать» и вставьте его на все страницы сайта: перед закрывающим тегом
</body>или в<head>. Удобнее всего в общий шаблон подвала. - Проверьте, что отмечено «Трекинг включён».
Код выглядит так, вместо ВАШ_КЛЮЧ в кабинете стоит ключ вашей компании:
<script async src="https://crm.linkodium.com/lks/ВАШ_КЛЮЧ.js"></script>
Ключ в коде публичный: им можно только отправить касание с сайтов из вашего списка, прочитать по нему ничего нельзя. Если код попал не туда, нажмите «Новый код вставки»: старый код перестанет работать в течение минуты, поэтому сразу замените его на всех сайтах.
https://crm.linkodium.com в директивах script-src и connect-src. Иначе браузер не загрузит скрипт или не даст ему отправить касание.Скрипт работает только на сайтах из списка. На чужом сайте, куда скопировали ваш код, он ничего не делает, а касания с чужих адресов CRM отклоняет.
3. Сайты
Раздел «Сайты» хранит список адресов, на которых работает код. Нажмите «Добавить сайт», введите «Адрес сайта» и, по желанию, «Название» (его видно в отчётах).
- Адрес пишется без пути:
site.ru. Запись*.site.ruразрешает все поддомены. Если сайт открывается и сwww., добавьте обе записи:site.ruи*.site.ru. - У компании может быть до 20 сайтов. У каждого сайта свой счётчик Метрики и свой ключ ДАРА: их задают кнопкой «Изменить» (раздел 10, раздел 11).
- Удаление сайта не удаляет заявки и их визиты, только сайт пропадает из них. Номера, привязанные к сайту, остаются без сайта.
4. Телефонные номера и рекламный номер
В разделе «Телефонные номера» перечислите номера, которые стоят на ваших сайтах. Для каждого номера задаются «Как показывать», «Сайт», «Источник», «Услуга», «Рекламный» и «Включён». До 50 номеров.
Ваша телефония передаёт в CRM номер, на который звонил клиент (поле line в звонке). Когда звонок создаёт новую заявку, источник и услуга берутся так: сначала из самого звонка, если прослойка АТС их передала, затем из строки этого номера, иначе источник «Звонок». Так прослойке не нужно знать, какой номер к какому сайту относится: достаточно передавать line.
Номер записывается цифрами, от 10 до 15. Номер из 11 цифр с 8 в начале CRM переводит в 7, номер из 10 цифр дополняет семёркой: 8 (342) 225-02-94, +7 342 225 02 94 и 3422250294 означают один номер.
Рекламный номер
Можно завести отдельный постоянный номер для посетителей из рекламы. Тогда звонки с рекламы видны отдельно, даже если клиент не нажимал номер, а набрал его вручную.
- Добавьте рекламный номер, отметьте «Рекламный» и выберите, какой обычный номер того же сайта он заменяет.
- Отметьте «Показывать рекламный номер посетителям из рекламы (cookie на 90 дней)».
Посетитель, пришедший из рекламы, получает cookie lkt_ad на 90 дней с последнего рекламного захода. Всё это время скрипт показывает ему рекламный номер вместо обычного: в ссылках tel: и в тексте этих ссылок. Если номер на странице написан не ссылкой, добавьте элементу с номером атрибут data-lkt-phone, и скрипт заменит и его. Остальные посетители видят обычный номер. Динамической подмены номеров из пула нет: у сайта один обычный номер и, по желанию, один рекламный.
5. Мессенджеры
Раздел «Мессенджеры» показывает ботов Telegram и MAX, подключённых к чатам CRM (Telegram-бот, бот MAX).
- С отметкой «Подставлять метку в ссылки t.me на бота» скрипт дописывает к ссылкам на вашего бота (
https://t.me/имя_бота,telegram.me,tg://resolve?domain=имя_бота) метку:?start=lk_и 16 случайных символов. Для MAX такая же отметка появляется, когда бот MAX подключён; меняются только ссылки на бота видаmax.ru/имя_бота, личные ссылкиmax.ru/u/...скрипт не трогает. - Клиент нажимает кнопку, Telegram открывает бота, клиент нажимает «Старт», и бот получает метку. CRM находит по ней касание и создаёт заявку с точностью «Точно» и данными визита. Источником заявки остаётся название канала.
- Если у ссылки уже есть свой параметр
start, ссылка не переписывается: ваша метка важнее. Клик всё равно записывается касанием, но привязать его к заявке нельзя. - Если у клиента уже есть активная заявка, сообщение попадает в неё, как и раньше. Визит дописывается к ней, только если клиент пришёл по ссылке с меткой, а у заявки визита ещё не было.
Метка, которая не похожа на метку трекера (например, ваша ?start=promo), обрабатывается как прежде: попадает в источник и метку кампании заявки.
6. Формы
С отметкой «Передавать метку в формы (скрытое поле lkt_token)» скрипт добавляет в каждую форму сайта скрытое поле lkt_token и отправляет касание, когда посетитель начинает заполнять форму или отправляет её. Ещё скрипт заполняет уже существующие пустые поля формы utm_source, utm_medium, utm_campaign, utm_term, utm_content и ym_client_id; других полей он не создаёт.
Форма отправляется на ваш сервер, а он передаёт заявку в CRM (документация API). Чтобы CRM связала заявку с визитом, сервер должен передать значение поля lkt_token в поле tracking_token запроса POST /api/v1/leads или /api/lead.add. Обычно это одна строка в массиве заявки:
$lead = [
'name' => $_POST['name'] ?? '',
'phone' => $_POST['phone'] ?? '',
'form_page' => $_SERVER['HTTP_REFERER'] ?? '',
'tracking_token' => $_POST['lkt_token'] ?? '',
];
// дальше как раньше: POST /api/v1/leads с ключом API
$ch = curl_init('https://crm.linkodium.com/api/v1/leads');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($lead, JSON_UNESCAPED_UNICODE),
CURLOPT_HTTPHEADER => ['Content-Type: application/json', 'X-API-Key: ' . getenv('CRM_API_KEY')],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 15,
]);
$body = curl_exec($ch);
- Если форма собирается целиком (
new FormData(form)), полеlkt_tokenуже уходит на ваш сервер, менять код страницы не нужно. - Пустое или неверное значение
tracking_tokenCRM молча пропускает: заявка из-за него не теряется. - Если поля нет, но в заявке есть метки UTM, страница входа или ClientID, визит всё равно записывается с точностью «Точно» по этим данным.
7. Точность привязки
У каждого визита есть точность: насколько уверенно CRM связала заявку с посетителем сайта.
| Точность | Когда |
|---|---|
| «Точно» | Заявка пришла по ссылке с меткой (Telegram, MAX) или из формы с полем lkt_token, и касание найдено. Сюда же формы и чат на сайте, которые сами передали метки UTM, страницу или ClientID. |
| «Вероятно» | Звонок: за 10 минут до начала звонка (или в первую минуту после) на сайте был ровно один клик по этому номеру. В пояснении будет, например, «Вероятно, по клику на номер в 14:02». |
| «Нет данных» | Касание не найдено: клиент набрал номер сам, перешёл в бот не с сайта, кликов по номеру было несколько («Несколько кликов на номер за 10 минут до звонка», без привязки) или звонок исходящий. |
Правило для звонков:
- Если у клиента уже есть активная заявка с этим номером, звонок попадает в неё, как и раньше. Визит при этом не пишется.
- Если звонок создал новую заявку, CRM ищет клики по ссылке
tel:с тем же номером, на который звонил клиент (по последним 10 цифрам), за 10 минут до начала звонка. Ровно один клик, ещё не привязанный к другому звонку: «Вероятно». Два и больше: «Нет данных», чтобы не приписать звонок чужому визиту. - Нет кликов: заявка получает источник и услугу из строки номера (раздел 4), точность «Нет данных».
Бывает, что заявка приходит раньше касания: например, клиент очень быстро нажал «Старт» в боте. Тогда CRM ждёт касание до 30 минут и сама уточняет точность до «Точно», когда оно придёт. Если касания так и нет, в пояснении будет «Касание по ссылке не найдено».
8. Блок «Визит» в карточке заявки
В карточке заявки под блоком «Аналитика» появляется блок «Визит» с отметкой точности. В нём только заполненные строки:
- «Способ»: Форма, Звонок, Telegram, MAX, Виджет или API;
- «Сайт» и «Канал» (реклама, поиск, соцсети и другие, раздел 9);
- «Клик»: время клика; «Номер»: на какой номер звонили (только у звонков);
- «Пояснение»: почему точность именно такая;
- метки UTM, «Реферер», «Страница входа», «Страница клика», «Первое касание» (откуда посетитель пришёл в самый первый раз);
- «ClientID Метрики», «Посетитель ДАРА», «IP» и «Браузер»;
- «Конверсии»: что отправлено в Метрику и ДАРА, что ждёт отправки, что пропущено и почему.
Блок видят все сотрудники, которым видна заявка. Визит записывается у новых заявок из звонков, Telegram, MAX, чата на сайте, форм и API. У заявок, созданных вручную, импортом и из почты, блока нет. Заявки, пришедшие до подключения трекинга, визита не получают.
В той же карточке есть поле «Сумма сделки»: оно уходит ценой конверсии «Сделка» (раздел 12).
9. Отчёт «Источники обращений»
На дашборде внизу есть отчёт «Источники обращений» за выбранный период: по умолчанию последние 30 дней, даты «С» и «по» меняются над таблицей. Строки разбиты по сайту, каналу, способу обращения и точности; в каждой строке число заявок (без спама), спам, «Успешно», конверсия в «Успешно» и сумма выигранных сделок. Под таблицей две сводки: по каналам и по способам. Отчёт считает только заявки, которые видит сотрудник.
Канал вычисляется из данных визита по правилам, в таком порядке:
| Канал | Когда |
|---|---|
| «Реклама» | посетитель пришёл из рекламы или utm_medium равен cpc, ppc, paid, cpm |
| «Рассылки» | utm_medium равен email, newsletter, mail |
| «Соцсети» | utm_medium равен social, smm или переход из ВКонтакте, Одноклассников, Telegram, Дзена, YouTube и других соцсетей |
| «Поиск» | переход из Яндекса, Google, Bing, Поиска Mail.ru, DuckDuckGo и других поисковиков |
| «Метки UTM» | есть utm_source, но ни одно правило выше не подошло |
| «Переходы с сайтов» | переход с другого сайта |
| «Прямые заходы» | визит найден, но ни меток, ни перехода нет |
| «Нет данных» | точность «Нет данных» или визита нет |
10. Яндекс Метрика
CRM отправляет в Метрику офлайн-конверсии: заявка взята в работу, сделка закрыта. Так рекламная кампания в Директе видит не только звонок или форму, но и итог работы менеджера.
- Откройте «Настройки компании» -> «Трекинг», раздел «Яндекс Метрика», и нажмите «Подключить Яндекс Метрику».
- Откроется страница Яндекса. Войдите в аккаунт, у которого есть право редактировать нужные счётчики, и разрешите доступ приложению «Linkodium CRM».
- Яндекс вернёт вас в CRM. Через несколько секунд в разделе появится аккаунт и срок токена. Если Яндекс долго не отвечает, обновите страницу через минуту.
- В разделе «Сайты» нажмите «Изменить» у каждого сайта и выберите «Счётчик Метрики» из списка счётчиков подключённого аккаунта.
Цели в счётчике CRM создаёт сама: crm_lead «CRM: обращение», crm_qualified «CRM: квалифицированная заявка», crm_deal «CRM: сделка». С отметкой «Отправлять клики по номеру и мессенджерам целями (phone_click, tg_click, max_click)» ещё phone_click, tg_click и max_click: скрипт отправляет их в счётчик прямо со страницы в момент клика. Если ваш сайт уже сам отправляет такие цели, снимите отметку, иначе клики посчитаются дважды. Если у аккаунта нет права менять счётчик, у сайта будет «Нет прав на изменение счётчика».
- Токен вручную. Если кнопка не подходит, выберите «Ввести токен вручную»: подсказка рядом даёт адрес, где Яндекс выдаёт токен. Такой токен CRM не продлевает: когда он истечёт, в разделе будет «Яндекс не принял токен. Подключите Метрику заново.».
- Продление. Токен, полученный кнопкой, CRM продлевает сама.
- Новые счётчики. Кнопка «Обновить счётчики» заново читает список счётчиков аккаунта и проверяет цели.
- Отключение. «Отключить» удаляет токен из CRM и сбрасывает счётчики у сайтов; неотправленные конверсии в Метрику больше не уйдут.
- Приложение. В мобильном приложении кнопки подключения нет, вместо неё подсказка «Подключите Яндекс Метрику с компьютера: в приложении вход в Яндекс недоступен.». Ввести токен вручную в приложении можно.
Метрика связывает конверсию с посетителем по ClientID. Скрипт берёт его из cookie счётчика Метрики на вашем сайте, поэтому счётчик должен стоять на тех же страницах, что и код трекинга.
11. ДАРА Аналитика
Конверсии в ДАРА Аналитику отправляются по ключам API ваших сайтов в ДАРА. Ключи задаются у сайтов: в разделе «Сайты» нажмите «Изменить» и заполните «Ключ ДАРА».
- Ключ сайта начинается с
ak_. Ключ аккаунта начинается сaa_: для него заполните ещё «Сайт ДАРА (для ключа aa_)», то есть uuid сайта в ДАРА. - CRM проверяет ключ и сама создаёт в ДАРА цели с теми же кодами:
crm_lead,crm_qualified,crm_deal, а с отметкой «Отправлять клики целями ДАРА» в разделе «ДАРА Аналитика» ещёphone_click,tg_click,max_click. - После сохранения ключ больше не показывается, ни в кабинете, ни в API: видны только первые и последние знаки, например
ak_...Xy9Z, и состояние («работает» или ошибка).
ДАРА связывает конверсию с посетителем по его идентификатору, который скрипт берёт из cookie ДАРА на вашем сайте: тег ДАРА должен стоять на тех же страницах.
12. Цели и правила конверсий
Раздел «Конверсии» выбирает, что и куда отправлять.
| Цель | Когда отправляется |
|---|---|
«Обращение» (crm_lead) | новая заявка выбранным способом. По умолчанию для звонков, Telegram, MAX и чата на сайте; для форм и API выключено, потому что формы обычно сами отправляют цель со страницы. |
«Квалифицированная заявка» (crm_qualified) | первый переход из «Новой заявки» в любой этап, кроме «Спама». |
«Сделка» (crm_deal) | первый переход в «Успешно», с суммой сделки. |
Отметки «Отправлять в Метрику», «Отправлять в ДАРА» и «Отправлять по вероятной привязке звонка» включают и выключают приёмники и конверсии по визитам с точностью «Вероятно». Валюта суммы по умолчанию RUB.
- Каждая цель уходит один раз на заявку в каждый приёмник. Повторный перевод в «В работе» или «Успешно» второй конверсии не даёт.
- Метрика не принимает конверсии старше 21 дня. Такие конверсии пропускаются, их число видно в строке «За 30 дней».
- Отправленную конверсию отозвать нельзя: если заявку потом отметить спамом, конверсия останется в Метрике и ДАРА.
- «Сделка» уходит через 15 минут после перехода в «Успешно», чтобы менеджер успел вписать сумму. Отправляется сумма, которая стоит в заявке в этот момент; сумма, вписанная позже, в Метрику и ДАРА уже не попадёт. Если к этому моменту заявку вернули из «Успешно», «Сделка» не отправляется; «Квалифицированная заявка» не отправляется, если заявку уже отметили спамом.
- Если счётчик сайта не принимает конверсии (нет прав), в разделе сайта видна ошибка счётчика; конверсии этого сайта ждут, пока доступ не вернут и не нажмут «Обновить», остальные сайты отправляются как обычно.
- Для отправки нужен ClientID Метрики или посетитель ДАРА из визита (у форм ещё ClientID из самой заявки). Если его нет, CRM ждёт до часа (визит может уточниться), затем пропускает конверсию с причиной «нет ClientID или посетителя».
- Конверсия уходит в счётчик и ключ сайта, с которого пришёл посетитель. Если сайт не определён по визиту, CRM берёт сайт номера, затем сайт страницы формы, затем единственный сайт компании.
- Старые заявки не отправляются: конверсии считаются только по событиям после подключения Метрики или ДАРА.
13. Журнал
Раздел «Журнал» на той же вкладке показывает последние события трекинга: вкладка «Касания» (клики по номерам, мессенджерам и формам с отметкой, к какой заявке они привязаны), «Заявки» (визиты новых заявок) и «Конверсии» (отправлено, ждёт, пропущено с причиной, ошибка). Конверсию с ошибкой можно отправить заново кнопкой «Повторить».
14. Cookie и политика конфиденциальности
Скрипт ставит на вашем сайте три cookie. Персональных данных в них нет: только метки, адреса страниц и время.
| Cookie | Что хранит | Срок |
|---|---|---|
lkt_ft | первое касание: откуда посетитель пришёл в первый раз; пишется один раз | 90 дней |
lkt_lt | последнее касание с метками, рекламой или переходом с другого сайта | 90 дней |
lkt_ad | отметка, что посетитель пришёл из рекламы (для рекламного номера) | 90 дней с последнего рекламного захода |
Safari ограничивает срок cookie, поставленных скриптом, 7 днями. Поэтому у посетителей Safari первое касание и рекламный номер живут не 90 дней, а неделю с последнего захода.
В политике конфиденциальности сайта упомяните, что сайт использует трекер Linkodium CRM и cookie lkt_*.
15. API и MCP
- Визит заявки, отчёт «Источники обращений», поле
tracking_tokenформы и полеamount(сумма сделки): документация API. - Все настройки вкладки «Трекинг» (сайты, номера, Метрика, ДАРА, конверсии, журналы) для администратора: API компании.
- ИИ-ассистент может показать состояние трекинга, визит заявки и отчёт по источникам: MCP. IP-адрес и браузер посетителя ассистенту не отдаются.