·Евгений Крук·9 мин чтения

Ошибки Telegram Ads: что значат сообщения кабинета и API

Линза железнодорожного семафора крупным планом

Почти все отказы Telegram Ads при создании объявления укладываются в шесть групп: деньги, цель, текст со ссылкой и медиа, настройки показа, частота запросов и сбои, доступ. Кабинет сообщает о них английской фразой под полем, официальный API отдаёт код заглавными буквами, и за разными словами обычно стоят одни и те же отказы.

В кабинетах наших клиентов с конца апреля по сентябрь 2026 года Telegram Ads отказал 1077 объявлениям из 7245, которые создавались пачками. 57% отказов дали две причины: на балансе кабинета не хватило денег или кабинет не принял цель. Отклонения модерации сюда не входят, они разобраны в статье о том, почему Telegram Ads отклонил объявление.

Какие ошибки встречаются чаще всего

Мы взяли объявления, которые создавались массовой заливкой с 24 апреля по 30 сентября 2026 года: 7245 штук в 39 кабинетах. У каждого сохранён последний ответ Telegram Ads на попытку создания. Отказом закончились 1077 попыток, это 14,9%. Почти треть отказов пришлась на баланс кабинета, ещё четверть на цель.

ОТКАЗЫ ПРИ СОЗДАНИИ: 1077 ИЗ 7245баланс кабинета333 · 30,9%цель не подошла283 · 26,3%частота запросов168 · 15,6%текст объявления90 · 8,4%минимальная ставка51 · 4,7%медиа не 16:950 · 4,6%расписание40 · 3,7%бюджет меньше 1 TON31 · 2,9%остальное31 · 2,9%массовая заливка, 39 кабинетов, 24.04-30.09.2026
Доли считаны от 1077 отказов. В «остальное» вошли неверная ссылка, язык при выбранных каналах, внутренняя ошибка, правила рекламы, отказ в пополнении и лимит стран.

У этих долей три поправки. Счёт идёт в объявлениях, и одна неудачная пачка даёт десятки одинаковых строк: все 168 отказов по частоте запросов достались одному кабинету за 14 минут. Если повторная попытка удалась, отказ из счёта выпал, так что здесь только то, что осталось несозданным. И это массовая заливка, у того, кто заводит объявления руками по одному, пропорции будут другими.

Две верхние строки схемы дают 616 отказов из 1077, и большинство из них можно снять до запуска. Для этого сверьте баланс кабинета с суммой бюджетов всей пачки и пройдите список целей глазами: опечатки, боты в поле каналов, каналы меньше тысячи подписчиков.

Баланс, ставка и бюджет

Денежных отказов четыре. Один лечится пополнением кабинета, остальные правкой самого объявления.

Your balance is too low. Add funds, в API ACCOUNT_BUDGET_NOT_ENOUGH. На балансе кабинета меньше денег, чем вы кладёте на объявление. Справка Telegram Ads обещает, что в форме кабинета такое объявление сохранится черновиком и его можно будет опубликовать после пополнения. В пачке ошибка идёт сплошной полосой, потому что причина в кабинете: если не хватило одному объявлению, обычно не хватит и следующему. Тот же код приходит и при пополнении готовых объявлений: 22 сентября наше автоматическое пополнение в кабинете с остатком 0,94 TON получило его на 13 объявлениях подряд. Лечится пополнением, способы собраны в статье о том, как пополнить Telegram Ads. Второй путь описан в той же справке: создать объявления без бюджета, они получат статус Stopped и дождутся денег.

CPM can't be less than €1.80. Ставка ниже минимума, у нас так упало 51 объявление в евро-кабинетах. Число в сообщении бывает разным, нам приходили €1.80, €1.35 и €1.30, потому что минимум зависит от валюты кабинета и настроек объявления. С медиа порог выше. Форма кабинета показывает у поля ставки пометку «+80%», а документация API пишет, что объявлению с фото в среднем нужна ставка на 50-80% больше, с видео на 70-100%. Поднимите CPM до числа из сообщения. Откуда берутся минимумы, разобрано в статье про минимальный бюджет и CPM. Ставка на самом минимуме форму пройдёт, а показов может и не дать. На этот случай есть чек-лист объявление активно, а показов нет.

The ad budget after replenishment must be at least 💎1.00., в API AD_RESULT_BUDGET_TOO_SMALL. Денег на балансе кабинета может хватать с запасом: мала сама сумма, которую вы кладёте на объявление, а после пополнения на нём должно лежать не меньше 1 TON. Одна наша майская пачка потеряла на этом 31 объявление.

Budget replenishment is currently unavailable for these targeting parameters on your account. Кабинет принял настройки, но положить бюджет на объявление с таким таргетингом не даёт. Мы упёрлись в это в TON-кабинете на вкладке «Пользователи»: пробовали три набора стран, ответ был один, а на вкладке с каналами объявления пополнялись. В сентябре так же отказал евро-кабинет на трёх объявлениях. Сообщение само предлагает два выхода: сменить таргетинг или создать объявление с пустым бюджетом на потом. Причину Telegram не называет, и мы её не знаем.

Канал или бот не приняты

Во второй по частоте группе кабинет либо не нашёл цель, либо нашёл и отказался показывать в ней рекламу. Ненайденная цель встречается намного чаще.

Цель не найдена у 232 объявлений в 18 кабинетах. На поиске канала кабинет отвечает Username not found, API отдаёт USERNAME_NOT_OCCUPIED, если такого имени нет, и USERNAME_INVALID, если само имя кабинет не принимает. Причины будничные: опечатка, канал переименовали или удалили. Бывает и так, что бота вставили в поле каналов: кабинет тогда либо не находит канал с таким именем, либо отвечает Only public channels allowed, об этой фразе ниже. Каналы и боты ищутся на разных вкладках.

Target channel must have 1000+ subscribers., в API CHANNEL_TOO_SMALL. Канал найден, но подписчиков в нём меньше тысячи. Порог записан и в справке: объявления показываются в публичных каналах от 1000 подписчиков, так что такой канал остаётся только убрать из списка. Как собирать площадки без мелочи, рассказано в статье о том, где брать каналы для рекламы.

Target bot must have 1000+ daily users., в API BOT_TOO_SMALL. У бота меньше тысячи активных пользователей в сутки. Такой ответ значит, что кабинет бота опознал и отказал только по размеру аудитории. Мы сами в августе приняли его за «это не бот»: наша форма не добавила метку в ссылку, и 97 объявлений ушли без трекинга. Про ботов как площадку есть отдельная статья, реклама в ботах Telegram.

Only public channels allowed., в API USERNAME_CHANNELS_ALLOWED. Имя существует, но за ним не публичный канал, например бот: боту место на вкладке «Боты», а всё прочее из целей придётся убрать.

В API есть ещё пара CHANNEL_ID_UNKNOWN и BOT_ID_UNKNOWN. По документации числовой идентификатор канала или бота принимается, только если этот же кабинет раньше нашёл цель по имени. Найдите цель заново по актуальному имени и повторите.

В Zaliv ответы кабинета переведены: рядом с несозданным объявлением стоит причина по-русски, а после правки упавшие объявления перезапускаются отдельно от остальной пачки.

Текст, ссылка и медиа

Здесь чаще всего подводит длина текста. Все отказы этой группы чинятся в самом объявлении, кабинет и цели трогать не нужно.

An ad should not contain more than 160 symbols. Текст длиннее 160 знаков, пробелы считаются. У нас это 74 объявления, и ещё два получили от API код POST_MESSAGE_TOO_LONG, по смыслу тот же отказ. В пачке длину стоит мерить на самом длинном варианте текста.

Ads can't contain new lines. В тексте есть перенос строки, у нас таких отказов 14. Правила рекламы запрещают переносы, маркированные и нумерованные списки. Если переноса не видно, проверьте самый конец текста: он мог приехать вместе с копированием из таблицы или заметок. Приёмы, как уложить мысль в одну строку, лежат в статье про текст объявления.

Use mentions of the promoted channel or bot only. Эту строку мы сами не ловили, её приводит Анастасия Абрамова в разборе на vc.ru. По её описанию, упоминание через @ в тексте должно совпадать со ссылкой в поле URL. В правилах рекламы это требование записано так: ссылка объявления и ссылка в тексте ведут в одно место.

URL invalid. Кабинет не распознал ссылку перехода. Проверьте, что она ведёт на канал, бота или пост и открывается в браузере. В TON-кабинете внешний сайт отбивается другой фразой, You can't promote external links: из такого кабинета ссылка ведёт только внутрь Telegram.

The aspect ratio must be 16:9. Картинка или видео не в пропорции 16:9. Таких отказов 50, и все пришлись на первую неделю сентября в двух кабинетах. Размеры и форматы перечислены в статье про баннер в Telegram Ads.

На слово «Получи» форма четыре раза ответила нам It appears that this ad does not follow our Ad Policies and Guidelines ещё при создании, до живой модерации. В скобках она сама называет слово, которое ей не понравилось, так что остаётся заменить его и создать объявление заново.

Языки, страны и расписание

Три редких отказа про настройки показа, вместе 49 объявлений из 1077.

If specific channels are targeted, the language field must be empty. Вы выбрали конкретные каналы и одновременно указали язык. Кабинет такое сочетание не принимает, языки и темы работают только без списка каналов. Очистите поле языка. Восемь наших объявлений упали так в первые дни сентября, пока наша форма отправляла язык вместе со списком каналов. Какие настройки сочетаются, смотрите в статье про таргетинг в Telegram Ads.

Стран в одном объявлении не больше восьми, дальше кабинет отвечает You can only select up to 8 countries., и список приходится делить на несколько объявлений.

Расписание показов кабинет иногда не разбирает и отвечает Ad schedule invalid, в мае так упали 40 наших объявлений из одной пачки. Проверьте сетку часов, а если не находите ошибку, создайте объявление без расписания.

Что делать с FLOOD_WAIT и Internal error

Оба ответа лечатся паузой, и у FLOOD_WAIT её длина записана прямо в коде.

FLOOD_WAIT_ с числом на конце означает, что запросов слишком много, а число это секунды ожидания. В документации рекламного API нет ни этого кода, ни самих лимитов. По нашему замеру 20 сентября 2026 года залпом прошло 18 запросов, а ровный темп в 10 запросов в секунду держался без отказов. Ожидание в несколько секунд можно переждать и повторить запрос. Чтобы повтор не создал объявление дважды, шлите его с тем же ключом идемпотентности.

Длинное ожидание выглядит иначе. 24 сентября один кабинет запустил пачку из 280 объявлений. Сто создались, на двенадцати не подошла цель, а 168 получили FLOOD_WAIT с числами от 3524 и ниже. 3524 секунды это 59 минут. Попытки шли 14 минут, и каждая возвращала остаток того же таймера, пока он не дошёл до 2751 секунды. Таймер всё это время только убывал.

Создалось ровно сто, после чего API закрыл кабинету создание почти на час. Порог из одного случая мы не выводим, а в документации лимитов нет вовсе. Если в коде стоят тысячи секунд, остановите пачку и вернитесь после паузы: созданные объявления останутся на месте, а несозданные можно будет отправить повторно.

У поиска целей свой счётчик. Когда мы сверяли поиск каналов и ботов через API, FLOOD_WAIT_40 пришёл примерно после трёхсот запросов подряд.

Internal error. Please try again later приходит при сбое на стороне Telegram Ads и лечится повтором через несколько минут. У нас таких шесть объявлений в четырёх кабинетах за конец апреля и май.

You cannot send the ad destination for review too frequently. Please try again later. Эту фразу люди ищут в поисковике и так попадают к нам, в наших кабинетах она не встречалась. По тексту это ограничение на повторную отправку на проверку: кнопку нажали слишком скоро после прошлого раза. Сколько ждать, сообщение не говорит. По нашим наблюдениям, кнопка появляется, когда претензия была к каналу или боту, куда ведёт объявление, поэтому паузу стоит потратить на правку этого канала или бота.

Что значат Access denied и ошибки ключа

Эти ответы говорят о доступе к кабинету, объявление тут ни при чём.

Access denied при открытом кабинете, судя по нашим случаям, значит, что аккаунт Telegram, под которым вы вошли, потерял права на этот рекламный кабинет. Меню на месте, а список объявлений не грузится. У нас тот же ответ пять раз пришёл на поиске цели во время создания. Помогает вход под аккаунтом, у которого доступ есть. Если вместо кабинета открылась страница входа, закончилась сессия, и нужен новый вход. Подробнее об обоих сбоях в статье про личный кабинет Telegram Ads.

У API на это два кода. ACCESS_TOKEN_REQUIRED приходит, когда ключ не передан, ACCESS_TOKEN_INVALID, когда ключ не подходит, и тогда его перевыпускают в кабинете, в разделе API. Оба кода мы получили живыми запросами 1 октября 2026 года.

Чем ответы API отличаются от сообщений кабинета

Форма кабинета показывает фразу под полем. API отвечает объектом, где ok равно false, а код лежит в поле error, и приходит этот ответ с HTTP-статусом 200. Программа, которая судит об успехе по статусу, примет отказ за удачу. Ловушка подробно разобрана в статье про официальный API Telegram Ads.

Полного списка кодов в документации нет. В её тексте встречаются шесть, первый и последний только как примеры: AD_TITLE_REQUIRED, CHANNEL_ID_UNKNOWN, BOT_ID_UNKNOWN, IDEMPOTENT_PARAM_MISMATCH, IDEMPOTENT_REQUEST_IN_PROGRESS и NOT_ENOUGH_BUDGET. Последний стоит в описании неудачной транзакции, а при создании и пополнении о нехватке денег нам приходил ACCOUNT_BUDGET_NOT_ENOUGH. Остальные коды из таблицы мы собрали по ответам на живые запросы, так что список неполный. Соответствие фраз кабинета и кодов тоже наше: мы сверяли ответы формы и API в одних и тех же ситуациях.

Код APIЧто значит
ACCOUNT_BUDGET_NOT_ENOUGHна балансе кабинета не хватает денег
AD_RESULT_BUDGET_TOO_SMALLпосле пополнения на объявлении меньше минимума
USERNAME_NOT_OCCUPIEDцели с таким именем нет
USERNAME_INVALIDимя не принимается, проверьте написание
USERNAME_CHANNELS_ALLOWEDимя принадлежит не публичному каналу
CHANNEL_TOO_SMALLв канале меньше 1000 подписчиков
BOT_TOO_SMALLу бота меньше 1000 пользователей в сутки
POST_MESSAGE_TOO_LONGтекст объявления слишком длинный
PROMOTE_URL_MODIFY_NOT_ALLOWEDссылку у созданного объявления менять нельзя
FLOOD_WAIT_40слишком часто, ждать 40 секунд
ACCESS_TOKEN_INVALIDключ не подходит
IDEMPOTENT_PARAM_MISMATCHповтор с тем же ключом идемпотентности, но с другими параметрами

При правке готового объявления ответы тоже расходятся. Кабинет на смену ссылки пишет you can only change the deep link of the promoted bot и разрешает менять только хвост после знака вопроса. API строже и на любую смену ссылки отдаёт PROMOTE_URL_MODIFY_NOT_ALLOWED. Обходной путь описан в статье о том, как сменить бота в объявлении. А удалить объявление или снять с него бюджет API даёт, только если оно неактивно не меньше 10 минут.

Выжимка

  • Фраза кабинета и код API обычно означают один и тот же отказ: Your balance is too low это ACCOUNT_BUDGET_NOT_ENOUGH.
  • У нас 57% отказов дали баланс кабинета и цель. Баланс проверяется до запуска пачки, список целей стоит перечитать заранее.
  • Сообщения с 1000+ значат, что цель найдена, но мала: канал до тысячи подписчиков или бот до тысячи пользователей в сутки.
  • Число в FLOOD_WAIT это секунды. Несколько секунд можно переждать, при тысячах секунд пачку лучше остановить.
  • API отдаёт отказ с HTTP-статусом 200, поэтому смотреть надо на поле ok в ответе.
  • Access denied при открытом кабинете, по нашим случаям, говорит о правах аккаунта Telegram на этот кабинет: помогает вход под аккаунтом, у которого доступ есть.

Источники

  • Telegram Ads, Ad Policies and Guidelines - 160 знаков с пробелами, запрет переносов строк и списков, ссылка в тексте и в поле URL ведут в одно место. Проверяли 1 октября 2026.
  • Telegram Ad Platform Explained - сообщение Your balance is too low и черновик, каналы от 1000 подписчиков, статус Stopped у объявления без бюджета. Проверяли 1 октября 2026.
  • Документация API Telegram Ads (открывается после входа в кабинет, редакция от 18 сентября 2026) - формат ответа с полем ok, шесть названных кодов, ключ идемпотентности, надбавка к ставке за фото и видео, правило 10 минут.
  • Telegram API, Error handling - FLOOD_WAIT_X как ожидание в X секунд. Это документация основного API Telegram, в рекламном код не описан. Проверяли 1 октября 2026.
  • Анастасия Абрамова, «5 проблем с запуском в Telegram Ads и как их решать», vc.ru (8 июня 2025) - строка Use mentions of the promoted channel or bot only и её причина. Проверяли 1 октября 2026.
  • Собственные данные: 7245 объявлений массовой заливки в 39 кабинетах с 24 апреля по 30 сентября 2026 года, последний ответ Telegram Ads на создание каждого; словарь перевода ошибок в нашем сервисе; замеры частоты запросов 20 и 22 сентября 2026 года.
Zaliv - массовое создание объявлений в Telegram Ads
50 объявлений за пару минут, аналитика и автоматизация. 15 дней бесплатно. Тарифы