CopyPost или свой бот: что выгоднее для пересылки постов
Сервер, память, баны аккаунтов, потерянные посты, альбомы и правки — разбираем, во что на самом деле обходится самописный бот для пересылки в Telegram.
«Да это же десять строчек на Python» — так начинается почти каждый самописный бот для пересылки постов. Первая версия и правда пишется за вечер: бот видит новый пост в канале-источнике и копирует его в ваш канал. Проблемы приходят потом — когда альбом разваливается на отдельные посты, когда аккаунт, через который бот читает каналы, без предупреждения перестаёт работать, когда пост из большого канала просто не приходит.
Мы разобрали всё, с чем сталкивается владелец своего бота: где держать сервер, сколько памяти съедает бот, за что банят аккаунты, почему теряются сообщения и что происходит с правками и удалениями. И честно сравнили с тем, что делает CopyPost, — включая то, чего он не делает.
Бот или аккаунт: первая развилка #
Прежде чем выбирать сервер, придётся решить, от чьего имени ваша программа будет читать каналы.
Обычный бот из @BotFather — официальный и безопасный способ автоматизации. Но у него жёсткие ограничения:
- он видит посты только тех каналов, куда его добавили администратором. Чужой канал, даже публичный, бот читать не может;
- сообщения других ботов в группах видит лишь частично;
- скачивает файлы не больше 20 МБ, а загружает не больше 50 МБ — длинное видео он может переслать или скопировать как есть, но не может изменить (скажем, наложить водяной знак): для этого его пришлось бы скачать;
- в один чат пишет не чаще раза в секунду, в группу — не больше 20 сообщений в минуту.
Поэтому почти все, кто собирает новости из чужих каналов, переходят на пользовательский аккаунт — обычный аккаунт Telegram, которым управляет программа (его называют userbot). Он видит всё, на что подписан, но с ним приходят риски, о которых ниже. Подробнее о разнице — в статье Userbot или бот.
CopyPost работает и с ботами, и с аккаунтами, и их можно сочетать: например, читать аккаунтом, а публиковать — ботом-администратором вашего канала. Так аккаунт видит всё, а посты выходят от имени самого канала (не бота), и бота при случае легко заменить.
Где держать сервер #
Telegram живёт в трёх городах #
Серверы Telegram стоят в Майами, Амстердаме и Сингапуре. Каждый аккаунт «прописан» в одном из этих дата-центров — дата-центр выбирают при регистрации по тому, откуда вы регистрировались (Telegram берёт ближайший), и сами вы его не смените — перенести аккаунт в другой дата-центр может только сам Telegram. Поэтому аккаунты, зарегистрированные в Европе и СНГ, обычно живут в Амстердаме.
Что это значит для своего бота:
- сервер лучше держать рядом с дата-центром аккаунта. Каждый запрос к Telegram идёт туда и обратно; с сервера в Нидерландах до Амстердама — единицы миллисекунд, с другого континента — десятки и сотни;
- файлы лежат в дата-центре того, кто их загрузил. Если видео в канал загрузил аккаунт, прописанный в Сингапуре, а ваш живёт в Амстердаме, программа открывает отдельное соединение с Сингапуром, чтобы скачать это видео;
- если у вас несколько аккаунтов из разных регионов, один сервер для всех будет далеко хотя бы от одного дата-центра.
Дома и в «своей» стране может не работать #
Держать бота на домашнем компьютере или на сервере в стране, где Telegram ограничивают, — плохая идея. В 2026 году Telegram в России сначала замедляли, а весной — массово блокировали; он также заблокирован в Китае и Иране. Бот, который теряет связь с Telegram, теряет и посты.
Значит, нужен арендованный сервер в стране, где Telegram работает без ограничений. Самые маленькие стоят 4–6 долларов в месяц (512 МБ – 1 ГБ памяти, одно ядро — например, у DigitalOcean). Цены меняются: Hetzner, популярный у разработчиков, поднимал их весной и ещё раз летом 2026 года, а серверов в Амстердаме у него нет вовсе.
В CopyPost выбор площадки и связь с нужными дата-центрами — наша забота. Вы не арендуете сервер, не следите за его оплатой и не переезжаете, если провайдер поднял цены или Telegram перестал открываться из страны.
Сколько памяти съест бот #
На сервере за 5 долларов памяти немного, и библиотеки, на которых пишут ботов, расходуют её очень по-разному. Независимых замеров почти нет — ниже то, что удалось найти, и наши собственные замеры.
| Библиотека | Язык | Память | Откуда цифра |
|---|---|---|---|
| python-telegram-bot | Python | ~40 МБ | наш замер: процесс без подключения |
| Telethon | Python | ~63 МБ | наш замер: клиент создан, не подключён |
| Kurigram (замена Pyrogram) | Python | ~68 МБ | наш замер, те же условия |
| aiogram | Python | ~167 МБ | наш замер, один запуск |
| mtcute | TypeScript | «меньше 50 МБ» | слова авторов |
| TDLib | C++ | до ~10 МБ на аккаунт | оценка разработчика |
| gotd | Go | «150 КБ на клиента без нагрузки» | слова авторов |
Важно, что это нижняя граница: наши замеры сделаны до подключения к Telegram, когда программа ещё ничего не знает о ваших каналах, а цифры авторов — при небольшой нагрузке. Дальше память растёт:
- у Telethon есть жалобы, что, когда в одной программе работает около десятка аккаунтов, при определённой ошибке память растёт на несколько мегабайт в секунду; бот для RSS на его основе, обслуживающий больше 6000 лент, занимает около 350 МБ на одноядерном сервере;
- у TDLib, по отчётам пользователей, программа, в которой аккаунт только принимает сообщения, расходует всё больше памяти, пока не упадёт, — за несколько десятков часов, а база данных TDLib на диске у одного пользователя доросла до 18,7 ГБ.
На практике это значит, что свой бот нужно периодически перезапускать и следить за местом на диске — иначе однажды ночью он упадёт, а вы узнаете об этом утром по пустому каналу.
Есть и риск посерьёзнее: библиотеки умирают. Pyrogram заброшен с декабря 2024, Telethon в феврале 2026 ушёл с GitHub на другую площадку. Telegram при этом продолжает меняться: один только Bot API получил 13 обновлений с начала 2025 года, а старые версии протокола Telegram уже отключал — после этого программы на старых версиях библиотек переставали входить в аккаунт.
Баны аккаунтов #
Это главный страх тех, кто читает каналы пользовательским аккаунтом, — и он обоснован.
Что говорит сам Telegram #
- Все аккаунты, которые входят через неофициальные программы, автоматически попадают под наблюдение. За флуд, спам и накрутку подписчиков или просмотров — бан навсегда, а восстановление — только письмом живому человеку.
- Если на аккаунт жалуются как на спамера, его ограничивают: писать можно только тем, кто сохранил ваш номер или написал первым. Первый раз — на несколько дней, потом дольше.
- С 2025 года аккаунт могут «заморозить»: он остаётся только для чтения, а если апелляцию не примут — удаляется.
- Разработчики Telethon прямо советуют не использовать для автоматизации новые аккаунты и виртуальные номера: Telegram банит их охотнее, а правила меняет без предупреждения.
Невидимые ограничения #
Telegram не публикует точных лимитов, но при их превышении отвечает «подождите N секунд». Самописный бот часто обрабатывает это молча: если ждать надо не больше минуты, Telethon по умолчанию просто ждёт и ничего не сообщает, а при более долгом ожидании выдаёт ошибку. Хуже — ограничение «за спам»: в ответе Telegram не говорит, сколько оно продлится, и повторные попытки не помогают. Ещё один скрытый потолок — аккаунт без Premium может состоять не больше чем в 500 каналах и супергруппах.
Что делает CopyPost — и чего не делает #
Честно: ни один сервис не может гарантировать, что аккаунт не забанят. Решение принимает Telegram, и если аккаунт рассылает спам, его заблокируют где угодно. Но многие баны и потери случаются не из-за спама, а из-за небрежного поведения программы. Здесь CopyPost берёт работу на себя:
- соблюдает паузы Telegram автоматически. Если Telegram просит подождать, CopyPost ждёт ровно столько (до 15 минут) и не долбит его повторными запросами. Если пауза дольше, пост не ждёт часами, а пропускается, и вы увидите в панели понятное сообщение: «Telegram ограничил отправку с этого аккаунта ещё на N — сообщение пропущено»;
- пауза одного аккаунта не останавливает остальные, а повторные попытки отправки идут с нарастающими интервалами;
- подключается открыто. Аккаунт входит как приложение CopyPost — с
api_id(это номер приложения в Telegram), выданным самому CopyPost, — а не притворяется чужой программой. По желанию можно указатьapi_idиapi_hash(номер и ключ) вашего собственного приложения, полученные на my.telegram.org; - сразу предупреждает. Если аккаунт разлогинило, заблокировало, заморозило или удалило из чата, сервисный бот CopyPost напишет вам, а в панели аккаунт будет отмечен — вы не узнаете о проблеме через неделю по пустому каналу.
Наш совет тот же, что у разработчиков библиотек: для пересылки заведите отдельный аккаунт, не личный, и не подписывайте его на сотни каналов за день.
Почему посты теряются #
Это самая неприятная проблема своего бота: он работает, ошибок нет, а части постов в вашем канале просто нет.
Telegram присылает не всё #
Telegram не обязан доставлять каждое обновление мгновенно. Его документация прямо говорит, что по некоторым каналам он может присылать обновления (новые посты, правки, удаления) реже или вовсе перестать, а пропуски программа должна дозапрашивать сама. Самописные боты этого обычно не делают — и на практике:
- в Telethon жалуются, что новые посты приходят из тестового канала на двух подписчиков, но не приходят из публичного канала на 500 тысяч. Решения так и не появилось: в феврале 2026 года, при переезде проекта, эту жалобу закрыли как «не планируется»;
- в GramJS события по каналу перестают приходить через несколько секунд, если с каналом не «взаимодействовать»;
- обходной путь из другого отчёта — заставить библиотеку дозапрашивать обновления чаще — примерно через 10 часов приводит к падению программы из-за нехватки памяти.
В CopyPost обычный приём дополнен турбо-приёмом: аккаунт сам опрашивает до 10 каналов дважды в секунду и забирает посты, которые Telegram ещё не прислал. Турбо-приём бесплатен на любом тарифе. Для ботов работает похожая подстраховка — бот каждую секунду сам проверяет три канала из тех, что он читает, перебирая их по очереди.
Перезапуск — и посты пропали #
Сервер перезагрузился, программа упала, отключился интернет. Что было за это время?
- для обычного бота Telegram хранит неполученные обновления не больше 24 часов;
- у Telethon догонялка пропущенного по умолчанию выключена — без неё всё, что вышло во время простоя, теряется;
- совсем старые события Telegram удаляет, и их уже не получить.
В CopyPost после обрыва связи или перезапуска сервис сам дозапрашивает пропущенное в каждом канале, из которого читают ваши пайплайны (так в CopyPost называется связка «откуда — куда — с какими правилами»). Полученный пост сначала записывается на диск и только потом считается принятым — поэтому он переживёт даже падение сервера. И не продублируется: CopyPost помнит, какие копии уже опубликованы, а у каждой отправки своя метка, и повтор Telegram не примет.
Одно честное ограничение: если аккаунт был недоступен дольше часа, посты старше часа CopyPost не публикует — чтобы после долгого простоя в ваш канал не вывалилась пачка устаревших новостей.
Альбом развалился на части #
Альбом в Telegram — это несколько отдельных сообщений с общим номером группы. Бот получает их по одному и должен склеить обратно; обычно бот ждёт остальные части примерно полсекунды, и если альбом большой или сеть медленная, часть фотографий не успевает — и альбом разрывается. В вашем канале появляются три поста по одной фотографии вместо одного с тремя.
CopyPost тоже ждёт части альбома не бесконечно, но дольше — до нескольких секунд, если части приходят с задержкой, — и публикует их одним постом. А если фотография опоздала так сильно, что альбом уже вышел, она выйдет отдельным постом — ничего не теряется и не дублируется.
Что вообще нельзя переслать #
Telegram не даёт копировать служебные сообщения, платные медиа, розыгрыши и счета, а из каналов с защитой от пересылки не даёт пересылать ничего. Причём если переслать сразу несколько сообщений одним запросом, такие сообщения иногда пропускаются молча. Служебные сообщения, платные медиа, розыгрыши и счета не скопирует и CopyPost, а посты из защищённого канала в режиме «Копия» (пост выходит как новый, без пометки «Переслано из») CopyPost публикует заново, с заново загруженными файлами. Но важно хотя бы знать, что пост не дошёл: в CopyPost последняя ошибка доставки видна на пайплайне с текстом на русском и временем, а в журнале за последние три дня — каждая доставка и сколько времени она заняла.
Правки и удаления #
Автор поста исправил опечатку или удалил новость — хорошо бы, чтобы копия у вас изменилась тоже. Для своего бота это отдельный большой кусок работы:
- номера сообщений в каждом чате свои, поэтому нужно хранить, какая копия соответствует какому оригиналу, и не потерять эти записи при перезапуске;
- Bot API вообще не сообщает об удалении постов в каналах, а удалить свою копию бот может только в течение 48 часов;
- пользовательскому аккаунту Telegram сообщает об удалениях «не на 100%», а в личных чатах и небольших группах — даже без указания, в каком чате удалили.
В CopyPost правки, удаления и закрепы повторяются вслед за источником, а если пост в источнике отвечает на другой пост или ссылается на него, копия у вас ответит на вашу копию того поста и сошлётся на неё. Исключение — режим «Пересылка» (с пометкой «Переслано из»): правки до таких копий не доходят и ссылки в них не подменяются, потому что Telegram не даёт менять пересланные сообщения (а удаления, закрепы и ответы работают и там).
Безопасность и ваши данные #
Справедливый вопрос к любому сервису: что он видит?
Чтобы читать каналы от имени вашего аккаунта, CopyPost хранит его ключ сессии (с ним программа остаётся в аккаунте без повторного входа) — как и любая программа, которой вы разрешили войти, включая ваш собственный бот. Поэтому мы и советуем отдельный аккаунт для пересылки. Удалить аккаунт из CopyPost можно в любой момент: сервис сначала закрывает сессию в Telegram, потом стирает ключи. Закрыть её можно и самому — в Telegram, в разделе активных сеансов.
Текст постов CopyPost держит только пока доставляет — обычно секунды. Соответствие оригиналов и копий (без текста) хранится 30 дней, чтобы повторять правки и удаления. Трекеров нет, данные передаются только Telegram, хостинг-провайдерам, на чьих серверах работает сервис, и на ваши собственные вебхуки — адреса, куда вы сами попросили отправлять посты.
Свой бот на своём сервере даёт полный контроль — но и вся ответственность за то, что сервер не взломают и ключ сессии не утечёт, тоже ваша.
Сколько это стоит #
| Свой бот | CopyPost | |
|---|---|---|
| Сервер | 4–6 $ в месяц, плюс выбор площадки | не нужен |
| Разработка | от вечера до недель — в зависимости от альбомов, правок, медиа | нет |
| Поддержка | перезапуски, обновления библиотек, слежение за памятью и диском | наша |
| Пропущенные посты | дозапрашивать самому | дозапрашиваются автоматически, плюс турбо-приём |
| Альбомы, правки, удаления | писать самому | работают из коробки |
| Ограничения Telegram | обрабатывать самому, часто молча | соблюдаются автоматически, ошибки видны в панели |
| Бан или выход из аккаунта | узнаете по пустому каналу | сообщение от сервисного бота |
| Цена | время разработчика | три аккаунта бесплатно, каждые следующие три — 231 звезда за 30 дней (от четырёх пакетов за одну покупку — со скидкой) |
Пайплайнов — сколько угодно на любом тарифе, включая бесплатный, и скорость везде одинаковая. Оплата — звёздами Telegram, вернуть их можно в течение 14 дней с оплаты, если услугой не пользовались или она не работала по нашей вине.
Когда свой бот всё-таки выгоднее #
Мы не будем делать вид, что сервис нужен всем:
- у вас уникальная логика, которой нет ни в одном сервисе, — например, пост должен пройти через вашу собственную нейросеть или базу данных. Хотя часть таких задач решают вебхуки: CopyPost отправляет каждый пост на ваш сервер, а что с ним делать — решаете вы;
- данные не должны покидать ваши собственные серверы по требованиям безопасности;
- у вас уже есть разработчик, который будет поддерживать бота годами, и сервер, за которым кто-то следит.
Во всех остальных случаях — особенно если вы админ канала, а не программист — самописный бот обходится дороже, чем кажется в первый вечер: не деньгами, а потерянными постами и временем.
Как попробовать #
Подключите аккаунт в панели CopyPost по QR-коду или коду из Telegram, выберите, откуда и куда пересылать, и включите нужные правила. Пошагово — в статье как настроить автопостинг за 5 минут. Три аккаунта — бесплатно, так что сравнить со своим ботом можно, ничего не платя.