Доставляемость · 21 сентября 2026 г.
Отказ или жалоба: что на самом деле вредит доставляемости
Отказы — это технические сбои, а жалобы убивают репутацию. Разбираемся, как обрабатывать и то и другое, чтобы сохранить репутацию отправителя и попадать во «Входящие».
Главное различие
Отказ (bounce) — это технический сбой, при котором принимающий сервер отклоняет письмо. Жалоба — это действие пользователя, когда получатель помечает ваше письмо как спам. Высокая доля отказов говорит о плохой гигиене списка, а жалобы — об отсутствии согласия или нерелевантности. Жалобы вредят репутации значительно сильнее, потому что это прямой сигнал для провайдеров (ISP), что ваш контент нежелателен. Это быстрее приводит к попаданию в чёрные списки и снижает доставку по всему вашему диапазону IP-адресов.
Что такое отказы
Отказ происходит, когда письмо невозможно доставить в почтовый ящик получателя. С инженерной точки зрения это неудачная попытка доставки. Отказы делятся на два типа: жёсткие и мягкие.
Жёсткие отказы
Жёсткий отказ — это постоянный сбой. Адрес не существует, домен недействителен или принимающий сервер навсегда заблокировал ваш IP-адрес. На такие адреса нужно немедленно прекратить отправку. Если продолжать писать на адреса с жёстким отказом, для провайдеров это главный сигнал, что вы используете старый или купленный список, — характерный признак нежелательных массовых рассылок.
Типичные коды ошибок SMTP при жёстких отказах:
- 550: пользователь неизвестен (User unknown)
- 554: транзакция не выполнена (Transaction failed)
- 550 5.1.1: неверный адрес почтового ящика назначения (Bad destination mailbox address)
Мягкие отказы
Мягкий отказ — это временный сбой. Почтовый ящик может быть переполнен, сервер может быть временно недоступен или размер письма превышает лимит. Это не повод сразу удалять контакт, но повторяющиеся мягкие отказы со временем следует считать жёсткими.
Типичные коды ошибок SMTP при мягких отказах:
- 421: сервис недоступен, канал передачи закрывается (Service not available, closing transmission channel)
- 450: запрошенное действие не выполнено: почтовый ящик недоступен (Requested mail action not taken: mailbox unavailable)
- 451: запрошенное действие прервано: локальная ошибка обработки (Requested action aborted: local error in processing)
Что такое жалобы
Жалоба возникает, когда пользователь нажимает «Сообщить о спаме» или «Пометить как нежелательное» в своём почтовом клиенте. В отличие от отказа, письмо было успешно доставлено в почтовый ящик. Сбой здесь не технический, а поведенческий.
Интернет-провайдеры и почтовые сервисы (ISP) вроде Gmail или Outlook отслеживают отношение жалоб к общему объёму. Если доля жалоб превышает очень низкий порог (нередко всего 0.1 процента), ваша репутация падает. Это затрагивает не только конкретную кампанию, а каждое письмо, отправленное с этого IP-адреса или домена.
Уровни доставляемости
Важно различать три отдельных понятия: приём провайдером, доставку и попадание во «Входящие».
- Приём провайдером: принимающий сервер принимает соединение и письмо. Если на этом этапе происходит сбой, это отказ.
- Доставка: письмо успешно помещено в почтовое хранилище получателя.
- Попадание во «Входящие»: письмо попадает во «Входящие», а не в «Спам». Жалобы напрямую влияют именно на этот этап.
При высокой доле жалоб ваши письма могут по-прежнему «доставляться» (приниматься сервером), но у всех пользователей они будут сразу уходить в «Спам» — независимо от того, жаловались ли именно эти пользователи.
Автоматизируем реакцию
Если вы инженер, отвечающий за очередь инцидентов, полагаться на ручную чистку нельзя. Нужен автоматизированный конвейер обработки событий доставки.
Стоп-лист
Любой профессиональной системе отправки нужен стоп-лист. Это база адресов, на которые больше никогда нельзя писать. Когда вы получаете событие bounce или complaint через вебхук, система должна немедленно добавить этот адрес в стоп-лист.
В SendHQ стоп-лист работает на уровне API: даже если логика приложения попытается отправить письмо на адрес из стоп-листа, система заблокирует его до того, как оно уйдёт в сеть.
Обработка вебхуков
Обработчик вебхуков может выглядеть примерно так (концептуальный пример на Node.js):
app.post('/webhooks/email', async (req, res) => {
const event = req.body;
switch (event.type) {
case 'bounce':
if (event.detail.category === 'permanent') {
await suppressionService.add(event.detail.email, 'hard_bounce');
}
break;
case 'complaint':
await suppressionService.add(event.detail.email, 'spam_complaint');
break;
case 'delivered':
await trackingService.markAsDelivered(event.detail.messageId);
break;
}
res.sendStatus(200);
});
Проблема ИИ-агентов: идемпотентность и подтверждение
Когда отправку писем поручают ИИ-агентам, риск катастрофы с доставляемостью растёт. Агент, застрявший в цикле, может случайно отправить одному пользователю 1 000 одинаковых писем и вызвать лавину жалоб.
Ключи идемпотентности
Чтобы избежать повторных отправок, всегда используйте ключ идемпотентности. Тогда, даже если агент повторит запрос из-за тайм-аута, письмо будет отправлено только один раз.
Участие человека (Human-in-the-Loop, HITL)
Для агентов, отправляющих важные сообщения, сделайте очередь подтверждения. Агент готовит черновик, но финальный вызов API запускает человек. Это предотвращает сценарий «галлюцинированного спама», когда агент рассылает нерелевантный контент по большому списку и доля жалоб резко растёт.
Инфраструктура и компромиссы по стоимости
Выбор провайдера часто означает компромисс между удобством и стоимостью. При масштабировании разница в цене на больших объёмах очень заметна.
Согласно странице цен Amazon SES, SES стоит 0.10 USD за 1 000 писем при оплате a la carte. Объём в 50 000 писем обойдётся примерно в 5 USD. Для сравнения, по ценам Postmark 50 000 писем будут стоить около 66 USD (15 USD базовой платы за 10 000 плюс превышение от 1.20 до 1.80 USD за 1 000).
Другие варианты:
- Resend: бесплатный тариф — 3 000 писем в месяц (не более 100 в день). Pro — 20 USD в месяц за 50 000 писем, превышение — 0.90 USD за 1 000 (цены Resend).
- SendGrid: бесплатный тариф теперь — 60-дневный пробный период; Essentials — от 19.95 USD в месяц (цены SendGrid).
- Mailgun: 15 USD в месяц за 10 000 писем, превышение — от 1.10 до 1.80 USD за 1 000 (цены Mailgun).
SES дешевле, но эксплуатационная нагрузка на ведение собственных стоп-листов и управление репутацией выше. SendHQ закрывает этот разрыв: транзакционная отправка с подтверждённых доменов и встроенное управление стоп-листом без сложностей ручной настройки AWS.
Чек-лист доставляемости для инженеров
Чтобы свести к минимуму и отказы, и жалобы, пройдите по этому техническому чек-листу:
- Проверка DNS: убедитесь, что ваши записи SPF, DKIM и DMARC корректны. Для проверки используйте SendHQ DNS Checker. Подробнее о настройке читайте в нашем руководстве по DKIM, SPF и DMARC.
- Двойное подтверждение подписки (double opt-in): никогда не добавляйте email-адреса в список без явного подтверждения. Только так можно удерживать долю жалоб близкой к нулю.
- Отписка в один клик: добавьте заголовок
List-Unsubscribe. Пользователю лучше отписаться, чем пометить вас как спам. - Добавление в стоп-лист в реальном времени: убедитесь, что обработчик вебхуков обновляет вашу базу данных менее чем за 5 минут.
- Мониторинг: настройте оповещения на случай, когда доля отказов превысит 2 процента или доля жалоб — 0,1 процента.
Сводная таблица: отказ или жалоба
Параметр | Отказ | Жалоба
Причина | Технический сбой (неверный адрес, переполненный ящик) | Действие пользователя (пометка как спам)
Сигнал | Плохая гигиена списка / устаревшие данные | Нерелевантный контент / нет согласия
Немедленное действие | Сразу удалять жёсткие отказы | Сразу удалять
Влияние на репутацию | Умеренное (если доля не очень высока) | Серьёзное
Основная метрика | Доля отказов | Доля жалоб
Цель | Поддерживать чистоту списка | Сохранять доверие пользователей
Выводы
Отказы — это неприятность, а жалобы — кризис. Высокая доля отказов говорит провайдеру, что вы небрежны; высокая доля жалоб — что вы недобросовестный отправитель. Автоматизировав логику стоп-листа и внедрив строгие процессы подписки по согласию, вы защитите репутацию отправителя.
Продуктовым командам, которым нужен надёжный способ работать с транзакционной почтой и коммуникациями через агентов, стоит посмотреть на SendHQ.