UTM-метки в Telegram и MAX: как понять, какой анонс привел оплаты
Анонс ушёл в пять мест, оплаты пришли, а какой пост их привёл, из отчёта не видно. Я занимаюсь продвижением мероприятий через Telegram-каналы и чаты, и вопрос, какой пост реально привел оплаты, всегда всплывает после каждого события, особенно когда анонс ушел в свой канал, в пару чатов и к партнерам, а сверху в нагрузку еще куплен посев.
Чтобы было нагляднее и понятнее взял отчет из кабинета Orbo - платформы для организаторов мероприятий и сообществ в Telegram и MAX, там у события есть понятная воронка и таблица источников. Вот пример у события 954 посетителя и 198 оплат, я сложил строки, у которых в графе «кампания» стоит прочерк, то есть мини-приложение без метки, MAX без метки и прямые заходы, получилось столько оплат, про которые отчет в лучшем случае знает мессенджер, а про пост, день и того, кто человека привел, не знает ничего. Вообщем у нас было 57 продаж.
У части этих оплат видно Telegram это или MAX. Но какой именно анонс сработал, к сожалению не видно ни у одной. А это на минуточку 29% всех оплат. И как раз в них обычно и сидит ответ на вечный спор с партнерами, кто кого привел и как будем это считать.
Почему до бота UTM-метки в Telegram не доезжают
У среднестатистического события в мессенджере у нас обычно три входа, это веб-страница, мини-приложение в Telegram и мини-приложение в MAX. Регистрации со всех трех стекаются в одну базу, но метки пишутся по-своему.
С веб-страницей все идет по старинке. В ссылку дописываются стандартные utm_source, utm_medium и utm_campaign, после нажатия, страница открывается в браузере, метки на месте, и система аналитики пишет источник. С ботом механика иная. Если дописать к адресу t.me хвост с utm-параметрами, Telegram его боту просто не передаст, потому что в чат с ботом доезжает только параметр start, а в мини-приложение только startapp, и все остальное по дороге молча отрезается.
Startapp передает мини-приложению метку из ссылки в момент запуска, так это устроено и в Telegram, и в MAX. Других способов донести источник до мини-приложения у обычной ссылки нет, поэтому метка для этой двери живет внутри startapp.
Кстати анонс с кнопкой «Записаться», которая открывает мини-приложение, и анонс со ссылкой на сайт для отчета две разные истории, а размечают обычно только вторую, так как с UTM все давно привыкли работать. В кейсах самого Orbo у платного клуба нетворкинга через мини-приложение прошло 82% регистраций, у отраслевой ассоциации регистрации разделились поровну между сайтом и мессенджерами, и в обоих случаях размеченная только ссылка на сайт показала бы вам в лучшем случае половину людей.
Еще одна утечка сидит в прямых заходах. Даже когда человек идет на сайт, переход из приложения мессенджера часто не несет адреса страницы, где человек нажал на ссылку, и без метки аналитика пишет его в прямые, плюс ссылку пересылают в личку, скопировав уже без хвоста с меткой.
И про MAX забывать не стоит. По данным Mediascope, в августе 2026 года в MAX ежедневно заходили 69,9 млн россиян старше 12 лет, в Telegram 33,8 млн, так что анонс в MAX-канале размечается по тем же правилам, что и в Telegram.
Что показал отчет по одному платному событию
Страницу события открыли 954 устройства, каждое посчитано один раз, и это первая ступень воронки. Дальше авторизовался 331 человек, зарегистрировались 226, оплатили 198. Последнюю ступень, «пришли», заполняет уже регистратор на входе, когда сканирует QR-коды. В этом отчете она пока пустая.
На первом шаге отваливается больше всего. Из 954 дальше прошли 331, и меня это не пугает. Человек открыл, посмотрел дату и цену и ушел подумать, кто-то вернется сам, кого-то дожмет напоминание.
Источников трафика в таблице семь. Записываю их в том виде, в каком их видит организатор:
- пост anons_main в канале: 287 посетителей, 83 участника, 74 оплаты;
- мини-приложение Telegram без кампании, 196 посетителей и 41 оплата, второе место по объему, и откуда эти люди, непонятно;
- партнерский пост partner_club дал 142 посетителя, 33 участника и 28 оплат;
- сообщение в чате networking_chat, 91 посетитель и 14 оплат;
- напоминание last_call, всего 76 посетителей, зато 25 оплат;
- MAX без кампании: 58 посетителей, 9 оплат;
- прямые заходы, 104 посетителя, оплатили 7.
Конверсия в отчете считается как участники, деленные на посетителей, а посетитель в нем это одно устройство, открывшее страницу события, сколько бы раз его ни открывали. Свои заходы владельца и админов Orbo в эту статистику не пускает.
Момент, когда екнуло: строки без адреса
Сначала я смотрел на таблицу сверху вниз и радовался анонсу, потом что то не давало покоя в строках с прочерками, сложил три строки без кампании: 196 плюс 58 плюс 104, это 358 посетителей из 954. Больше трети всего трафика события. Участников в этих строках набралось 66, оплат 57, и вот тут у меня екнуло.
Строка «Telegram, мини-приложение» без кампании означает людей, которые открыли мини-приложение по ссылке без метки. Обычно это голая ссылка в закрепе, кнопка в посте, который поленились разметить, или ссылка, пересланная другу в личку. С MAX та же история. Прямые заходы это веб-страница, открытая без метки и без адреса, откуда пришел человек.
Вот здесь собака зарыта. Если хотя бы половина из этих 41 оплаты пришла по ссылке партнера, которую кто то скопировал без хвоста, у партнера уже почти 49 оплат вместо 28, и следующий разговор с ним пойдет совсем по-другому. А может, эти оплаты пришли из закрепа в канале организатора, и тогда закреп сработал лучше партнерского поста. Отчет в нынешнем виде не подскажет ни того, ни другого.
Как разметить одну ссылку для сайта и для мини-приложения
Вот вам пример на том же посте anons_main в канале организатора. Схема меток для всех дверей одна, меняется только запись. Для веб-страницы события в конец адреса дописывается ?utm_source=telegram&utm_medium=post&utm_campaign=anons_main. Для мини-приложения в Telegram метка уходит в параметр startapp ссылки вида t.me/имя_бота/приложение?startapp=метка, в MAX адрес выглядит как max.ru/имя_бота?startapp=метка, и по документации MAX параметр принимает до 512 символов.
В Orbo метка внутри startapp записывается так: s-telegram__m-post__c-anons_main. Буква s означает источник, m канал, c кампанию, между частями стоят два подчеркивания, а из символов можно латиницу, цифры, подчеркивание и дефис, пробелы и кириллица не пройдут, и это, кстати, еще одна причина завести словарь заранее. Метку я бы держал короткой. Читать ее потом будете вы, глазами, в отчете после события.
Собирать такие ссылки руками можно, но к пятому анонсу начинаешь путать, где одно подчеркивание, а где два. И еще нужен сервис регистрации, который сам прочитает обе метки и сведет их с оплатами. В Orbo, например, мини-приложение для события делается в один клик, а метки веб-страницы и метки startapp сходятся в той самой таблице источников, с которой я начал. Это один из вариантов, сервисов для событий в мессенджерах сейчас несколько, и выбирать между ними я бы стал по тому, видно ли в отчете оплаты по каждой метке. Графа «оплатили» там считается по платежам картой и по СБП, которые прошли через сам сервис, ну как по всем платежам, наличные на входе он, понятно, не увидит.
Словарь меток, без которого отчет разъедется
Метки работают, только если все, кто публикует анонсы, пишут их одинаково. Если один админ пишет telegram, второй Telegram, а партнер tg, то во многих системах аналитики это три разные строки, и после события придется сидеть и склеивать их руками.
Правила, которые я бы записал до первого анонса:
- Все метки строчной латиницей, без пробелов, слова через подчеркивание.
- Источник это площадка: telegram, max или сайт партнера, канал это формат: post, chat, reminder, dm.
- Кампания у каждого размещения своя. Три партнера с одной ссылкой partner в отчете сольются в одну строку.
- Напоминания и личные рассылки тоже размечаются, у last_call в разобранном отчете отдельная строка.
- Закреп, описание канала и кнопка в боте получают свои метки, иначе уходят в строку без кампании.
- Таблица «кому какую ссылку отдал» лежит в общем доступе для всех, кто публикует анонсы.
Перед партнерским размещением такой диалог, думаю, знаком многим организаторам:
– Скинь ссылку на регистрацию, я у себя запощу.
– Сейчас, только метку под тебя сделаю.
– Да зачем, у меня же тот же Telegram.
Затем, что «тот же Telegram» без метки потом оказывается в строке, где 41 оплата и ни одного адреса.
По какому столбцу судить анонсы и посевы
Кто в этом отчете молодец, тот, у кого больше всего посетителей, или тот, у кого выше конверсия? Зависит от решения, которое вы принимаете. Смотреть стоит на три столбца сразу: посетители, конверсия в регистрацию и оплаты.
Больше всего на событие наработал пост anons_main: 30% посетителей и 37% всех оплат при конверсии 29%. Его первым стоит повторить на следующем событии, ну как повторить, с новой меткой, чтобы два события не слиплись в одну строку.
Если бы я резал бюджет и силы по числу переходов, первым под нож ушло бы напоминание last_call, у него среди размеченных строк переходов меньше всех, 76. Зато конверсия у него 36%, лучшая в таблице. Из 27 зарегистрировавшихся оплатили 25. По напоминанию, судя по всему, приходят люди, которые про событие уже слышали и решение почти приняли. Отключить его значит поставить под удар 25 оплат. Это 12,6% всех оплат события.
В чате картина скромнее: у networking_chat конверсия 19% против 29% у поста в канале. Сообщение в чате, скорее всего, читают по диагонали между обсуждениями, так что в чат я бы ставил короткое напоминание со ссылкой, а длинный анонс оставил для канала.
С партнерами всегда одинаково. Партнер присылает скриншот охватов, реакций, пересылок и сохранений и пишет, что пост у него зашел лучше всех за месяц, а я открываю отчет по его метке и смотрю в одну графу, оплаты.
Двадцать восемь.
Цену размещения вы знаете, делите ее на 28 и получаете цену одной оплаты. Эффективность посевов в Telegram, на мой взгляд, честнее всего сравнивать именно так, по цене оплаты, и считать ее для каждого посева отдельно.
Две строки я бы читал с осторожностью. Прямые заходы дали худшую конверсию, 9%, и это тоже подсказка: часто так приходят люди по пересланной голой ссылке, без анонса и без контекста, они просто не понимают, что за событие. А MAX показал 19% на 58 посетителях и 11 участниках, где один человек двигает конверсию почти на два пункта, так что про MAX честнее судить по двум-трем событиям подряд.
И последнее, что я смотрю, это доля оплативших среди зарегистрировавшихся по каждой строке. Здесь она от 78% у прямых заходов до 93% у напоминания, и там, где разрыв больше, люди записались, но не заплатили, им нужно отдельное напоминание про оплату.
Что сделать до следующего анонса
Словарь меток из раздела выше это основа, а перед самой публикацией я бы еще прошел короткий список:
- назначить одного человека, который выдает метки и ведет таблицу ссылок, чтобы их не придумывали на ходу в пять рук;
- чекнуть каждую ссылку из инкогнито или с не-админского аккаунта: в Orbo, например, заходы owner и admin не учитываются, и проверка из своего кабинета ничего не покажет;
- после тестового перехода найти в отчете строку с нужной кампанией;
- добавить в форму регистрации необязательный вопрос «откуда узнали», страховка для строк без кампании;
- после события выписать по каждой строке посетителей, конверсию и оплаты и положить рядом с прошлым событием.
Когда все это лишнее? Если у вас один чат на 30 человек и все друг друга знают, никакие метки не нужны. Проще спросить в чате, кто придет. UTM-метки в Telegram и startapp имеют смысл там, где анонс уходит хотя бы в три-четыре места и за часть из них вы платите.
Частые вопросы
Передаются ли UTM-метки в Telegram-бота?
Нет, не передаются. Если дописать utm-параметры к ссылке t.me, бот их не получит. Бот видит только параметр start в ссылке вида t.me/имя_бота?start=метка, а мини-приложение только startapp, и источник для них кладут туда.
Чем start отличается от startapp?
Start открывает чат с ботом и передает метку в первую команду, startapp открывает мини-приложение и передает метку ему. Если регистрация на мероприятие в Telegram идет через мини-приложение, нужен startapp; у start по документации Telegram есть лимит в 64 символа.
Как разметить ссылку на мини-приложение в MAX?
Так же, как в Telegram: ссылка вида max.ru/имя_бота?startapp=метка. Параметр принимает до 512 символов, но метку удобнее держать короткой и вести в одном словаре с Telegram.
Почему переходы из Telegram попадают в прямые заходы?
Чаще всего потому, что приложение мессенджера не передает сайту адрес, с которого пришел человек. Без метки такой переход не отличить от адреса, набранного вручную, так что размечать стоит каждую ссылку, даже в своем канале.
Сколько меток нужно на одно мероприятие?
Столько, сколько у вас размещений, плюс напоминания и рассылки. В разобранном отчете кампаний было четыре. Еще три строки остались без метки, и именно они дали 57 оплат без адреса.
Нужен ли для этого отдельный сервис?
Если страница события живет на вашем сайте, для нее хватит Яндекс Метрики и аккуратного словаря. Для мини-приложения нужен бот для регистрации на мероприятие, который сам читает startapp и сводит метку с оплатой: свой, с разработчиком, или готовая платформа для событий вроде Orbo, одна из нескольких на рынке.
Короче, финалочка
- Для ссылок на сайт используются обычные UTM-параметры; для мини-приложения - через параметры в startapp.
- В разобранном отчете 57 оплат из 198 пришли из строк без кампании, и по ним нельзя сказать, какой пост их привел.
- Один словарь меток на событие: строчная латиница, своя кампания на каждое размещение, у каждого партнера только его ссылка.
- Напоминание дало конверсию 36% и 25 оплат всего на 76 посетителях, и по числу переходов его судить ошибка.
- Посевы в Telegram удобнее сравнивать по цене одной оплаты: стоимость размещения делится на число оплат по ссылке партнера.
- Регистрация на мероприятие в Telegram и MAX часто идет через мини-приложение, и размеченная только ссылка на сайт показывает в лучшем случае половину картины.
Счет дружбу бережет, особенно с партнерами, уверенными, что всех людей на событие привели именно они. Но и лучшее враг хорошего: для события хватит трех уровней, источника, канала и кампании, без отдельной метки на каждую кнопку и каждый час публикации. Для ближайшего события начните со словаря меток и проверки каждой ссылки в инкогнито, а если регистрация у вас идет через мини-приложение, посмотрите, как метки и оплаты сводятся в один отчет в Orbo, это один из сервисов такого класса.
А как вы сейчас понимаете, какой анонс привел людей: по меткам, по вопросу в форме или по ощущениям? Напишите в комментариях, особенно если однажды выяснилось, что главный канал работал хуже всех.