Письма с сайта уходят в «Спам» у получателей, хотя форма и SMTP работают. В 80% случаев причина не в плагине, а в DNS: нет SPF, нет DKIM, обратный адрес не совпадает с доменом. Решение занимает 30-60 минут: добавить три TXT-записи в DNS, настроить From-адрес на своём домене и проверить репутацию через mail-tester.com.
Почему письма WordPress попадают в спам
Почтовые провайдеры (Яндекс, Mail.ru, Gmail) проверяют каждое входящее письмо по десяткам правил. Если хотя бы несколько не сходятся -- письмо улетает в «Спам» или режется на подлёте. Самые частые причины:
1. Нет SPF-записи в DNS SPF (Sender Policy Framework) -- это TXT-запись, которая говорит получателю: «письма с этого домена отправляются с таких-то серверов». Без записи Яндекс и Mail.ru часто принимают такие письма, но со сниженным доверием. В результате -- спам.
2. Нет DKIM-подписи DKIM подписывает каждое письмо цифровой подписью. Получатель проверяет её публичным ключом в DNS. Без DKIM современные фильтры (особенно Gmail и Outlook) почти гарантированно кладут письмо в спам.
3. From-адрес на чужом домене WordPress по умолчанию шлёт от wordpress@ваш-сайт.ru, но если вы не настроили почту на своём домене -- реальный отправитель это сервер Beget или Timeweb, а заголовок From притворяется вашим доменом. Это спуфинг с точки зрения фильтра.
4. Плохая репутация IP-адреса сервера На shared-хостинге (Beget, Timeweb, REG.RU) один IP делят сотни сайтов. Если кто-то из соседей рассылал спам -- IP попал в чёрные списки (Spamhaus, DNSBL). Ваши письма автоматически уходят в спам, даже если сайт чистый.
5. Текст письма триггерит фильтры Спам-слова («бесплатно», «акция», «заработок»), ссылки через короткие редиректоры, base64-вложения с картинками, заголовок только заглавными буквами. Письмо-уведомление о заказе с темой «ЗАКАЗАН ТОВАР!!!» -- классический триггер.
6. Нет DMARC-политики DMARC сообщает получателю, что делать с письмами, которые не прошли SPF/DKIM. Без политики -- на усмотрение получателя, и часто выбирается «спам».
Как исправить: пошагово
Шаг 1. Проверить текущую репутацию через mail-tester.com
Прежде чем что-то менять -- узнайте, что не так. Сервис mail-tester.com даст оценку от 1 до 10 и список конкретных проблем.
Установите плагин WP Mail SMTP (или Post SMTP), укажите любой рабочий SMTP (Яндекс 360 или Mail.ru -- на время теста). Отправьте тестовое письмо на адрес, который выдаст mail-tester. Через минуту нажмите «Затем проверить спам» и посмотрите оценку.
Оценка 9-10 С вашей почтой всё хорошо, проблема в другом (например, получатель сам внёс вас в чёрный список).
Оценка 1-6 Есть технические проблемы. Смотрите красные строки -- это то, что нужно исправить в первую очередь.
Шаг 2. Добавить SPF-запись
SPF -- это TXT-запись в DNS вашего домена. Войдите в панель регистратора (REG.RU, Beget, Timeweb) → управление DNS → добавить запись:
Для Яндекс 360 значение v=spf1 include:_spf.yandex.net ~all -- официальная запись Яндекса. Для Mail.ru: v=spf1 include:_spf.mail.ru ~all. Если письма отправляются через сервер хостинга (без внешнего SMTP), замените на:
v=spf1 ip4:IP_ВАШЕГО_СЕРВЕРА ~all
Узнать IP сервера можно у хостера или командой ping ваш-сайт.ru.
Не делайте двух SPF-записей TXT-запись с v=spf1 должна быть ровно одна. Если уже есть -- отредактируйте её, добавив новые include: или ip4: через пробел.
Шаг 3. Настроить DKIM
DKIM настраивается в панели почтового сервиса, а не у регистратора домена. Порядок для Яндекс 360:
Зайдите в admin.yandex.ru → Домены → ваш домен → Подтверждение.
В разделе DKIM Яндекс покажет TXT-запись (длинную, вида v=DKIM1; k=rsa; p=MIGfMA0GCSq...). Скопируйте её.
Идите в панель регистратора → DNS → добавьте новую TXT-запись с именем mail._domainkey и значением из Яндекса.
Вернитесь в Яндекс, нажмите «Проверить DKIM». Запись подтвердится через 15-30 минут.
Для Mail.ru порядок такой же: postmaster.mail.ru → Настройки DKIM → копируете запись → добавляете в DNS → подтверждаете.
Для встроенной почты Beget: панель Beget → Почта → Домены → DKIM-подпись. Beget сам добавит нужную запись, вам останется только подождать 15 минут.
Шаг 4. Исправить From-адрес в WordPress
Откройте настройки плагина WP Mail SMTP → раздел «Отправитель»:
From Email: no-reply@ваш-домен.ru (или info@, support@)
Force From: Включено (галочка)
Return Path: Включено (галочка)
Критично: From Email должен быть на домене вашего сайта, а не на yandex.ru или gmail.com. Иначе фильтр видит подделку.
Нет почты на своём домене? Заведите. На Яндекс 360 -- бесплатно до 1000 ящиков. На Beget -- почта включена в тариф, нужно только создать ящик в панели. Создайте no-reply@ваш-домен.ru и используйте его как From.
p=none -- режим наблюдения (только собирать отчёты, ничего не блокировать). После того как убедитесь, что всё работает, можно ужесточить до p=quarantine или p=reject.
Шаг 6. Очистить шаблоны писем от спам-триггеров
Проверьте шаблоны уведомлений (WooCommerce → Настройки → Письма, Contact Form 7 → Шаблоны). Что убрать:
Темы с обилием заглавных букв и восклицательных знаков («ВНИМАНИЕ! ЗАКАЗ!!!»).
Спам-слова в тексте: «бесплатно», «акция», «только сегодня», «заработок», «гарантированный доход».
Ссылки через bit.ly, goo.gl, t.co и подобные короткие редиреректы.
Вложения с непонятными именами (invoice.exe, document.zip без пароля).
Только картинка без текста (большинство фильтров это режут).
HTML-письмо ≠ спам Сам формат HTML не триггерит фильтр, если есть нормальный текстовый вариант. Большинство плагинов автоматически генерируют text/plain fallback.
Проверка результата
mail-tester.com показывает 9-10 Повторите тест из шага 1 после всех настроек. Если оценка выросла до 9 или 10 -- технически вы сделали всё правильно. Спам-фильтры доверяют вашему домену.
SPF, DKIM, DMARC проходят проверку Откройте mxtoolbox.com/SuperTool.aspx, введите ваш домен. Поочерёдно выберите SPF Record Lookup, DKIM Lookup, DMARC Lookup. Все три должны показывать зелёный статус.
Письма приходят в «Входящие» у реальных получателей Попросите 2-3 знакомых проверить «Спам» в Яндекс.Почте, Mail.ru, Gmail. Идеально -- если у них письма сразу падают во «Входящие».
Нет жалоб на спам в Вебмастере Яндекс.Вебмастер → Качество сайта → Безопасность. Если есть предупреждения о «подозрительных письмах» или «спаме с вашего домена» -- значит, вы что-то сделали не так, и фильтр всё ещё не доверяет.
Когда способ не сработает
IP-адрес в чёрном списке Spamhaus / Spamcop Проверьте свой IP через spamhaus.org/lookup. Если в списке -- нужно либо писать в Spamhaus с просьбой исключить (долго), либо менять IP. На VPS меняется за 5 минут. На shared-хостинге -- только через поддержку хостинга, и не всегда успешно.
Домен в чёрном списке Редко, но бывает: домен попал в чёрный список, потому что раньше на нём был другой сайт, рассылавший спам. Проверка: surbl.org, uribl.com. Если в списке -- процедура удаления такая же, как для IP.
Получатель сам отправил письмо в спам Если один конкретный адресат не получает письма, а mail-tester показывает 10 -- скорее всего, он раньше пометил ваше письмо как спам. После этого почтовый провайдер будет фильтровать все ваши письма именно ему. Свяжитесь с ним лично, попросите нажать «Не спам» -- через 2-3 письма фильтр «отпустит».
Слишком много писем за короткий срок Если с сайта за час уходит 500+ уведомлений (например, бот начал оформлять заказы) -- любой фильтр срежет отправку как массовую рассылку. Решение: rate limiting, проверка на ботов (reCAPTCHA или SmartCaptcha), задержка между письмами.
Хостинг блокирует порт 25 или не поддерживает SSL Некоторые shared-хостинги блокируют 25-й порт или заворачивают исходящие на свой SMTP без шифрования. Gmail и Outlook такое не принимают. Выход -- использовать внешний SMTP (Яндекс 360, Mail.ru, Brevo, Amazon SES) и слать через 465/587 с TLS.
Что сделать заранее, чтобы письма не уходили в спам
Используйте SMTP на отдельном поддомене -- например, рассылайте с mail.ваш-сайт.ru. Если IP этого поддомена попадёт в чёрный список, основной домен не пострадает.
Подпишите обратный адрес (List-Unsubscribe) -- заголовок, который говорит получателю «вы можете отписаться». Без него Gmail и Outlook всё чаще кладут письмо в спам.
Не отправляйте вложения больше 10 МБ -- большинство SMTP-серверов режут или кладут в спам. Используйте ссылки на облако (Яндекс.Диск, Google Drive) вместо вложений.
Мониторьте репутацию раз в месяц -- заведите привычку раз в 30 дней проверять свой IP через mxtoolbox.com/blacklists.aspx и оценку через mail-tester. Это занимает 5 минут и заранее показывает проблему.
Частые вопросы
SPF и DKIM -- это одно и то же?
Нет. SPF -- список серверов, с которых можно отправлять от имени домена. DKIM -- цифровая подпись каждого письма. Они решают разные задачи и нужны оба. Без SPF -- письма часто режутся. Без DKIM -- почти гарантированно летят в спам у Gmail и Outlook.
Сколько ждать после добавления DNS-записей?
TTL записей обычно 5-15 минут, но у Яндекса и Mail.ru кэш обновляется до 1 часа. Полная проверка через mxtoolbox покажет актуальные данные через 15-30 минут. Если через сутки не подтвердилось -- скорее всего, опечатка в записи.
WP Mail SMTP обязателен, или хватит встроенной mail() в WordPress?
Встроенная mail() в PHP использует sendmail на сервере, отправляет с адреса www-data@имя-сервера, не умеет в SPF/DKIM и почти всегда улетает в спам. WP Mail SMTP или Post SMTP перенаправляют письма через внешний SMTP, что решает 90% проблем. Без плагина -- никак.
Можно ли слать письма со своего сервера без внешнего SMTP?
Можно, если настроить Postfix или Exim с DKIM-подписью и привязать домен. Но на shared-хостинге (Beget, Timeweb, REG.RU) у вас нет доступа к настройкам почтового сервера. На VPS -- да, Postfix + OpenDKIM за час настраивается. Проще подключить Яндекс 360 или Mail.ru бесплатно и не возиться.
SPF не проходит проверку, хотя запись добавлена
Частые причины: 1) две SPF-записи вместо одной (отредактируйте старую, не добавляйте вторую); 2) запись с пробелом в начале или в конце; 3) используется CNAME вместо TXT (нужен именно TXT); 4) не указан ~all или -all в конце. Проверьте через mxtoolbox.com/spf.aspx -- сервис покажет, что не так.
Письма с сайта летят в спам?
Настрою SPF, DKIM, DMARC и From-адрес за один день. После настройки mail-tester покажет 9-10, письма дойдут во «Входящие».
Денис Борисов
Веб-мастер, 16 лет практики. WordPress, сервер, оптимизация. Написать в Telegram
Разрабатываю WordPress-сайты
Лендинги, многостраничные сайты, интернет-магазины на WooCommerce — всё на WordPress с удобной панелью управления.
Сайт под ключ: регистрация домена и хостинга, установка WordPress, настройка шаблона и модулей.
Поддерживаю WordPress-сайты
Обновление плагинов и тем, резервное копирование, мониторинг работоспособности — сайт работает без сбоев.
Оперативное исправление ошибок, создание новых разделов, доработка функционала и наполнение контентом.
Продвигаю WordPress-сайты
SEO-оптимизация, настройка Яндекс Метрики и Вебмастера, подключение Google Search Console.
Оптимизация позволяет «поднять» сайт в поисковых выдачах, увеличить целевой трафик и привлечь новых клиентов.
Чистка от вирусов WordPress
Если сайт взломали, появился подозрительный код или спам-рассылка — найду и удалю вредоносный код, закрою уязвимости и настрою защиту от повторного заражения.
После чистки проверю все файлы и плагины, обновлю WordPress до актуальной версии и настрою автоматическое резервное копирование.
Диагностика сайта
Проверю ваш сайт по ключевым параметрам и подготовлю отчёт с рекомендациями:
Денис МАСТЕР своего дела. Вёл целый проект, работали с ним на протяжении 4х месяцев. Отзывчивый, понимающий с полуслова специалист. Стоимость услуг радует, а качество работы приводит в восторг.
Денис спасибо Вам от лица нашей строительной компании и от всего нашего персонала.
Михайлова Анастасия
Обратился к Денису для восстановления сайта на WordPress после сбоя. Сделал, как и обещал, за сутки — сайт снова работает без ошибок. Профессионал своего дела, доходчиво объясняет, вежлив и тактичен. Однозначно рекомендую!
Игорь Караваев
Денис, спасибо огромное за работу)) Очень тепло вспоминаю Вас и все что Вы сделали для моей работы и моего сайта.
Денис Профессионал с большой буквы, решает любые вопросы, отличный специалист))
Рекомендую к сотрудничеству, еще раз спасибо)
Яна Веркулич
Денис оперативно и грамотно справляется со всеми поставленными задачами. Внес правки на англоязычную и русскоязычную версии сайта, учел все пожелания. Будем обращаться еще!
Бюро Переводов
Денис мастер своего дела, рекомендую его как специалиста. Понимает, что нужно сделать и справляется с поставленной задачей в короткое время.
Делал сайт для салона красоты, просто и функционально.
Анастасия Виричева
Очень много времени мучались с сайтом на OpenCart. «Специалисты» не могли нормально разобраться в проблеме, возникавшей при выполнении элементарной задачи.
Денис сделал это в два счета, также расписал подробно, в чем была проблема и как она решена. На 200% доволен. Даже не хочется его рекомендовать, потому что будет постоянно занят))
Владимир
Денис оперативно ответил и помог решить проблему, которую я даже описать нормально не могла)) Мы сами что-то накрутили с корпоративной почтой — письма то уходили, то нет, в общем всё сломали.
Денис всё починил, теперь у нас нормальная почта, домен работает, письма приходят и уходят. Цена как заявлена — оплатили по факту проверки. Спасибо большое!
Ксения Петровская
Заказал у Дениса доработать сайт на WordPress. При этом трудно себе представлял, что сам хочу. Благодаря профессионализму Дениса и его умению всё грамотно и просто объяснять, предлагать разные варианты решений — цель была достигнута.
Умение общаться доходчиво и терпеливо с клиентами — огромный плюс. Я очень доволен. Однозначно рекомендую!
Александр Кривуля
Прекрасный специалист, ответил и устранил ошибку на сайте за пару часов, сохранила контакт, будем по необходимости обращаться. Рекомендую!
Кондитер мания
Бесплатная настройка хостинга и домена
Регистрация хостинга на 1 месяц и домена .ru/.рф на 1 год входит в стоимость разработки сайта.
Сайт de-bor.ru обрабатывает файлы cookies с целью персонализации сервисов и улучшения пользовательского опыта. Продолжая использование сайта, вы соглашаетесь с Политикой обработки файлов Cookie, а также обработкой персональных данных в соответствии с Политикой конфиденциальности.