Почему письма уходят в спам: SPF, DKIM и DMARC простыми словами

У моего домена почта работала, письма отправлялись, всё выглядело нормально - а двух из трёх записей, отвечающих за доверие к отправителю, не было вовсе. Объясняю SPF, DKIM и DMARC человеческим языком: что каждая делает, в каком порядке ставить и как проверить результат за две минуты.

Александр МазинАлександр Мазин AI-инженер · автоматизация бизнеса Опубликовано
Три конверта проходят через арки-штампы, четвёртый отложен в тень

Я собирался включить на сайте почтовую рассылку и по привычке начал с проверки домена. SPF на месте - его поставил хостинг сам, когда подключал почту. DKIM нет. DMARC нет.

Почта "просто работает" ровно до того момента, когда вы начинаете отправлять что-то массовое или важное. Тогда и выясняется, что часть писем не доходит, а вы об этом не знаете: уведомлений о попадании в спам не бывает. Со стороны это выглядит как молчание клиента: вы думаете, что человек не ответил, а он просто не увидел ваше письмо. И это заявки, за которые вы уже заплатили.

SPF: кому разрешено писать от вашего имени

Представьте, что кто угодно может отправить бумажное письмо на бланке вашей компании. Примерно так устроена почта по умолчанию: адрес отправителя в письме - это просто текст, его можно написать любой.

SPF - это список: с каких серверов разрешено отправлять письма от вашего домена. Он лежит в настройках домена, и почтовые системы его проверяют. Пришло письмо от вас с сервера, которого нет в списке, - повод для подозрений.

Эта запись есть почти у всех, потому что хостинг обычно ставит её сам при подключении почты. Остальные две он за вас не поставит.

DKIM: подпись, которую нельзя подделать

SPF отвечает только за то, что письмо пришло с разрешённого сервера. DKIM - про само письмо: ваш сервер подписывает каждое исходящее письмо, а получатель сверяет подпись с образцом, который лежит в настройках домена. Сходится - письмо ваше, и по дороге его не правили.

Разница практическая. SPF ломается при пересылке письма: адрес отправителя остался ваш, а сервер уже чужой. DKIM пересылку переживает, потому что подпись живёт в самом письме.

Именно этой записи у меня не было. И тут выяснилась деталь, из-за которой её и не бывает у многих: на Beget DKIM не включается кнопкой в панели - его включает поддержка по обращению. Пишете тикет, просите подписывать исходящую почту, и запись появляется в настройках домена сама. Работы на несколько минут и ноль рублей, но об этом надо знать.

DMARC: что делать с письмами, которые не прошли проверку

Первые две записи описывают, как проверить письмо. DMARC отвечает на следующий вопрос: а что делать, если проверка не прошла?

Вариантов три: ничего не делать и просто наблюдать, отправить в спам или отклонить совсем. Плюс адрес, на который почтовые системы будут присылать отчёты - кто и откуда шлёт письма от вашего имени.

Порядок здесь важен, и его нарушение - главная ошибка самостоятельной настройки. Нельзя начинать со строгого режима: если DKIM не настроен или какой-то ваш сервис шлёт письма мимо списка, вы своими руками отправите в спам собственную почту.

Правильная последовательность: сначала мягкий режим наблюдения с отчётами, потом настройка DKIM, потом проверка боем, и только потом ужесточение. Я именно так и делал: поставил DMARC, добился DKIM, убедился, что обе проверки проходят, и после этого поднял режим до отправки подозрительного в спам.

Как проверить за две минуты

Не надо ставить инструменты и разбираться в заголовках. Есть бесплатные сервисы-автоответчики: вы отправляете письмо со своего рабочего адреса на специальный адрес и получаете в ответ полный разбор - прошёл ли SPF, прошёл ли DKIM, что видит принимающая сторона.

Я пользуюсь таким после каждого изменения. Ответ приходит за минуту, и в нём прямым текстом написано pass или fail по каждому пункту. Это единственный способ убедиться, что вы настроили не то, что хотели, а то, что получилось.

Отдельная грабля для тех, кто правит настройки домена через программный интерфейс хостинга: у Beget операция изменения записей перезаписывает всю группу целиком и молча удаляет то, что вы не передали. После любой такой правки проверяйте, на месте ли записи почты и адреса сайта.

Бонус: аватар отправителя

Раз уж речь о доверии к письму - вопрос, который мне задают чаще, чем про DKIM: как сделать, чтобы рядом с письмом показывалась картинка компании, а не серый кружок с буквой.

Ответ неприятный и разный для разных почт:

  • В Gmail единственный официальный путь - технология BIMI, а она требует сертификата, подтверждающего права на товарный знак. Это от 1000 долларов в год и обязательный зарегистрированный знак. Для индивидуального предпринимателя без товарного знака - недоступно в принципе.
  • В Mail.ru делается бесплатно через кабинет почтмейстера: подтверждаете домен записью в его настройках и загружаете картинку. Требования простые - квадрат, непрозрачный фон, читаемость в мелком размере.
  • В Яндексе встроенного способа нет, работает сервис глобальных аватаров, привязанный к адресу отправителя.

Но заниматься этим стоит только после того, как настроены DKIM и DMARC. Без них красивое письмо просто не увидят.

Что это даёт вам в деньгах

0 рублейСтолько стоит DKIM: у Beget его включает поддержка по вашему тикету
15 000 рублейСтолько в среднем приносит одна заявка при чеке 50 000 рублей и конверсии 30 процентов
2 минутыПроверка после каждой правки: письмо автоответчику и разбор pass или fail

Считайте на своих числах. Заявка в B2B стоит от 3 000 до 15 000 рублей, и при среднем чеке 50 000 рублей и конверсии 30 процентов она возвращает около 15 000 рублей. Каждое письмо, ушедшее в спам, - это заявка, за которую вы уже заплатили, и она не сработала. С другой стороны весов - тикет в поддержку хостинга на несколько минут, ноль рублей и две минуты на проверку.

Письмо в спаме никто не отбивает уведомлением - вы просто не знаете, что клиент его не увидел. Так же тихо ломаются интеграции и выгрузки: разбираю, какие уведомления ставить, чтобы не отключить их на второй день.

Новые разборы - на почту

Разборы задач автоматизации: что автоматизировать, сколько это стоит и что даёт в цифрах. Одно письмо на статью, без рекламы чужих продуктов.

Александр Мазин

Александр Мазин

AI-инженер. Автоматизирую бизнес под ключ: CRM, интеграции, AI-ассистенты, платформы. Пишу о системах, которые заменяют отдел.