Короткий ответ: источник подписчика в Telegram можно отследить только если заранее записать рекламный клик и затем связать событие вступления с этим кликом. UTM показывает, откуда пришел переход. Invite-ссылка или другой измеримый Telegram-маршрут доказывает, что именно этот переход стал подпиской. Strelo Stat нужен как слой между рекламой и Telegram: он сохраняет UTM, click id, raw query, ссылку и matched click, а потом показывает подписки, отписки и конверсии по источникам.

Практический критерий простой: у подписки должен быть matched click. Если есть только UTM на ссылке, вы знаете источник перехода. Если есть matched click, вы знаете источник подписчика.

Запрос "как отследить источник подписчика в Telegram" обычно появляется после первой закупки рекламы, когда цифры не сходятся. В рекламном кабинете есть клики, в канале есть новые люди, но непонятно, какая кампания, креатив, блогер, пост или кнопка привели конкретного подписчика. Простая ссылка на канал дает рост, но не дает управляемую атрибуцию.

Эта инструкция не про общую статистику канала и не про красивые графики просмотров. Здесь фокус уже: как сделать так, чтобы у подписчика был источник, а у команды была проверяемая цепочка от клика до вступления. Поэтому мы разделяем UTM, click id, invite, join request, matched click и отчет. Если смешать эти вещи, источник начинает выглядеть точным, хотя на самом деле это догадка.

Для кого

Когда нужен трекинг источника подписчика

Покупаете рекламу

Нужно видеть, какая площадка, кампания и креатив дали реальную подписку, а не только клик.

Работаете с посевами

Отдельные ссылки помогают сравнивать авторов и посты без ручного угадывания по датам.

Отчитываетесь клиенту

Агентству нужен проверяемый путь от источника до подписки и дальнейшего события.

Оптимизируете бюджет

Решение о масштабировании должно опираться на подписку, CR, отписки и качество, а не на дешевый клик.

Если нужно понять, откуда пришел подписчик в канал

Для владельца Telegram-канала ответ зависит от точности, которая нужна для решения. Если вы просто хотите понять общий прирост аудитории, начните со встроенной статистики канала и динамики по дням. Если нужно сравнить посевы, блогеров или рекламные посты, нужны отдельные ссылки на каждый источник. Если нужно доказать, что конкретный рекламный клик стал подпиской, нужна связка клика и вступления через Stat.

Нельзя честно восстановить источник задним числом, если человек уже вступил по обычной ссылке, а клик нигде не был записан. В лучшем случае останется косвенная оценка по дате, посту и всплеску подписок. Рабочая атрибуция начинается до запуска рекламы: создается измеримый маршрут, сохраняются UTM и click id, а вступление получает matched click.

Ответ владельцу канала

Какой способ выбрать под вопрос об источнике

Нужна общая картина роста

Смотрите встроенную статистику Telegram: прирост, просмотры, активность и источники на уровне канала. Этого хватает для редакционных выводов, но не для точной рекламы.

Нужно сравнить посевы

Дайте каждому блогеру, посту или партнеру отдельную трекинговую ссылку. Тогда источник не придется угадывать по дате публикации.

Нужно доказать рекламный клик

Сохраняйте UTM, click id и raw query до перехода в Telegram, затем связывайте вступление с сохраненным кликом.

Нужна отчетность для клиента

Показывайте цепочку: ссылка, клик, UTM, подписка, matched click, отписка и отправленная конверсия. Так отчет проверяется, а не держится на доверии.

Практический порядок такой: сначала отделите органику от платного трафика, потом заведите отдельные ссылки под каждый источник, затем проверьте тестовую подписку. Только после этого сравнивайте кампании. Иначе отчет будет отвечать не на вопрос "откуда пришел подписчик", а на вопрос "где примерно был всплеск".

Что считается источником подписчика

Источник подписчика - это не одна строка utm_source. Нормальный источник состоит из нескольких слоев: площадка, кампания, креатив, конкретная ссылка, канал или бот, дата клика, рекламный click id и статус подписки. Для ручного отчета можно начать с source и campaign, но для масштабирования рекламы этого почти всегда мало.

Например, utm_source=telegram_ads отвечает только на вопрос о площадке. Но внутри могут быть разные офферы, аудитории, тексты, каналы, даты и посадочные сценарии. Если все это схлопнуть в один source, отчет покажет среднюю температуру. А управленческое решение обычно нужно на уровне: какой креатив оставить, какой пост заменить, какую кампанию выключить и куда перенести бюджет.

Для практики используйте такой минимум: utm_source, utm_medium, utm_campaign, utm_content, ссылка или tag, канал назначения и click id рекламной системы. Source нужен для группировки. Campaign нужен для запуска. Content нужен для креатива. Link нужен для диагностики. Click id нужен, чтобы отправить подтвержденную подписку обратно в рекламную систему.

Модель источника

Какие уровни нужны, чтобы источник был полезен

Начать можно с UTM, но для рекламы нужен полный маршрут до подписки.

КритерийУровеньЗачем нуженПример
SourceПлощадка или тип трафикаСравнить каналы привлеченияtelegram_ads, yandex, blogger
CampaignЗапуск или офферОтделить вебинар, клуб, курс или распродажуwebinar_july, course_start
ContentКреатив, пост, автор, кнопкаПонять, что именно сработалоbutton_a, post_17, creator_ivan
Click idТехнический идентификатор рекламыВернуть подписку как offline conversiongclid, yclid, fbclid, rb_clickid
Matched clickСвязь подписки с кликомДоказать источник именно подписчикаtt_subscriptions.matched_click_id
UTM помогает читать отчет. Matched click доказывает связь подписки с кликом.

Почему UTM-ссылка не доказывает подписку

UTM хорошо отвечает на вопрос, откуда был переход. Но Telegram-подписка происходит уже после перехода, часто в другом приложении и иногда позже. Человек мог открыть лендинг, не нажать Telegram-кнопку, открыть Telegram, но не вступить, переслать ссылку, вступить с другого устройства, вернуться через сохраненный invite или выйти почти сразу после вступления.

Из-за этого нельзя считать источник подписчика только по клику. Клик - верх воронки. Подписка - отдельное событие. Между ними есть Telegram CTA, invite, права бота, webhook, окно сопоставления и статус участника. Если эта связка не построена, вы видите не источник подписчика, а источник перехода.

Слабая схема выглядит так: рекламный пост ведет на обычную t.me ссылку, где UTM не сохраняются как событие подписки. В отчете рекламной системы есть клики, в Telegram есть рост, но между ними нет общего ключа. Сильная схема выглядит иначе: клик записан на сервере, у него есть click_id, UTM и raw query, а вступление получает matched_click_id.

Граница данных

UTM перехода и источник подписчика - разные сущности

Ошибка начинается там, где клик начинают считать подпиской.

КритерийЕсть только UTMЕсть matched click
Что доказаноПользователь открыл ссылку с меткойПодписка связана с сохраненным кликом
Что неизвестноВступил ли человек и когдаОстается только качество после подписки
Где применятьЛендинг, сайт, кнопка, отчет по трафикуРекламная атрибуция подписок
РискПриписать рекламе то, что не стало подпискойНе смешать органику с платным источником
Сначала записываем переход, потом доказываем подписку. Только так источник становится надежной метрикой.

Рабочая схема: клик, Telegram invite, вступление

Базовая схема отслеживания строится вокруг серверной записи клика. Пользователь нажимает рекламную ссылку, попадает на трекинговый маршрут или на лендинг с пикселем Stat, параметры сохраняются, затем человек уходит в Telegram через контролируемый invite или другой поддержанный маршрут. Когда Telegram присылает событие вступления, система пытается связать его с сохраненным кликом.

В Strelo Stat основной точный сценарий построен на invite-ссылке и join request. Сервис создает или назначает invite для клика, записывает у invite имя с click id, а Telegram в событии заявки на вступление возвращает использованную ссылку. Это позволяет связать подписку с кликом до того, как данные растворятся в Telegram.

Если вы ведете трафик на лендинг, Stat pixel переписывает Telegram-ссылки на трекинговый маршрут /c/{token} и переносит query лендинга. Если вы ведете сразу через Stat-ссылку, /c/{token} сам записывает клик и редиректит в Telegram. В обоих случаях смысл один: сначала записать источник, потом вести в Telegram.

Схема

Как источник становится подпиской

  1. Клик по рекламе

    Пользователь открывает Stat-ссылку или лендинг с установленным Stat pixel.

  2. Запись перехода

    Strelo Stat сохраняет UTM, click id, params, cookies, raw query, link id и время клика.

  3. Измеримый вход в Telegram

    Система ведет человека через invite или другой контролируемый маршрут, а не через обычную ссылку без связи.

  4. Событие вступления

    Telegram webhook присылает join request или member update, где можно восстановить использованный invite.

  5. Matched click

    Подписка получает связь с кликом, и источник становится виден в отчетах и интеграциях.

Скрин Strelo Stat: первый уровень проверки - клики, подписки, подтвержденные вступления и динамика по проекту.
Скрин Strelo Stat: первый уровень проверки - клики, подписки, подтвержденные вступления и динамика по проекту.

Как настроить отслеживание за один рабочий подход

Начните с одного канала и одного источника, а не с полного BI-проекта. Подключите канал, убедитесь, что бот может работать с invite-ссылками, создайте трекинговую ссылку, добавьте UTM и сделайте тестовый переход. После этого вступите в канал и проверьте, что подписка получила источник. Только после такого теста запускайте платную рекламу.

Если реклама идет через лендинг, поставьте Stat pixel на страницу и проверьте, что Telegram-кнопки переписываются. Это важный момент: часто UTM есть на лендинге, но кнопка ведет на голый t.me, поэтому параметры исчезают прямо перед Telegram. Pixel закрывает этот разрыв, если он корректно установлен и не заблокирован браузером.

После первого теста заведите словарь меток. Не разрешайте подрядчикам писать source как попало: сегодня telegram, завтра tg, послезавтра blogger. Отчет по источникам станет бесполезным, если одинаковые сущности называются по-разному. Лучше меньше полей, но стабильнее правила.

Настройка

Минимальный запуск без лишней бюрократии

  1. Подключить канал

    Добавьте бота администратором и проверьте право на invite-ссылки.

  2. Собрать UTM-словарь

    Опишите source, medium, campaign, content и term до запуска подрядчиков.

  3. Создать трекинговую ссылку

    Для каждого источника или креатива используйте отдельную ссылку либо отдельный параметр.

  4. Поставить pixel на лендинг

    Если трафик идет через сайт, скрипт должен переносить query в Telegram-переход.

  5. Проверить тестовую подписку

    Убедитесь, что у подписки появился matched click и source в отчете.

Какие данные нужно сохранять

Минимум для органического и партнерского трафика: источник, кампания, креатив, ссылка, время клика и целевой канал. Минимум для performance-рекламы шире: нужны gclid, gbraid, wbraid, yclid, fbclid, rb_clickid или другие click ids, которые рекламная система добавляет к ссылке. Эти параметры не для красоты в таблице. Они нужны для обратной передачи подписки в рекламный кабинет.

Strelo Stat хранит UTM отдельно от остальных параметров, а исходную строку query сохраняет как raw query. Это помогает в диагностике. Если в отчете нет источника, можно проверить, пришел ли параметр вообще, был ли он назван правильно и не потерялся ли до трекингового маршрута. Без raw query спор с подрядчиком превращается в переписку на веру.

Также важно хранить статус подписки. Источник, который дал 200 вступлений и 90 быстрых отписок, не равен источнику, который дал 120 вступлений и удержал людей. Поэтому отчет по источникам должен смотреть не только subs, но и unsubs, churn, active subscribers и отправленные конверсии.

Данные

Что должно сохраниться при переходе

UTM

source, medium, campaign, content и term нужны для человеческого отчета.

Click id

gclid, yclid, fbclid и похожие параметры нужны для рекламных интеграций.

Raw query

Полная строка запроса помогает доказывать, где именно потерялась метка.

Link id

Связывает клик с конкретной ссылкой, каналом, проектом и режимом атрибуции.

Matched click

Главный признак, что подписка связана с сохраненным переходом.

Status

Joined, left и active нужны, чтобы источник оценивался по качеству, а не по входу.

Invite, join request и post deeplink: что выбрать

Для точной атрибуции лучше использовать invite-сценарий, где Telegram возвращает ссылку, через которую человек вступил. Join request выглядит чуть менее прямолинейно для пользователя, потому что Telegram показывает заявку на вступление, но для рекламы это надежный способ не потерять источник подписки.

Post deeplink нужен, когда реклама должна вести на конкретный пост или публичный канал без промежуточного invite. Это удобнее как UX, но слабее как атрибуция. Telegram не всегда возвращает внешнему сервису точную ссылку, по которой человек пришел к вступлению, поэтому приходится сопоставлять по времени и контексту. Такой режим лучше честно считать best effort, а не стопроцентной атрибуцией.

Если вы покупаете дорогой трафик, делайте точный invite для конверсий, а post deeplink используйте там, где важнее увидеть пост перед вступлением и вы принимаете риск неполной связи. Для отчетности агентства и оптимизации рекламных кабинетов точность обычно важнее.

Режимы

Точный invite или post deeplink

Выбор зависит от того, что важнее: точность источника или прямой UX на пост.

КритерийInvite / join requestPost deeplink
ТочностьВыше, Telegram возвращает использованную invite-ссылкуНиже, часто нужен матчинг по времени и контексту
UXМожет быть заявка на вступление с автоодобрениемПользователь сразу видит пост или канал
Где использоватьPerformance-реклама, отчетность, offline conversionsКонтентные кампании, где важен просмотр поста
РискНужны права бота и корректный invite lifecycleЧасть подписок может остаться спорной
Для дорогой рекламы выбирайте точность. Для постовых сценариев честно закладывайте best effort.

Как проверить, что источник работает

Проверка не должна начинаться после запуска бюджета. Сделайте тестовый клик с понятными UTM: например utm_source=test, utm_campaign=row47_smoke, utm_content=button_a. Откройте ссылку, дойдите до Telegram, вступите в канал и проверьте, что в отчете появился клик, подписка и связь между ними.

Дальше проверьте негативные сценарии. Откройте ссылку без UTM, проверьте, что она попадает в отдельную группу. Откройте старую обычную ссылку на канал, проверьте, что она не смешивается с платной рекламой. Если используете лендинг, нажмите именно кнопку на лендинге, а не вручную скопированный invite. В реальном запуске люди будут идти по разным путям.

Хороший тест заканчивается не фразой "клики есть". Он заканчивается фразой: у клика есть UTM и click id, у подписки есть matched click, в отчете видно source и campaign, а интеграция может отправить событие в рекламную систему. Если хотя бы одного пункта нет, источник подписчика пока не доказан.

Проверка

Минимальный smoke перед рекламным бюджетом

КликUTM есть
записан

В клике видны source, campaign, content и raw query.

Click idесли был
сохранен

gclid, yclid или другой id лежит отдельно, а не только в тексте URL.

Подпискане organic
matched

У события вступления есть matched click, source и link.

Uploadпосле теста
готов

Интеграции включайте только после проверки источника и click id.

Что смотреть в отчете

Первый экран должен отвечать на простой вопрос: сколько было кликов, сколько подписок, сколько отписок и какой CR от клика к подписке. Это позволяет не путать интерес к объявлению и реальное вступление. Если кликов много, а подписок мало, ищите проблему в оффере, лендинге, Telegram-кнопке или invite.

Второй слой - источники и кампании. Смотрите source, campaign, content и день. Не выключайте всю площадку, если просел один креатив. Не масштабируйте весь source, если хороший результат дал один пост или одна аудитория. Чем дороже трафик, тем важнее проваливаться ниже source.

Третий слой - качество после подписки. В Telegram-рекламе это часто отписки, переход в бота, заявка, консультация, оплата или другое событие. Если источник дает подписки, но люди быстро уходят, проблема может быть не в трекере, а в ожидании, которое создало объявление.

Отчет

Как читать источник после запуска

Не останавливайтесь на source. Смотрите источник вместе с качеством подписки.

КритерийСигналЧто значитДействие
Много кликов, мало подписокВерх воронки работаетЛюди не доходят до вступленияПроверить оффер, лендинг, CTA и invite
Мало кликов, высокий CRИсточник узкийАудитория может быть качественнойТестировать масштабирование осторожно
Много подписок, много отписокВступление не равно удержаниеОжидание не совпало с каналомМенять креатив, пост или welcome-контент
Есть подписки, нет uploadОтчет видит результатРекламная система не получила событиеПроверить click id и интеграции
Хороший источник не обязан иметь самый дешевый клик. Он должен давать подписку, удержание и следующий шаг.
Скрин Strelo Stat: метрики кликов и подписок нужно читать вместе, иначе источник с дешевыми кликами может выглядеть сильнее качественного источника.
Скрин Strelo Stat: метрики кликов и подписок нужно читать вместе, иначе источник с дешевыми кликами может выглядеть сильнее качественного источника.

Ошибки, из-за которых источник пропадает

Самая частая ошибка - вести рекламу прямо на обычную Telegram-ссылку и надеяться, что UTM как-то доживет до подписки. Вторая ошибка - поставить UTM на лендинг, но оставить Telegram-кнопку без трекингового маршрута. Третья - использовать одну ссылку для всех подрядчиков и потом пытаться восстановить источник по датам.

Есть и технические ошибки. Бот не админ канала, нет права создавать invite, webhook не получает события, join request не включен, ссылка ушла в режим post deeplink без понимания ограничений, рекламная система обрезала параметры, а команда не проверила raw query. Все эти ошибки выглядят одинаково в отчете: подписчики есть, а источник пустой или спорный.

Отдельный риск - смешивать органику и рекламу. Если человек вступил через поиск Telegram, репост или старую ссылку, это не надо насильно приписывать платной кампании. Органика должна жить отдельно. Иначе вы начнете оптимизировать бюджет по людям, которых реклама не приводила.

Ошибки

Что ломает источник подписчика

Голая t.me ссылка

Переход есть, но сервер не записывает клик до Telegram.

Одна ссылка на всех

Нельзя отделить автора, креатив, кампанию и дату.

Хаос в UTM

Разные названия одного source превращают отчет в ручную уборку.

Бот без прав

Без нужных прав invite и webhook-события не дадут точную связь.

Поздняя проверка

Если тест делать после запуска бюджета, часть данных уже потеряна.

Органика в рекламе

Прямые вступления нельзя насильно приписывать платному источнику.

Чем помогает Strelo Stat

Strelo Stat закрывает практический маршрут: создает трекинговые ссылки, сохраняет UTM и click ids, ведет пользователя в Telegram через контролируемый путь, получает события подписки, связывает их с кликами и показывает отчет по источникам. Это не замена редакторской статистике Telegram, а отдельный слой для рекламы и атрибуции.

Для маркетолога ценность в том, что больше не нужно спорить по скриншотам из разных кабинетов. В одном контуре видны клики, подписки, отписки, source, campaign, link и статус отправки конверсий. Для владельца канала ценность в том, что можно отключать не "что-то не нравится", а конкретный источник или креатив.

Если после подписки начинается Telegram-воронка, основной Strelo подключается на следующем этапе: бот, сегменты, CRM, AI-ответы, оператор, оплата и аналитика по шагам. Stat отвечает на вопрос, откуда пришел подписчик. Strelo отвечает на вопрос, что он сделал дальше и как довести его до результата.

Strelo Stat

Когда отдельный трекер становится нужен

Источниковуже полезно
2+

Когда источников больше одного, ручное угадывание быстро ломает отчет.

Рекламаесть бюджет
платная

Платный трафик нужно оптимизировать по подписке, а не по клику.

Интеграцииconversion
offline

Для рекламных систем нужен сохраненный click id и подтвержденное событие.

Отчетклиенту
доказуемый

Агентство может показать не только охват, но и путь до подписки.

Скрин Strelo Stat: после проверки источника можно подключать рекламные интеграции и отправлять подтвержденные подписки как конверсии.
Скрин Strelo Stat: после проверки источника можно подключать рекламные интеграции и отправлять подтвержденные подписки как конверсии.

Чем эта статья отличается от материала про рекламную аналитику

В блоге уже есть отдельный материал про аналитику источников подписчиков для рекламы. Там фокус шире: как сравнивать источники, кампании, отписки и рекламные интеграции на уровне бюджета. Эта статья уже и практичнее: как именно получить источник у подписчика, какие события должны быть связаны и как проверить, что связка не развалилась.

Если вам нужно решить "куда переносить бюджет", читайте статью про рекламную аналитику источников. Если вам нужно понять, почему у конкретного подписчика нет источника, начните с этой инструкции. Она ближе к настройке маршрута и диагностике.

Граница темы

Чем эта инструкция отличается от статьи про рекламную аналитику

Материалы связаны, но отвечают на разные вопросы.

КритерийЭта инструкцияРекламная аналитика источников
Главный вопросКак получить источник у подписчикаКак сравнивать источники по бюджету
ФокусКлик, invite, webhook, matched clickSource, campaign, CR, отписки, conversions
Когда читатьПеред настройкой и диагностикой трекингаПеред распределением рекламного бюджета
Сначала докажите источник подписчика. Потом сравнивайте источники как маркетинговые каналы.

Итог

Отследить источник подписчика в Telegram можно, но не задним числом и не одной UTM-меткой. Нужно заранее построить маршрут: рекламная ссылка или pixel, запись клика, сохранение UTM и click id, измеримый переход в Telegram, событие вступления и matched click в отчете.

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

Strelo Stat

Проверьте источник подписчика до масштабирования рекламы

Создайте трекинговые ссылки, сохраните UTM и click ids, свяжите Telegram-подписки с кликами и смотрите, какие источники дают качественный вход в канал.

Открыть Strelo Stat

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

Можно ли узнать источник подписчика после того, как он уже вступил в канал?

Точно - только если клик или invite были записаны до вступления. Задним числом можно оценить источник по всплеску, дате поста или ручным меткам, но это будет косвенная оценка, а не доказанная атрибуция.

Как отследить источник подписчика в Telegram?

Создайте трекинговую ссылку или поставьте Stat pixel на лендинг, сохраните UTM и click id на клике, ведите пользователя в Telegram через измеримый invite и проверьте, что у подписки появился matched click.

Можно ли понять источник уже существующего подписчика?

Точно - только если его вступление уже было связано с кликом или invite. Задним числом можно оценивать органику и косвенные признаки, но это не заменит matched click.

Что важнее: UTM или invite-ссылка?

Они решают разные задачи. UTM описывает источник перехода, invite или другой измеримый маршрут помогает связать вступление с этим переходом.

Почему в отчете есть подписки без источника?

Это могут быть органика, прямые вступления, старые ссылки, переходы с другого устройства или маршруты, где параметры не были сохранены до Telegram.

Какие UTM нужны для Telegram-рекламы?

Минимально нужны utm_source, utm_medium, utm_campaign и utm_content. Для сложных запусков добавляют utm_term, tag, placement, creative id или partner id.

Когда подключать рекламные интеграции?

После теста, где клик записан, click id сохранен, подписка получила matched click, а отчет показывает source и campaign. Иначе интеграция будет отправлять неполные события.