VPS для Telegram-бота: что нужно боту и как выбрать тариф

Боту с меню и парой команд хватает самого дешёвого сервера, а бот с рассылками, файлами и базой упирается совсем в другие ресурсы. Разбираем, что на самом деле потребляет бот, какие ограничения Telegram влияют на выбор сервера и как не переплатить.

Обновлено 22.10.2026 · Подобрать VPS по своим условиям →

Запрос «VPS для бота» обычно заканчивается выбором самого дешёвого тарифа, и в половине случаев это правильно. Проблемы начинаются позже: бот отправляет рассылку и получает ошибки 429, не может скачать присланное видео, после переезда на новый сервер перестаёт получать webhook или теряет сообщения за ночь простоя. Почти всё это объясняется не нехваткой ядер, а тем, как устроен Bot API. Ниже — как оценить нагрузку своего бота, какие правила Telegram задают требования к серверу и что проверить в тарифе до оплаты.

Что на самом деле потребляет бот

Сам по себе бот — это небольшой процесс, который принимает обновления от Telegram и отправляет ответы. Ресурсы съедает то, что вокруг него.

  • Сеть и задержка. Каждое действие бота — HTTPS-запрос к api.telegram.org. Для бота с меню важна стабильность канала, а не его ширина: трафик измеряется мегабайтами в день.
  • База данных. Пока пользователей сотни, хватает SQLite. Когда появляются тысячи пользователей, заказы, статистика и одновременные запросы, нужен PostgreSQL или MySQL, а это уже сотни мегабайт памяти и быстрый диск.
  • Очереди и фоновые задачи. Рассылки, напоминания по расписанию, обработка платежей через внешние сервисы. Обычно это Redis и отдельный процесс-обработчик.
  • Файлы. Конвертация видео, генерация картинок, PDF-отчёты нагружают процессор и диск сильнее, чем всё остальное вместе.
  • Внешние API. Бот, который пересылает запросы в нейросеть по API, почти не нагружает сервер сам: он ждёт ответа. Бот с локальной моделью — это уже задача для мощного сервера или GPU.

Оценивайте не «сколько весит бот», а сколько у него таких компонентов и что из них работает постоянно.

Лимиты Bot API, которые влияют на сервер

У Telegram есть ограничения, которые не обойти мощностью сервера. Их стоит знать до выбора тарифа, чтобы не платить за ресурсы, которые бот не сможет использовать.

  • Скорость отправки. Telegram рекомендует не отправлять в один чат больше одного сообщения в секунду, в группу — больше 20 сообщений в минуту, а массовые рассылки — быстрее примерно 30 сообщений в секунду. При превышении Bot API возвращает ошибку 429 с параметром retry_after. Рассылка на 10 000 пользователей занимает минимум несколько минут на любом сервере, поэтому нужна очередь с ограничением скорости, а не лишние ядра.
  • Размер файлов. Через стандартный Bot API бот скачивает файлы до 20 МБ и отправляет до 50 МБ. Если нужно больше, разворачивают собственный сервер Bot API (открытый проект telegram-bot-api): он снимает ограничение на скачивание и позволяет отправлять файлы до 2000 МБ. Такой сервер хранит файлы на диске, поэтому под него нужен запас диска и памяти.
  • Хранение обновлений. Пока бот недоступен, Telegram копит входящие обновления, но не дольше 24 часов. Сутки простоя без мониторинга — и часть сообщений пользователей потеряна безвозвратно.

Требования webhook к серверу

Базовые правила webhook — HTTPS и порты 443, 80, 88 или 8443 — разобраны на странице VPS для Telegram-бота. Есть ещё несколько требований, о которых узнают уже после покупки сервера.

  • Только IPv4. Telegram доставляет webhook только на IPv4-адреса, IPv6 не поддерживается. Самые дешёвые тарифы без выделенного IPv4 для webhook не подойдут — остаётся long polling или IPv4 за доплату.
  • TLS 1.2 и новее. Старые версии SSL и TLS 1.0/1.1 не принимаются. Сертификат должен совпадать с доменом; самоподписанный сертификат допустим, если загрузить его при вызове setWebhook.
  • Адреса отправителя. Запросы приходят из подсетей 149.154.160.0/20 и 91.108.4.0/22. Порт webhook в брандмауэре можно открыть только для них.
  • Секретный заголовок. Параметр secret_token в setWebhook заставляет Telegram добавлять к каждому запросу заголовок X-Telegram-Bot-Api-Secret-Token. Проверяйте его в приложении, чтобы отсекать поддельные запросы.
  • Параллельные соединения. По умолчанию Telegram держит до 40 одновременных соединений с webhook (настраивается от 1 до 100). Если обработчик медленный, запросы копятся, поэтому тяжёлую работу лучше отдавать в очередь и отвечать Telegram сразу.

Пока webhook установлен, получать обновления через getUpdates нельзя. При переезде на новый сервер сначала поднимите бота там, затем переустановите webhook на новый адрес; параметр drop_pending_updates при этом используйте только если старые обновления действительно не нужны.

Какой тариф под какой бот

Ориентиры для Linux-сервера с ботом на Python, Node.js или Go. Цифры с запасом под систему, логи и обновления.

Профиль ботаЧто работает на сервереТариф
Меню, команды, формы заявокБот и SQLite1 vCPU, 1 ГБ RAM, 10–20 ГБ SSD
Магазин или запись клиентовБот, PostgreSQL, Redis, админка2 vCPU, 2–4 ГБ RAM, 30–40 ГБ NVMe
Рассылки по большой базеБот, база, очередь, обработчики2 vCPU, 4 ГБ RAM, NVMe
Файлы и медиаБот, свой сервер Bot API, конвертация4 vCPU, 4–8 ГБ RAM, диск 80 ГБ и больше
Несколько ботов в DockerКонтейнеры, обратный прокси, общая база2–4 vCPU, 4 ГБ RAM, KVM

Для первых двух профилей подойдут подборки VPS с 1 ГБ и VPS с 2 ГБ. Если боты живут в контейнерах, нужна виртуализация KVM — подробнее на странице VPS для Docker. База с тысячами пользователей заметно выигрывает от NVMe, см. VPS для баз данных.

Что проверить в тарифе

  • Выделенный IPv4 — обязателен для webhook и упрощает работу с внешними API.
  • Тип ядер. Для бота с меню общих ядер достаточно. Для конвертации медиа и рассылок по расписанию, которые совпадают с пиковыми часами соседей, стабильнее выделенные.
  • Почасовая оплата. Удобно, чтобы проверить бота под реальной нагрузкой перед долгой оплатой и не платить за тестовый сервер весь месяц — подборка VPS с почасовой оплатой.
  • Снапшоты и резервные копии. База пользователей бота — самое ценное на сервере. Уточните, входят ли копии в цену или стоят отдельно.
  • Локация. Для бота важнее стабильный маршрут до Telegram и до внешних API, чем пинг до пользователей. Если бот хранит персональные данные россиян, учитывайте требования 152-ФЗ о хранении в России.

Как сравнить сеть и диск разных хостеров ещё до оплаты, описано в статье Как проверить пинг и скорость VPS до оплаты.

Надёжность: чтобы бот не терял сообщения

Перезапуск после сбоя через systemd или Docker — минимум. Этого мало, если бот приносит деньги.

  • Внешний мониторинг. Раз в несколько минут проверяйте, что бот отвечает: метод getWebhookInfo показывает число ожидающих обновлений и последнюю ошибку доставки. Растущая очередь — сигнал, что бот завис, хотя процесс формально жив.
  • Резервная копия базы вне сервера. Ежедневный дамп в другое хранилище. Снапшот у того же хостера не спасает, если проблема с аккаунтом или дата-центром.
  • Обновления системы. Автоматическая установка обновлений безопасности и перезагрузка в ночное окно, когда у бота меньше всего пользователей.
  • Ротация логов. Бот с подробными логами за несколько месяцев может заполнить небольшой диск, и тогда база перестаёт записывать данные.

Токен и доступ к серверу

Токен бота даёт полный контроль над ним: с ним можно читать входящие сообщения и писать от имени бота. Храните его в переменных окружения или файле с правами только для пользователя бота, не в репозитории. Запускайте бота под отдельным пользователем без прав root. Вход на сервер — по SSH-ключам, вход по паролю отключите. Если токен мог утечь, отзовите его через @BotFather командой /revoke и выпустите новый.

Если бот принимает оплату, держите платёжные ключи отдельно от токена и не логируйте содержимое запросов от платёжного сервиса целиком.

Когда одного VPS мало

Один сервер справляется с ботом на десятки тысяч пользователей, если тяжёлые задачи вынесены в очередь. Разделять стоит, когда база и обработчики мешают друг другу: база переезжает на отдельный сервер с NVMe, обработчики медиа — на сервер с большим числом ядер. Общие принципы выбора процессора, памяти и диска — в статье Как выбрать VPS. Для ботов в других мессенджерах есть отдельные подборки, например VPS для Discord-бота.

Частые вопросы

Хватит ли боту VPS с 1 ГБ памяти?

Да, если это бот с меню и командами на SQLite. С PostgreSQL, Redis, админкой или Docker берите 2 ГБ, а для обработки видео и своего сервера Bot API — от 4 ГБ.

Почему Telegram не доставляет webhook на мой сервер?

Частые причины: у сервера нет IPv4 (webhook работает только с IPv4), порт не из списка 443, 80, 88, 8443, сертификат не совпадает с доменом или используется TLS ниже 1.2. Последнюю ошибку доставки показывает метод getWebhookInfo.

Ускорит ли мощный сервер рассылку?

Нет. Telegram ограничивает массовую отправку примерно 30 сообщениями в секунду и одним сообщением в секунду в один чат. Нужна очередь с ограничением скорости, а не больше ядер.

Как боту работать с файлами больше 20 МБ?

Стандартный Bot API позволяет скачивать файлы до 20 МБ и отправлять до 50 МБ. Для больших файлов разворачивают собственный сервер Bot API, которому нужен запас диска и памяти.

Что будет с сообщениями, если сервер бота упал?

Telegram хранит входящие обновления до 24 часов. Если бот поднимется раньше, он их получит; более старые обновления пропадут. Поэтому нужен внешний мониторинг.

Как защитить webhook от поддельных запросов?

Задайте secret_token в setWebhook и проверяйте заголовок X-Telegram-Bot-Api-Secret-Token в приложении. Дополнительно откройте порт webhook только для подсетей Telegram 149.154.160.0/20 и 91.108.4.0/22.

Ещё в справочнике

  • Когда переезжать с хостинга на VPSVPS не делает сайт быстрее сам по себе: он даёт ресурсы и свободу, но вместе с ними — администрирование. Разбираем, по каким признакам видно, что хостинг стал тесным, когда проблема решается без переезда и как перенести сайт так, чтобы посетители ничего не заметили.
  • Windows VPS: лицензия, RDP и безопасность входаСервер с Windows дороже Linux не только из-за памяти: в цену входит лицензия, и от того, как она оформлена, зависит, законно ли вы работаете и сколько человек может подключиться. А открытый RDP — самая частая причина взлома таких серверов. Разбираем обе темы.
  • Как проверить пинг и скорость VPS до оплатыЦифры в тарифе не говорят, какой будет задержка до ваших пользователей и как быстро работает диск. Большую часть этого можно измерить до оплаты, остальное — в первый час работы сервера. Разбираем инструменты и то, как читать результаты.
  • Корпоративная сеть на VPS: удалённый доступ к офисуАрендованный сервер может стать центром частной сети компании: через него сотрудники из дома и филиалы подключаются к 1С, файловому хранилищу, CRM и Git. Разбираем схемы, протоколы, требования к серверу и базовую защиту.
  • Как выбрать VPS: 7 параметров, которые решаютДва тарифа с одинаковыми «2 ядра, 4 ГБ, 50 ГБ» могут отличаться по скорости в разы и по цене через год — вдвое. Разбираем, что стоит за каждой строкой тарифа и на что смотреть до оплаты.
  • VPS или VDS: есть ли разница и что на самом деле важноНа российском рынке VPS и VDS чаще всего означают одно и то же — виртуальный сервер. Разница, которая действительно влияет на работу, прячется не в названии, а в типе виртуализации и в том, гарантированы ли ресурсы.