У меня есть канал на 25 тысяч подписчиков, и однажды я поймал себя на том, что толком про него ничего не знаю. Встроенная статистика телеграм-канала показывает узкий срез, сервисы аналитики считают со стороны и просят денег за глубину. Тогда я собрал свою статистику телеграм-канала — с точными цифрами по каждому посту и автообновлением раз в день. Ниже — как это работает, с кодом, цифрами и живыми примерами. Готовый результат можно открыть сразу: статистика канала на pawetta.com/stats.
- Встроенная статистика телеграм-канала доступна админу с ~50 подписчиков и показывает просмотры, подписки и топ постов за короткий период — без выгрузки, истории и ER.
- tgstat и telemetr удобны для разведки чужих каналов, но охваты считают оценкой и берут деньги за глубину.
- Свою статистику собирают через клиентский Telegram API (Telethon): бот истории канала и чужих реакций не видит. По каждому посту тянутся просмотры, реакции по эмодзи и репосты.
- Сбор вешается на cron — раз в день данные обновляются сами, и всё лежит на одной странице.
Какие метрики есть у телеграм-канала
Прежде чем собирать статистику телеграм-канала, стоит договориться, что мы вообще меряем. У поста в канале есть четыре базовые метрики, и ещё две — на уровне канала.
Дальше вся задача — получить эти цифры по каждому посту за всё время, а не за последнюю неделю. Тогда можно считать статистику постов телеграм в динамике, искать рекорды и сравнивать недели. Посмотрим, кто такое умеет.
Встроенная статистика телеграм-канала: что показывает и где предел
Самый частый вопрос — как посмотреть статистику телеграм-канала, не устанавливая ничего лишнего. Ответ: она уже встроена. Откройте канал → «Управление каналом» → «Статистика». Раздел появляется примерно с 50 подписчиков и доступен только администраторам.
Для «глянул за неделю» этого хватает. Мне не хватило вот чего:
- нет выгрузки — цифры нельзя утащить в таблицу и посчитать по-своему;
- нет истории по каждому посту за всё время: статистика постов телеграм живёт, только пока пост свежий;
- нет ER и репостов в разрезе — охваты видно, а сколько людей сохранило и переслало каждый пост, приходится считать руками;
- нет сравнения недель и разбивки по подписчикам, просмотрам и реакциям в динамике.
Статистика подписчиков телеграм-канала и статистика просмотров там есть, но в формате «посмотрел и забыл», а не «работаю с данными».
tgstat, telemetr и другие сервисы аналитики телеграм-каналов
Логичный следующий шаг — сервис аналитики телеграм-каналов. tgstat и telemetr я и сам использую, когда нужно разведать чужой канал перед закупкой рекламы. Но под задачу «моя статистика для меня» они подходят плохо.
| Что важно | Встроенная | tgstat / telemetr | Свой сбор |
|---|---|---|---|
| Точные цифры по вашим постам | да | оценка охватов | да |
| История за всё время | нет | за подписку | да |
| Выгрузка и свои разрезы | нет | ограниченно | да |
| ER, рекорды, динамика недель | нет | частично | да |
| Анализ чужих каналов | нет | да, удобно | неудобно |
| Цена | бесплатно | подписка | сервер + вечер |
Сервисы считают охваты по своей модели — это оценка со стороны, а не точные цифры моих постов. И заточены они под рекламу и подбор площадок, а не под личный дашборд с нужными мне разрезами. Мне же нужны были настоящие цифры именно по своим постам и свои срезы. Такое проще собрать самому.
Почему я собрал свою статистику
Я выписал, что хочу получить на выходе — и понял, что ни один готовый вариант это целиком не закрывает.
- точные просмотры, реакции и репосты по каждому посту за всё время;
- ER каждого поста и подсветка рекордов — где необычно высокие реакции или репосты при среднем охвате;
- динамика по неделям: посты, просмотры, реакции, репосты;
- число подписчиков, которое подтягивается само;
- всё на одной странице и с обновлением раз в день, без ручного экспорта.
Дальше — как я это собрал. Спойлер: понадобился вечер, Python и ноль рублей на сервисы.
Как собрать статистику через Telegram API (бот не подойдёт)
Главная развилка. Бот в Telegram не видит историю канала и не отдаёт чужие реакции — через Bot API полноценную статистику телеграм-канала не собрать. Поэтому я пошёл через клиентский API (MTProto): вход под своим аккаунтом библиотекой Telethon.
Что нужно на старте:
- создать приложение на my.telegram.org → «API development tools» и получить
api_idиapi_hash; - войти под своим номером — код придёт внутри Telegram, при включённой двухфакторке ещё и облачный пароль;
- получить файл сессии — это ключ доступа, дальше вход уже не нужен.
Сам сбор — короткий скрипт. Проходим по всей ленте канала и по каждому посту забираем дату, просмотры, реакции и репосты:
from telethon import TelegramClient
from telethon.tl.types import MessageReactions
client = TelegramClient("session", api_id, api_hash)
await client.start()
rows = []
async for m in client.iter_messages("@my_channel"):
if m.action: continue # пропускаем служебные
reacts = 0
if isinstance(m.reactions, MessageReactions):
reacts = sum(r.count for r in m.reactions.results)
rows.append({
"date": m.date, "views": m.views or 0,
"reactions": reacts, "forwards": m.forwards or 0,
"text": (m.message or "")[:200],
})
Пара нюансов из практики. Медиа-альбомы (несколько картинок одним постом) приходят как отдельные сообщения с общим grouped_id — их нужно схлопнуть в один пост, иначе задвоите. И реакции удобно разложить по эмодзи отдельно — тогда видно, чем именно реагируют. Это честный ответ на «как собрать статистику телеграм-канала»: настоящие цифры прямо из Telegram, без внешних оценок.
Что и как я считаю: ER, охваты, рекорды
Когда есть таблица со всеми постами, дальше начинается интересное. Из сырых просмотров, реакций и репостов я считаю производные метрики.
ER считается в одну строку:
er = (reactions + forwards) / views * 100 # engagement rate поста, %
Дальше — сортировки, топы и подсветка рекордов. Вот реальный пример из моего дашборда: топ-20 постов по просмотрам, где в каждом столбце подсвечены три рекордных значения. Сразу видно посты с необычно высокими реакциями (178, 171, 169) и репостами (145) при среднем охвате — глазами такое не выловишь.
Автообновление раз в день
Один раз собрать данные — полдела. Чтобы статистика телеграм-канала обновлялась сама, я повесил сбор на cron: раз в сутки скрипт перезабирает свежие цифры, подтягивает актуальное число подписчиков и пересобирает страницу.
# crontab: каждый день в 5:15 утра
15 5 * * * /opt/stats/refresh.sh
Так вопрос «как посмотреть статистику телеграм-канала» у меня теперь решается одной вкладкой в браузере, а не походом в приложение под админом. Просмотры и репосты в Telegram накапливаются со временем, поэтому свежие посты «недобирают» относительно старых — это стоит держать в голове, когда сравниваешь недели.
Что получилось — живой дашборд
Результат лежит на отдельной странице: pawetta.com/stats. Ниже — реальный кусок: динамика по неделям за 2026 год. Каждая строка — неделя: посты, просмотры, реакции, репосты. Насыщенность заливки показывает силу недели, рекорды помечены звёздочкой, пустые недели видно сразу.
Что ещё есть на дашборде статистики телеграм-канала:
- топ-20 постов по просмотрам и отдельные топы по реакциям и репостам с ER каждого поста;
- распределение реакций по эмодзи;
- полная таблица всех постов с сортировкой и поиском;
- сравнение с топ-каналами ниши по ER — со скорингом «насколько тема близка нам».
Последний блок — мой любимый. Я тем же способом собрал статистику по восьми десяткам топ-каналов ниши и вывел их лучшие посты по вовлечённости, чтобы подсматривать удачные форматы. Выглядит так:
| Пост конкурента | Score | ER | 👁 | 🔁 |
|---|---|---|---|---|
| База про AI-агентов для SEO — дропнул видосик | 89 | 5.5% | 4 197 | 178 |
| 20+ инструментов и гайдов OpenAI по ChatGPT | 87 | 5.6% | 4 080 | 182 |
| НЕЙРОНАХОДКИ — лучшее по нейросетям за месяц | 86 | 8.3% | 6 121 | 403 |
| Google выкатил гайд по оптимизации под GEO/AEO | 80 | 6.0% | 4 283 | 208 |
Всё это — просмотры, реакции, репосты, охваты телеграм-канала — обновляется каждый день автоматически.
Сколько это стоит по сравнению с сервисами
По деньгам сравнение простое. Сервисы аналитики телеграм-каналов берут помесячную подписку за глубину и историю. Свой сбор — разовые усилия и копеечный сервер.
| Вариант | Разово | В месяц | Что получаете |
|---|---|---|---|
| Встроенная статистика | — | 0 ₽ | узкий срез за неделю |
| Сервис аналитики (подписка) | — | от ~1 000 ₽ | оценка охватов, история за плату |
| Свой сбор (этот кейс) | вечер на скрипт | ~150–300 ₽ VPS | точные цифры, свои разрезы, автообновление |
Если сервер у вас уже есть под другие задачи — как у меня, — то свой сбор статистики выходит в ноль рублей сверху.
Кому подойдёт, а кому нет
Подойдёт, если вы ведёте канал всерьёз и хотите свою статистику телеграм-канала без ежемесячной оплаты и с нужными именно вам разрезами — динамикой, ER, рекордами, сравнением недель. И если готовы разобраться в несложном скрипте на Python либо попросить того, кто это соберёт.
Не подойдёт, если нужно быстро оценить чужие каналы перед закупкой рекламы: для разведки удобнее tgstat и telemetr, они для этого и сделаны. И если совсем не хочется трогать код — тогда встроенной статистики или платного сервиса будет достаточно.
Частые вопросы
Как посмотреть статистику телеграм-канала?
С какого количества подписчиков появляется статистика?
Можно ли собрать статистику чужого канала?
Чем свой сбор лучше tgstat и telemetr?
Как посмотреть охваты и ER телеграм-канала?
Можно ли сделать статистику канала бесплатно?
Нужен ли бот, чтобы собирать статистику?
Главное
Встроенная статистика телеграм-канала показывает узкий срез, а сервисы считают охваты со стороны и просят денег за глубину. Своя статистика собирается за вечер: клиентский Telegram API через Telethon тянет просмотры, реакции и репосты по каждому посту, cron обновляет данные раз в день, а на выходе — одна страница с динамикой, ER, рекордами и даже сравнением с конкурентами. Точные цифры по своим постам, свои разрезы и ноль рублей за подписку. Живой результат — на pawetta.com/stats.