Аналитика групп и каналов
Рецепт полного отчёта о публичном канале Telegram: охват, что читатели пересылают, темы, ритм публикаций, опросы и комментарии — с примером отчёта.
Этот рецепт нужен, когда вы хотите понять канал в Telegram: свой, канал конкурента или канал, где думаете купить рекламу. Агент читает публичные посты канала инструментом командной строки tg и пишет отчёт: сколько подписчиков видят пост, какие посты читатели пересылают, какие темы и форматы работают и что попробовать дальше. Нужен аккаунт Telegram, который может открыть канал. Быть админом не нужно.
Что вы получите
Посмотрите пример отчёта по @AI_DeepLearning — англоязычному каналу на 17 тысяч подписчиков с обзорами статей по компьютерному зрению. В отчёте 1 582 поста с 2017 года по октябрь 2026-го и комментарии за год. В нём есть:
- Охват: доля подписчиков, которые видят обычный пост, и как менялись просмотры по месяцам и годам.
- Лифт: просмотры поста по сравнению с соседними постами, чтобы честно сравнивать старые и новые посты. Пост с лифтом 1,5 и выше «выстрелил».
- Что читатели пересылают: пересылки и реакции на 1 000 просмотров — по формату, длине, теме и первой строке.
- Ритм: дни и часы публикаций и разница между днями с одним постом и днями с тремя.
- Опросы и комментарии: доля проголосовавших, самые большие опросы, сколько человек комментируют и как часто отвечает автор.
- Выводы: что работает, что можно улучшить и какие эксперименты провести — каждый пункт с цифрой.
Например, в примере видно, что посты с уже опубликованным кодом читатели пересылают чаще (5,3 раза на 1 000 просмотров против 4,0 по каналу), а просмотры после трёхмесячного перерыва в публикациях упали примерно на 40% и не вернулись.
Пример сделан нашим внутренним скриптом. Скрипт не опубликован. Шаги ниже используют только публичные команды tg, поэтому ваш агент может сделать такой же отчёт.
Что нужно заранее
- tg установлен, и в нём выполнен вход в ваш аккаунт Telegram. См. Установку.
- Ваш аккаунт может открыть канал. Достаточно, что канал публичный; вступать в него не нужно.
- ИИ-агент, который может запускать команды на вашем компьютере. См. Подключение агента.
- Для анализа скриптом — Python 3.11 или новее. Агент может разобрать данные и без скрипта.
Попросите агента
Используй tg CLI. Сделай аналитический отчёт по каналу Telegram @example_channel. Прочитай все его посты, опросы и комментарии под постами за последние 90 дней. Сохрани исходные данные в локальную папку. Затем посчитай охват, лифт, пересылки и реакции на 1 000 просмотров, темы, ритм публикаций, опросы и комментарии и напиши одностраничный HTML-отчёт с графиками и своими выводами. Комментаторов считай, но никогда не называй. Только чтение: не вступай в канал, не ставь реакции, не голосуй и не комментируй.Замените @example_channel на нужный канал. Если канал о другом, назовите агенту его темы — см.
Настройте темы.
Что происходит
- Агент открывает канал. Он получает у Telegram название, описание и число подписчиков.
- Читает все посты, по 100 за раз. У каждого поста есть просмотры, пересылки, реакции и число комментариев.
- Читает опросы и комментарии. Комментарии он открывает только под недавними постами, где они есть.
- Сохраняет исходные данные на вашем компьютере. Никуда больше ничего не отправляется.
- Анализирует данные и пишет отчёт. На этом шаге Telegram не нужен.
Все шаги только читают. Агент не вступает в канал, не ставит реакции, не голосует и не комментирует.
Сколько это занимает
Посты читаются примерно за 1 минуту на 1 000 постов. Комментарии — примерно 1 минута на 15 постов с комментариями. Для примера посты заняли около минуты, а комментарии за год (71 пост) — около 3 минут. Анализ и текст отчёта занимают у агента ещё несколько минут.
Для большого канала берите короткий период комментариев. Каждый пост с комментариями — это ещё один запрос к Telegram, и при слишком частых запросах Telegram может попросить аккаунт подождать.
Какие команды запускает агент
Здесь профиль называется personal. Подставьте имя своего профиля.
tg personal --json chats show @example_channel
tg personal --json messages list @example_channel --limit 100
tg personal --json messages list @example_channel 'id<1201' --limit 100
tg personal --json messages comments @example_channel 1250 --limit 100
tg personal --json polls show @example_channel 1189chats showдаёт название, описание и число подписчиков (participants_count).messages listдаёт 100 самых новых постов. Чтобы читать дальше в прошлое, добавьтеid<N, где N — самый старый id на предыдущей странице. Повторяйте, пока страница не придёт пустой.- Альбом (несколько фото или видео, отправленных вместе) приходит несколькими сообщениями с одинаковым
groupedIdвprovider_metadata. Считайте его одним постом. - У каждого поста
views,forwardsиcommentsлежат вprovider_metadata, реакции — вreactions. Опрос несёт вопрос и общее число голосов вprovider_metadata.poll. messages commentsдаёт комментарии под одним постом. В каждом комментарии есть имя автора, поэтому эти файлы не публикуйте.polls showдаёт ответы одного опроса с числом голосов, если Telegram показывает их вашему аккаунту.
Проверьте результат
В полном отчёте сказано, сколько постов прочитано и с какой даты. Сравните это число с id самого нового поста. Разница — это удалённые посты, лишние части альбомов и служебные сообщения, например «канал создан» или закреп. У служебных сообщений нет просмотров, и это не посты. В примере самый новый id был 1758, а в отчёте 1 582 поста.
Отчёт должен отделять измеренное от догадок. «Просмотры упали после перерыва» — это измерение. «Часть читателей выключила уведомления» — догадка: Telegram этого не показывает.
Чего не видно
- История подписчиков. Telegram даёт число подписчиков только на сегодня. Рост, источники подписчиков и просмотры по часам есть в официальной статистике канала, а она доступна только админам.
- Удалённые посты. Их больше нет в истории.
- Ответы некоторых опросов. Для опроса, в котором ваш аккаунт не голосовал, Telegram может дать только общий итог.
- Старые просмотры. У самых ранних постов некоторых каналов нет числа просмотров.
Настройте темы
Темы и первые строки отчёт находит по ключевым словам. Список для одного канала не подходит другому. Назовите агенту темы в запросе, например:
Темы этого канала: 3D-реконструкция (3D, NeRF, mesh, depth), поза и движение человека (pose, motion, avatar), генерация картинок и видео (diffusion, GAN, text-to-video), LLM (LLM, VLM, GPT). Ещё посчитай посты, где сказано, что код опубликован, и посты, где его только анонсировали.Сначала прочитайте посты, потом выбирайте слова. Проверьте несколько постов в каждой теме. Ключевые слова грубые: «motion» находит и движение робота.
Для группы
Те же команды читают сообщения группы, но у сообщений в группе нет просмотров и пересылок. Для своей группы смотрите активность, активных участников и вопросы без ответа — см. Администраторам групп.
Приватность
- Храните исходные данные у себя. В комментариях есть имена авторов и их имена пользователей.
- Не публикуйте имена читателей. Считайте комментаторов, но не перечисляйте их. Прежде чем делиться отчётом, проверьте, нет ли в нём имён пользователей, ссылок на профили людей, номеров телефонов и адресов почты. В примере читатели только посчитаны.
- Посты публичны, люди — нет. Цитировать посты самого канала можно. Цитата из комментария может выдать частного человека: уберите её или спросите его.
Дальше сравните два канала: запустите тот же запрос для второго канала с теми же темами и попросите агента поставить два отчёта рядом.