Telegram-боти й канали: одне підключення — повна атрибуція
У Telegram-трафіку бот - це міст атрибуції. Клік по оголошенню сам собою - лише редирект; щойно бота підключено, Leadgram точно знає, який клік натиснув Start, який підписник прийшов з якої кампанії, і може повертати ці конверсії в Meta чи Google, щоб алгоритм закуповував більше саме тих користувачів, які реально конвертяться. Десять хвилин налаштування тут - і кожен долар витрат стає вимірюваним надалі.
Додаємо бота
- Відкрийте @BotFather у Telegram, надішліть
/newbotі скопіюйте виданий API-ключ (виглядає як110201543:AAHdqTcv...). - Перейдіть у Боти і натисніть «Додати бота».
- Вставте ключ у поле «API-ключ Telegram-бота» - платформа перевірить токен і сама підтягне
@usernameбота. - Оберіть тип: «Бойовий бот» (бойовий трафік, реальні користувачі) - для бота, якого запускаєте в рекламу, «Чорновий бот» (для тестування флоу) - для експериментів.
- Натисніть «Додати бота».
Бот одразу отримує бейдж «Активний», але цей бейдж означає лише, що рядок зберігся - це не сигнал, ніби Telegram прийняв підключення. За лаштунками збереження бота також реєструє для нього Telegram-вебхук, тож не треба піднімати сервер чи вставляти якийсь URL. Сам виклик реєстрації - best-effort: якщо він падає, бот усе одно зберігається і показує «Активний», а Telegram просто ніколи не дізнається, куди слати апдейти. Якщо щойно доданий бот мовчить, дивіться «Бот мовчить на Start» нижче.
Щойно вебхук живий, Telegram надсилає на нього повідомлення й натискання кнопок, і те, і те потрапляє у вашу воронку. Зміни членства в каналах і заявки на вступ теж доходять до вебхука, але наразі ніщо не перетворює їх на активність у флоу - детальніше про це в наступному розділі.

Як бот атрибутує кліки
Ланцюжок такий: трекінг-посилання кампанії → лендінг → deep-link t.me/your_bot?start=click_id. Коли користувач тисне Start, Leadgram зіставляє payload зі збереженим кліком (підійде і ref_id, переданий зовнішнім трекером), запускає активний флоу, прив'язаний до цього бота, з його першого вузла і записує чат у базу підписників бота. Додайте до флоу подію Старт бота - і клік перейде в статус «Старт» та піде серверною конверсією. Повторний /start завжди перезапускає воронку з початку - саме так користувачі Telegram і очікують від бота.
Канали та події вступу
Канали не визначаються автоматично - кожен додається вручну.
- На сторінці Канали натисніть «Не бачите свій канал?».
- Заповніть «Telegram ID каналу» (від'ємне число, що починається з
-100- знайдіть його через @userinfobot або переславши будь-який пост каналу в @JsonDumpBot), назву і тип - Публічний або Приватний. - Надішліть форму. Канал збережеться зі статус-беджем «Очікування».
Статус-бейдж може показувати ще «Очікує активації» або «Активний», але наразі ніщо не виводить канал зі стану «Очікування» само по собі. Ставтеся до рядка як до довідкового запису, який прив'язуєте до кампаній і постбеків, а не як до індикатора живого стану.
channel_join - повноцінний тип події: його можна пересилати через Постбеки, і при доставці в Meta він мапиться на подію Subscribe. Але поки що ніщо не стежить за Telegram на предмет реальних вступів до каналу - сьогодні подія channel_join спрацьовує лише через вузол Вступ до каналу, розміщений посеред флоу у Флоу, або через прямий виклик API. join_request існує як тип події, але не пропонується як опція вузла флоу.
Де боти зустрічаються в продукті
- Флоу - флоу можна створити без прив'язаного бота, але щоб перевести його в статус «Активний», бот знадобиться. Селектор бота в діалозі створення флоу показує ботів, доданих тут.
- Кампанії - бот кампанії проставляється на кожен клік, щоб зіставлення за
/startпрацювало надійно. - Пуші - список отримувачів - це підписники, яких ваш бот зібрав через Start. Підписник, що заблокував бота, випадає з цього списку, а повторний
/startповертає його назад.
Поширені помилки
- Токен відхилено. Копіюйте ключ від BotFather повністю: цифри, двокрапку і 35-символьний хвіст. Неповна вставка миттєво провалює валідацію.
- Бот мовчить на Start. Дві різні причини дають однаковий симптом. Найчастіше бот відповідає, лише коли до нього прив'язано флоу зі статусом «Активний» - немає активного флоу, апдейт ігнорується за задумом. Рідше вебхук мовчки не зареєструвався в момент додавання бота: рядок усе одно зберігся без жодної помилки, але Telegram так і не дізнався, куди доставляти апдейти. Якщо перша причина не підтвердилася, а бот усе одно не відповідає - зверніться в підтримку, щоб перереєструвати вебхук.
- Старти без атрибуції. Користувачі, що відкривають бота за username, минають трекінг-посилання, тож у payload немає click id. Весь платний трафік ведіть тільки через трекінг-URL кампанії.
- Канал застряг на «Очікування». Це нормальний стан на сьогодні, а не ознака поломки - див. «Канали та події вступу» вище. Каналу це не заважає працювати в кампаніях і постбеках.
- Тестування на бойовому боті. Тримайте окремого «Чорнового» бота для експериментів із флоу, щоб зламаний тест ніколи не зачепив живий трафік.
- Видалення бота. Флоу, що був на цьому боті «Активним», падає в «Чернетку», а не ламається повністю - кліки, кампанії та історія каналів, пов'язані з ботом, лишаються цілими. Прив'яжіть до флоу нового бота і знову переведіть його в «Активний», перш ніж він спрацює.