Как отследить, откуда пришёл клиент в WhatsApp: полный гайд по сквозной аналитике мессенджеров для бизнеса в Казахстане и СНГ
Если у вашего бизнеса есть WhatsApp для продаж, вы наверняка знакомы с этой картиной: в конце месяца маркетолог показывает отчёт по рекламе, отдел продаж показывает отчёт по сделкам — и эти два отчёта никак не бьются друг с другом. В CRM тридцать новых диалогов в WhatsApp. Откуда они пришли — из Instagram, из карточки в 2GIS, с сайта, по старой визитке или по сарафанному радио — никто сказать не может. А значит, никто не может ответить и на главный вопрос: какая реклама реально приносит деньги, а какая просто сжигает бюджет.
Это не проблема конкретно вашей компании. Это системная дыра почти у любого бизнеса в Казахстане и СНГ, который продаёт через мессенджеры: клиники, автосервисы, онлайн-школы, застройщики, магазины мебели, специалисты в найме. Реклама — цифровая и измеримая, WhatsApp — тёплый, живой, но по умолчанию «слепой» канал. В этой статье разберём, почему так происходит, сколько это стоит бизнесу в реальных деньгах и как выстроить трекинг заявок из WhatsApp — от простых бесплатных решений до полноценной сквозной аналитики с передачей данных обратно в рекламные кабинеты.
Почему WhatsApp — «слепая зона» маркетинга
Чтобы понять масштаб проблемы, нужно вспомнить, как вообще работает веб-аналитика. Когда человек попадает на сайт, браузер оставляет цифровой след: cookie, UTM-метки в адресной строке, referrer — откуда он пришёл. Google Analytics, Яндекс.Метрика, рекламные пиксели Meta — все они «видят» этот путь и умеют сказать: этот визит пришёл из рекламной кампании «Instagram — акция на услугу Х», а вот этот — из органического поиска.
WhatsApp работает принципиально иначе. Это не веб-страница, а отдельное приложение со своим протоколом. Когда человек нажимает кнопку «Написать в WhatsApp» в рекламе или переходит по ссылке wa.me, открывается чат — и вся та цифровая история, которую бизнес видел на сайте, обрывается. С точки зрения CRM или WABA-провайдера (WhatsApp Business API) это просто новое входящее сообщение: имя, номер телефона, текст. Источник трафика в это сообщение технически не встроен — если бизнес специально не позаботился о том, чтобы его туда протащить.
Отсюда возникает то, что можно назвать «атрибуционным разрывом»: на этапе клика по рекламе у вас ещё есть полные данные (какая кампания, какое объявление, какая аудитория), а на этапе появления лида в CRM этих данных уже нет. Формально путь клиента выглядит так:
Реклама (Instagram/Facebook/TikTok/Google) → клик → открытие WhatsApp → сообщение → чат в CRM → сделка → оплата
Разрыв происходит именно между «кликом» и «сообщением». И чем длиннее и извилистее путь клиента — а в Казахстане и СНГ он часто идёт через 2GIS, карточки в Instagram, скриншоты, пересланные друзьями, — тем сильнее размывается связь между тем, что вы оплатили в рекламном кабинете, и тем, что в итоге принесло деньги.
Есть и вторая часть проблемы, характерная именно для нашего региона: значительная доля сделок закрывается офлайн или через оплату, которая физически не связана с рекламным кабинетом — Kaspi Pay, перевод на карту, наличные при получении. Даже если вы каким-то образом узнали источник лида, вы часто не знаете, дошёл ли он до оплаты и на какую сумму, потому что деньги прошли мимо той системы, которая могла бы это зафиксировать.
В результате бизнес принимает решения о рекламном бюджете почти вслепую: увеличивает бюджет на кампанию, которая на самом деле не продаёт, и сокращает ту, которая тихо, без фанфар, приносит основную выручку через WhatsApp.
Что теряет бизнес, когда не видит источник заявки
Разберём это не абстрактно, а на цифрах — на условном, но реалистичном примере среднего бизнеса в Алматы.
Допустим, компания (например, стоматологическая клиника или автосервис) тратит на рекламу 500 000 тенге в месяц, разделив бюджет между тремя каналами: Instagram Ads, TikTok Ads и Google Ads. За месяц реклама генерирует 150 переходов в WhatsApp. Из них 40 превращаются в реальных клиентов со средним чеком 35 000 тенге. Итоговая выручка от рекламы — 1 400 000 тенге, ROMI (окупаемость маркетинговых инвестиций) — 180%. На бумаге всё неплохо.
Проблема в том, что без атрибуции по каналам эти 40 клиентов равномерно «размазываются» между тремя источниками в голове маркетолога — интуитивно, по ощущениям, а не по данным. И вот что происходит в реальности, если разложить эти же 40 клиентов по фактическим источникам (условные, но типичные пропорции):
- Instagram Ads: бюджет 200 000 тг → 25 клиентов → выручка 875 000 тг → ROMI 337%
- TikTok Ads: бюджет 150 000 тг → 4 клиента → выручка 140 000 тг → ROMI –7% (по сути в минусе с учётом себестоимости услуги)
- Google Ads: бюджет 150 000 тг → 11 клиентов → выручка 385 000 тг → ROMI 157%
Без атрибуции по каналам собственник видит общий ROMI 180% и продолжает вкладывать в TikTok, потому что «в целом всё работает». С атрибуцией видно: TikTok в этой конкретной связке практически не окупается, и 150 000 тенге в месяц (1,8 млн тенге в год) можно смело перераспределить в Instagram, где отдача втрое выше. Это не гипотетическая экономия «на бумаге» — это реальные деньги, которые каждый месяц утекают туда, где не работают, просто потому, что никто не может доказать, что не работают именно они.
Есть и вторая, менее очевидная потеря — качество данных для оптимизации самой рекламы. Алгоритмы Meta и Google обучаются на конверсиях: чем больше точных сигналов «это привело к продаже» они получают, тем точнее находят похожую аудиторию и тем дешевле становится лид со временем. Если конверсии из WhatsApp никак не попадают обратно в рекламный кабинет, алгоритм оптимизируется вслепую — по кликам и переписке, а не по реальным продажам. Это системно завышает стоимость лида на всех кампаниях, даже тех, что в моменте выглядят прибыльными.
Три способа трекинга заявок из WhatsApp
Есть три базовых подхода к тому, чтобы вернуть видимость источника лида. Они не взаимоисключающие — часто имеет смысл комбинировать два из трёх.
1. Уникальные номера WhatsApp на каждый канал
Самый простой в понимании способ: завести отдельный номер WhatsApp (или отдельную ссылку wa.me) под каждый рекламный канал или даже под каждую кампанию. Реклама в Instagram ведёт на номер А, в TikTok — на номер Б, ссылка на сайте — на номер В.
Плюсы: предельная простота и надёжность — источник виден сразу по тому, куда написал человек, без дополнительных технических настроек, работает даже без интеграции с CRM.
Минусы: плохо масштабируется — если у вас пять кампаний и три канала, нужно пятнадцать номеров, что физически неудобно и требует отдельных SIM-карт или WABA-подключений (каждое из которых имеет свою стоимость подтверждения и модерации). Клиент, однажды сохранивший номер, при повторном обращении может написать не на тот номер, откуда пришёл изначально, что искажает статистику повторных обращений. Плохо подходит, когда у бизнеса много одновременных кампаний с частой ротацией креативов.
Когда использовать: оптимально для бизнеса с 2–4 стабильными каналами трафика, которые не меняются каждую неделю (например: отдельно сайт, отдельно Instagram, отдельно офлайн-точка).
2. UTM-метки через короткие ссылки на wa.me
Более гибкий способ: вместо прямой ссылки на WhatsApp используется короткая ссылка-редирект (например, через собственный домен или сервис сокращения ссылок), которая при переходе прокидывает параметры кампании — а затем перенаправляет в WhatsApp с предзаполненным сообщением, содержащим скрытый код источника.
Технически это выглядит так: пользователь кликает по ссылке вида cheat-code.kz/wa/ig-promo1, редирект фиксирует переход (канал, кампанию, дату, иногда даже cookie/клик-ID) и перенаправляет на wa.me/77771234567?text=Здравствуйте!%20Интересует%20акция%20[ig-promo1]. Клиент видит обычное сообщение, но в нём (или в параметрах перехода) зашит код источника.
Плюсы: один номер WhatsApp обслуживает неограниченное число кампаний и креативов; данные о переходе можно сохранять отдельно от самого сообщения и сопоставлять аналитически; легко масштабируется на любое количество объявлений.
Минусы: требует технической настройки (генератор ссылок, редиректор, а в идеале — связка с CRM для автоматического сопоставления); если предзаполненный текст сообщения человек стирает или переписывает, автоматическое сопоставление по тексту сообщения ломается — нужно опираться на сам факт перехода по конкретной ссылке, а не только на текст.
Когда использовать: это рабочая лошадка для бизнеса с активной таргетированной рекламой и большим количеством одновременных кампаний — то есть для большинства компаний, серьёзно вкладывающихся в перформанс-маркетинг.
3. Вопрос-квалификатор в диалоге
Третий способ — не технический, а организационный: менеджер (или чат-бот) в начале переписки задаёт уточняющий вопрос или вежливо просит подтвердить источник обращения — либо это делается автоматически через приветственное сообщение с кнопками выбора («Как вы о нас узнали?», «Из какого объявления вы к нам пришли?»).
Плюсы: не требует никакой технической интеграции, работает как страховка для всех остальных методов — люди иногда сохраняют номер и пишут повторно спустя месяцы, и в этом случае только прямой вопрос восстановит источник; полезен для верификации, совпадают ли данные автоматического трекинга с реальностью.
Минусы: зависит от человеческого фактора — менеджер может забыть спросить или не занести ответ в CRM; часть клиентов не помнит точно, откуда пришла, особенно если между кликом и обращением прошло время; данные менее точны, чем при автоматическом трекинге, и плохо подходят для расчёта ROMI на уровне отдельных объявлений.
Когда использовать: как дополнение к автоматическим методам (особенно для верификации и «ловли» тех, кто пришёл нестандартным путём), но не как единственный способ — на человеческую память полагаться в аналитике рискованно.
Практический вывод: для большинства бизнесов в Казахстане и СНГ оптимальна комбинация методов 2 и 3 — автоматический трекинг через UTM/короткие ссылки как основной источник данных, и вопрос-квалификатор как страховочная сетка для случаев, когда автоматика не сработала.
Технически: как UTM доходит до CRM через Wazzup и мессенджер-виджеты
Разберём механику подробнее, потому что именно здесь чаще всего теряется понимание — «а как это вообще технически работает».
Ключевое звено — интеграторы вроде Wazzup, которые связывают WhatsApp Business (или WABA — WhatsApp Business API) с CRM-системой (например, Bitrix24, amoCRM). Сам по себе WhatsApp не умеет передавать в CRM ничего, кроме текста сообщения, имени и номера отправителя. Все дополнительные данные об источнике должны попасть в диалог одним из следующих путей:
Путь через виджет на сайте. Если клиент пишет через кнопку WhatsApp, встроенную на сайт (а не через прямую ссылку в рекламе), у виджета есть доступ к той же информации, что видит сайт: UTM-метки текущей страницы, referrer, иногда — история предыдущих визитов через cookie. Хорошо настроенный виджет (у Wazzup, Callibri, JivoSite и аналогичных сервисов есть такая функциональность) может автоматически подставлять эти данные в служебное поле, которое затем при создании лида в CRM записывается в отдельное свойство сделки — например, UTM_SOURCE, UTM_CAMPAIGN. Менеджер и аналитик видят эти поля прямо в карточке сделки в Bitrix24, не открывая переписку.
Путь через click-to-WhatsApp рекламу (без сайта). Здесь пользователь никогда не заходит на сайт — он кликает прямо из ленты Instagram или TikTok на кнопку «Отправить сообщение», и сразу открывается WhatsApp. В этом случае у Meta есть встроенный механизм: при клике по такой рекламе к первому сообщению автоматически прикрепляется технический идентификатор ctwa_clid (click-to-WhatsApp click ID) — Meta передаёт его в составе служебного payload вместе с сообщением через webhook API. Именно этот идентификатор — ключевой мостик между рекламным кабинетом и CRM: если WABA-провайдер (Gupshup, Wazzup и подобные) корректно принимает и прокидывает это поле дальше в CRM, у вас появляется техническая возможность связать конкретный диалог с конкретным объявлением, вплоть до ad set и креатива — без ручных UTM-меток вообще. Это более надёжный метод для рекламы, ведущей напрямую в WhatsApp, но требует, чтобы связка «рекламный кабинет → WABA-провайдер → CRM» была настроена именно под передачу этого идентификатора, а не только текста сообщения.
Путь через короткие ссылки-редиректоры. Как описано выше — отдельный сервис или скрипт на вашем домене фиксирует переход по короткой ссылке до того, как перенаправить в WhatsApp, и сохраняет связку «код ссылки → канал/кампания» в своей базе. Дальше сопоставление с диалогом в CRM происходит либо по времени перехода плюс номеру телефона (если провайдер это поддерживает), либо по коду в предзаполненном тексте сообщения, который менеджер или автоматика считывает при создании лида. Мы разбирали похожий принцип — только применительно к прокидыванию меток клика по объявлению прямо в сделку CRM — в статье про сквозную аналитику WhatsApp: там показано, как это выглядит уже собранным в готовый дашборд.
Важный практический момент: сама по себе интеграция Wazzup (или аналога) с CRM решает только техническую часть — «переписка появляется как лид в Bitrix24». Она не решает автоматически задачу атрибуции, если её отдельно не настроить: нужно явно прописать, в какое поле сделки записывается источник, и протестировать всю цепочку на реальном клике, а не полагаться на то, что «интеграция сама разберётся».
Модели атрибуции для мультиканального пути
Ещё один слой сложности: реальный путь клиента редко состоит из одного касания. Классический сценарий в Казахстане и СНГ выглядит так: человек увидел рекламу в Instagram → не сразу написал, а вечером посмотрел отзывы на карточке компании в 2GIS → на следующий день, уже приняв решение, написал в WhatsApp прямо со страницы 2GIS или просто набрал номер, который где-то сохранил.
Кому в этом случае «засчитать» конверсию — Instagram Ads, который изначально познакомил человека с брендом, или 2GIS, откуда произошло непосредственное обращение? Ответ зависит от модели атрибуции, которую вы выбираете:
- First Click (по первому касанию). Вся заслуга отдаётся первому каналу, с которым столкнулся клиент — в примере выше это Instagram Ads. Хорошо показывает, какие каналы приводят новых людей в воронку, но недооценивает каналы, которые «дожимают» решение.
- Last Click (по последнему касанию). Заслуга отдаётся последнему каналу перед обращением — в примере это 2GIS. Это самая распространённая модель по умолчанию (в том числе именно она используется Meta Ads как модель атрибуции по умолчанию, с окном в 7 дней после клика или 1 день после просмотра), но она системно занижает роль каналов, которые формируют спрос на ранних этапах, и завышает роль «финишных» каналов.
- Линейная модель. Заслуга распределяется поровну между всеми каналами, с которыми соприкоснулся клиент. Более честно отражает мультиканальность, но требует, чтобы вы вообще фиксировали все касания, а не только последнее — что технически сложнее.
- Модель с приоритетом на удержание (U-shaped/W-shaped). Больше веса отдаётся первому и последнему касанию, меньше — промежуточным. Используется реже, обычно в компаниях с более зрелой аналитикой и длинным циклом сделки.
Для абсолютного большинства малого и среднего бизнеса в регионе разумный практический выбор — Last Click как основная модель для оперативных решений (потому что она проще всего технически реализуема и достаточно точна для быстрых циклов сделки) в сочетании с периодическим ручным анализом первого касания — хотя бы раз в квартал смотреть отчёт по тому, какие каналы чаще всего оказываются «первыми в цепочке», чтобы не обесценивать имиджевую и охватную рекламу только потому, что она реже оказывается последним кликом перед покупкой.
Как передать конверсию обратно в Meta и Google для оптимизации рекламы
Отследить источник заявки — это только половина задачи. Вторая половина — вернуть информацию о том, что заявка превратилась в реальную продажу, обратно в рекламный кабинет. Без этого шага вся проделанная работа по трекингу остаётся полезной только для ручных отчётов, но не помогает алгоритмам рекламных платформ находить более качественную аудиторию.
Механизм называется Conversions API (CAPI) у Meta и офлайн-конверсии (Offline Conversion Import) у Google Ads. Логика одинаковая: у вас есть событие, которое произошло не на сайте (а значит, пиксель его не видит) — оплата в Kaspi, закрытая сделка в CRM, — и вы отправляете это событие серверным способом напрямую в API рекламной платформы, минуя браузер клиента.
Упрощённая схема для WhatsApp-воронки выглядит так:
- Клиент кликает по рекламе → в CRM создаётся лид с зафиксированным источником (одним из способов выше, в идеале — с сохранённым
ctwa_clidдля click-to-WhatsApp рекламы). - Менеджер доводит лид до сделки, статус в CRM меняется на «Оплачено».
- При смене статуса срабатывает автоматизация (вебхук, сценарий в Bitrix24, скрипт), которая отправляет событие «Purchase» (или кастомное событие «Qualified Lead») в Meta Conversions API или Google Ads Offline Conversions — с привязкой к сохранённому идентификатору клика или к email/телефону клиента для сопоставления.
- Рекламная платформа получает подтверждённый сигнал о продаже и начинает использовать его для оптимизации показов — то есть искать больше людей, похожих на тех, кто реально купил, а не просто написал в директ.
Важная деталь по срокам: улучшение качества аудитории происходит не мгновенно — алгоритмам обычно требуется от нескольких недель до пары месяцев накопления данных, прежде чем эффект от более точных сигналов конверсии полностью проявится в снижении стоимости лида. Это не разовая настройка «включил и сразу подешевело», а инвестиция в качество данных, которая окупается на дистанции.
Для оценки качества самой передачи данных в Meta существует метрика Event Match Quality (EMQ) — она показывает, насколько хорошо переданные вами данные о клиенте (телефон, email, имя) сопоставляются с реальным профилем пользователя в системе Meta. Чем выше EMQ, тем точнее алгоритм может использовать переданное событие для обучения. Практическая рекомендация — стремиться передавать максимум доступных, корректно хешированных идентификационных полей (телефон в международном формате, email, если он есть), а не только факт события.
Отдельно стоит сказать про дедупликацию: если у вас одновременно работает браузерный пиксель (например, на сайте, если человек сначала зашёл туда) и серверный CAPI, событие может задвоиться — платформа получит два сигнала об одной и той же конверсии. Чтобы этого избежать, у каждого события должен быть уникальный event_id, одинаковый и в пиксельном, и в серверном вызове — это стандартный механизм, который платформа использует, чтобы распознать дубликат и посчитать конверсию один раз.
Частые ошибки при настройке аналитики WhatsApp
За годы работы с бизнесом в Казахстане и СНГ повторяется один и тот же набор ошибок — стоит явно проговорить каждую.
Настроили трекинг, но не проверили его на реальном клике. Самая частая ошибка — интеграция технически включена, но никто не прошёл путь клиента от начала до конца: кликнуть по своей же рекламе, написать сообщение, проверить, появилось ли в CRM правильное поле источника. Без такой проверки система может месяцами «работать», не передавая на самом деле никаких данных, а расхождение обнаружится только тогда, когда кто-то удивится нулям в отчёте.
Разный номер для рекламы и для органики, но менеджеры не знают, зачем. Если команда продаж не понимает логику разделения номеров или ссылок, менеджеры на автомате переключают клиента на «основной» номер для удобства — и вся атрибуция в этот момент теряется.
Не учитывается офлайн-оплата и Kaspi. Компания настраивает передачу события «Заявка создана», но никогда не доводит цепочку до события «Оплачено», потому что оплата проходит через Kaspi Pay или наличными и физически не попадает ни в какую систему автоматически. В результате рекламные алгоритмы оптимизируются на лиды, а не на реальные продажи, что менее точно — часть «лидов» может быть нецелевыми обращениями, которые никогда не купят.
UTM-метки расставлены непоследовательно. Разные сотрудники или подрядчики создают ссылки с разным форматом меток (utm_source=ig в одном месте и utm_source=instagram в другом), из-за чего при сведении отчёта один и тот же канал распадается на несколько разных строк, и картина искажается.
Данные собираются, но никто их не смотрит регулярно. Технически всё настроено правильно, но отчёт по атрибуции формируется раз в год перед стратегической сессией, а не еженедельно или ежемесячно — то есть решения о перераспределении бюджета продолжают приниматься по интуиции, просто теперь рядом с ними лежит красиво оформленная, но неиспользуемая таблица.
Путают корреляцию с причинностью в мультиканальных цепочках. Видя, что 2GIS часто оказывается «последним касанием», компания резко увеличивает бюджет именно на присутствие в 2GIS, забывая, что первоначальный интерес во многих случаях был сформирован платной рекламой в Instagram — без которой человек вообще не стал бы искать компанию в 2GIS.
Чек-лист внедрения сквозной аналитики WhatsApp
Если вы хотите выстроить эту систему у себя, вот последовательность шагов, которая работает на практике:
- Аудит текущего пути клиента. Пройдите путь сами — от клика по каждому рекламному каналу до появления диалога в CRM — и зафиксируйте, где именно теряется информация об источнике.
- Выберите комбинацию методов трекинга под структуру своих каналов: короткие ссылки с UTM для основного объёма рекламы, отдельный номер для стабильных нерекламных каналов (сайт, офлайн), вопрос-квалификатор как страховка.
- Настройте интеграцию WABA-провайдера с CRM (например, через Wazzup) так, чтобы поля источника автоматически попадали в отдельные свойства сделки, а не терялись в теле переписки.
- Для click-to-WhatsApp рекламы отдельно проверьте передачу
ctwa_clid— уточните у своего WABA-провайдера и в настройках рекламного кабинета, поддерживается ли этот механизм и корректно ли он настроен. - Протестируйте всю цепочку вживую — от клика по объявлению до появления правильно размеченной сделки в CRM, — прежде чем считать систему готовой.
- Договоритесь с отделом продаж о дисциплине — какие поля обязательно заполняются вручную (если что-то не считалось автоматически), и как задавать вопрос-квалификатор, если источник не определился сам.
- Настройте передачу событий об оплате обратно в Meta CAPI и Google Ads — как минимум для событий, которые можно связать с CRM автоматически по смене статуса сделки.
- Определите модель атрибуции — по умолчанию Last Click для оперативных решений, плюс ежеквартальный обзор по первому касанию.
- Назначьте регулярность отчёта — еженедельная или ежемесячная сверка расходов по каналам с реальной выручкой по этим же каналам, а не по общей выручке компании.
- Пересматривайте настройку раз в квартал — рекламные платформы регулярно меняют API, форматы событий и правила работы с идентификаторами вроде
ctwa_clid, поэтому однажды настроенная система требует периодической проверки на актуальность.
Сквозная аналитика WhatsApp — это не разовая настройка, а инфраструктура, которая должна прожить дольше одной рекламной кампании. Но именно она отвечает на вопрос, ради которого вообще существует маркетинговый бюджет: какая реклама реально приносит деньги, а какая только создаёт иллюзию активности. Если вы хотите настроить эту связку под особенности своего бизнеса — от структуры WABA и интеграции с Bitrix24 до передачи конверсий в Meta и Google, — команда Cheat Code делает это как готовое решение, без необходимости держать в штате отдельного технического специалиста.
Частые вопросы
Что такое ctwa_clid и зачем он нужен?
Это технический идентификатор клика, который Meta прикрепляет к первому сообщению при переходе из click-to-WhatsApp рекламы. Если WABA-провайдер корректно прокидывает его в CRM, диалог можно связать с конкретным объявлением и креативом без ручных UTM-меток.
Какую модель атрибуции выбрать для WhatsApp-продаж?
Для большинства малого и среднего бизнеса — Last Click как основная модель для оперативных решений (её же по умолчанию использует Meta Ads), плюс ежеквартальный ручной обзор по первому касанию, чтобы не обесценивать охватную рекламу.
Как передать оплату через Kaspi или наличными обратно в рекламный кабинет?
Через CRM: при смене статуса сделки на «Оплачено» автоматизация отправляет событие в Meta Conversions API или Google Ads Offline Conversions, с привязкой по сохранённому клик-ID, телефону или email клиента.
Нужно ли заводить отдельный номер WhatsApp под каждую рекламную кампанию?
Не обязательно. Отдельные номера хорошо работают при 2–4 стабильных каналах, но плохо масштабируются при частой смене кампаний — там эффективнее короткие ссылки с UTM-метками на один номер.