Бот по нумерологии за две недели набрал 2 000 пользователей. Я не знал, кто они, и сделал свою аналитику. MaxBotStat.ru
Аналитика и рассылки для Telegram и Макс ботов в режиме прокси: в коде бота меняется одна строка, и в кабинете идут контакты, диалоги, UTM, воронки, рассылки. Особенно полезно тем, кто целится в Макс — мы пока единственный сервис, который сейчас умеет в Макс-аналитику именно для ботов (или мы плохо искали).
Обзорный дашборд кабинета — KPI, графики и лента событий в реальном времени
С чего всё началось
Полгода назад я собрал бота «НейроНумеролог». Принцип простой: присылаешь дату рождения, ChatGPT собирает базовую нумерологическую карту, отдаёт бесплатно. Одна карта бесплатно, далее — платная карта за 99 ₽.Поднял за вечер на aiogram, кинул пару постов в тематические каналы. Через две недели — больше двух тысяч пользователей.
И тут я понял, что про этих людей не знаю ничего.
Кто платит, а кто нет. Откуда они приходят — vc, инстаграм-таргет, перерепост в каналах. На каком шаге люди отваливаются — некоторые присылают дату и тут же платят за расширенный, другие зависают на бесплатной карте и пропадают. Почему. Какая реклама окупается.
Полез смотреть, чем пользуются ребята с похожими ботами. Существующие аналитики делятся на два лагеря:
1. Кабинетные. Ты сам копируешь события из своего бота в их API. То есть переписываешь код. Ну такое.
2. Тяжёлые платформы. Сначала предлагают перенести бота на их хостинг или фреймворк, а потом уже дают аналитику. Я свой код уже отполировал и оттестил — мигрировать туда что-то не хочется.
Хотелось простого: код не трогать, никуда не мигрировать, получать данные. Так появился MaxBotStat.ru.
Идея — режим прокси
В коде бота меняется ровно одна строка — базовый адрес Bot API:
Для Макса аналогично:
Дальше бот работает как раньше. Мы прозрачно гоним запрос дальше в Telegram или Макс, отдаём ответ как есть — и попутно сохраняем у себя контакт, сообщение, UTM-метку из /start. Ответ Telegram возвращается боту без задержки и без подмен.
Схема: ваш бот → MaxBotStat.ru → Telegram / Макс. Адрес меняется только один.
Из приятного: Telegraf, aiogram, python-telegram-bot, grammY и ещё штук двадцать клиентов Bot API поддерживают переопределение базового адреса из коробки. Где-то это apiRoot, где-то base_url, где-то переменная окружения. Подсунул наш домен — поехали.
Telegraf — Node.js// Telegraf (Node.js)
aiogram — Python
Для НейроНумеролога это две строки в bot.py — больше ничего не трогал.
Главное — Макс
Отдельно про Макс. Это национальный российский мессенджер, который агрессивно набирает аудиторию: его уже предустанавливают на госуслугах и в школах, аудитория растёт в десятки миллионов, и в B2C он уже становится обязательным каналом — наряду с Telegram, а не вместо.
И вот тут начинается интересное: на момент написания статьи мы единственный сервис, который умеет проксировать Bot API Макса и собирать по нему аналитику.
Я не преувеличиваю — обзвонил коллег по индустрии, посмотрел все известные продукты для аналитики ботов, отраслевые чаты. Картина одинаковая: либо «у нас только Telegram», либо «обещаем добавить когда-нибудь». Макс — закрытая платформа с молодым API, документация ещё допиливается, и большинство ребят просто не хотят с ним возиться.
Мы возимся. У нас Макс-прокси работает с того же домена api-max.maxbotstat.ru, с теми же возможностями, что и Telegram: контакты, диалоги, UTM-источники, воронки, рассылки. Никаких доплат, Макс на всех тарифах вместе с Telegram.
Если вы строите бота под Макс прямо сейчас — у вас единственный вариант для аналитики и рассылок. Это и есть наша киллер-фича, и она работает до тех пор, пока остальные не догонят. По нашим оценкам, окно у нас минимум месяцев шесть.
Что в кабинете
Не буду расписывать каждую кнопку — лучше покажу.
Контакты. Полный список собеседников бота: аватарка, имя, телефон, отметка Premium, время последнего визита, теги, источник прихода. Сортировки, фильтры, экспорт в CSV — без сюрпризов.
Контакты: теги, источники, активность, аватарки из Telegram
Теги. Любой контакт можно пометить — pro для тех, кто оплатил расширенный разбор, lead для тех, кто только получил бесплатную карту, compat — для тех, кто запрашивал совместимость, churn-risk — для тех, кто давно не заходил. Теги ставятся вручную в карточке диалога или раздаются автоматически правилом «нажал такую-то кнопку».
Диалоги. История сообщений по контакту, с обеих сторон. Полезно, когда поддержка спрашивает «а что мы там с человеком обсуждали». Картинки, файлы — всё бережно сохраняется. Справа — врезка с тегами, источником, датой рождения (если человек её прислал) и счётчиком оплат.
Диалог с контактом: переписка + врезка профиля справа
UTM-источники. Размечаешь ссылки вида t.me/your_bot?start=utm_vc_post — в кабинете видно, какая кампания принесла сколько контактов, сколько из них активны, сколько отвалились на /start. Реклама на vc сильно опередила инстаграм-таргет — без UTM я бы не понял.
Источники: UTM-кампании, конверсия и доли по новым контактам
Воронки. Описываешь шаги (/start → прислал дату → получил карту → нажал «Расширенный» → оплатил) и смотришь, где люди отваливаются. По стилю похоже на Amplitude или Mixpanel — только для бота.
Полезная штука рядом — карточка «Узкое горлышко»: подсвечивает шаг с самым большим отвалом, показывает типичный последний текст у тех, кто отвалился, и из какого источника они в основном пришли. У меня узкое горлышко между «прислал дату» и «получил карту» — оказалось, ChatGPT иногда тормозил по 10–15 секунд, люди не дожидались. Это я бы без воронки не отловил.
Намерения. Автоматическая категоризация входящих сообщений: «запрос карты», «вопрос», «совместимость», «жалоба», «благодарность». Не пытаемся быть GPT — внутри гибрид простых правил и небольшой модели. Для базовых разрезов хватает.
Рассылки. Это уже действие, не аналитика. Сегмент по тегу, источнику или активности — текст или картинка — отчёт о доставке в реальном времени. Пример: «отправить всем lead-ам, кто заходил за 30 дней, и исключить pro и churn-risk» — попадает 348 человек, и я вижу прогноз доставки до отправки.
Открытый API. REST, токены с разрешениями «чтение» и «запись», идемпотентные операции. Документация лежит на docs.maxbotstat.ru, рядом — файл llms.txt по стандарту llmstxt.org, чтобы нейронки нормально отвечали на вопросы про наш API.
Тарифы
Без «у нас всё бесплатно навсегда» — расскажу, как есть. Главное: Telegram и Макс — на всех тарифах без доплат.
• Бесплатный — 0 ₽. 1 бот, до 100 сообщений в день, история 7 дней, базовая аналитика. Для пет-проектов и попробовать.
• Микро — 199 ₽/мес или 1 990 ₽/год. 1 бот, без ограничений по сообщениям, история 30 дней.
• Про — 990 ₽/мес или 9 900 ₽/год. До 5 ботов, полная аналитика (воронка, интенты, heatmap), история 90 дней, сегменты, email-отчёты, выгрузка в CSV.
• Макс — 2 990 ₽/мес или 29 900 ₽/год. Без ограничения по числу ботов, история 24 месяца, API + webhooks, real-time лента событий, A/B тесты диалогов, команда до 10 человек, поддержка 24/7.
Оплата картой и СБП, юрлицам — счёт и закрывающие документы.
Куда мы идём
Из ближнего:
• Конструктор воронок мышкой. Сейчас они описываются через JSON — для технарей нормально, для маркетологов нет.
• Сегменты с правилами вида «больше двух сообщений за последние 7 дней + UTM-источник = X». Просится естественным образом, когда смотришь, как ребята пользуются.
• Подписки на события (webhook → ваш сервер) для тарифа Макс — половину уже сделали, дотягиваем интерфейс.
• Глубже вытаскивать данные из Макса: пока берём то, что отдаёт публичный API, но кое-что приходится восстанавливать косвенно. Постепенно расширяем.
Глобально хочется закрывать историю «у меня бот, мне нужна аналитика и рассылки» так же спокойно, как Google Analytics закрывает её для сайтов: подключил один тег и забыл.
Что попробовать
• Кабинет — app.maxbotstat.ru. Бесплатный тариф без карты, регистрация в один шаг.
• Документация — docs.maxbotstat.ru. Примеры на Node.js, Python, Go.
• Лендинг — maxbotstat.ru. Покороче, с тарифами.
Если есть бот с подписчиками и непонимание, кто эти люди — попробуйте, минут пять. Если у вас бот в Максе — попробуйте обязательно, конкурентов всё равно сейчас нет. Будут вопросы или замечания — пишите в комментарии, отвечу.