SMTP Gmail не работает: почему письма с сайта не уходят
Если сайт перестал отправлять письма через smtp.gmail.com, чаще всего дело в пароле: Google давно не пускает по SMTP с обычным паролем от аккаунта, нужен пароль приложения, а для него — включённая двухэтапная аутентификация. Другие частые причины — перепутанные порт и шифрование, закрытые исходящие порты на хостинге и дневной лимит отправки. Ниже — таблица ошибок, проверка по шагам и важная оговорка про персональные данные.
Сначала найдите текст ошибки
Смотрите не на форму, а в журнал: лог почтового плагина, журнал ошибок PHP или вывод PHPMailer, Nodemailer, Symfony Mailer в режиме отладки. Ответы Gmail обычно подробные — по коду и тексту сразу видно причину.
| Что в журнале | Где проблема | Что делать |
|---|---|---|
| 534-5.7.9 Application-specific password required | Нужен пароль приложения | Включить двухэтапную аутентификацию и создать пароль приложения |
| 535-5.7.8 Username and Password not accepted | Логин или пароль | Логин — полный адрес; пароль приложения из 16 символов, без пробелов, не отозван |
| 530-5.7.0 Must issue a STARTTLS command first | Не включено шифрование | Для порта 587 включить STARTTLS |
| SSL routines ... wrong version number | Перепутано шифрование | 465 — SSL/TLS сразу, 587 — STARTTLS |
| 550 5.4.5 Daily user sending quota exceeded | Исчерпан дневной лимит | Подождать сутки и перенести поток писем на транзакционный сервис |
| Connection timed out | Сеть до сервера | Хостинг закрыл исходящие порты 465/587 |
Правильные настройки SMTP Gmail
- сервер: smtp.gmail.com;
- порт 465 с шифрованием SSL/TLS или порт 587 с STARTTLS;
- логин — полный адрес, например zayavki@gmail.com или адрес в Google Workspace;
- пароль — пароль приложения из 16 символов, а не пароль от аккаунта;
- адрес отправителя — тот же ящик или адрес, добавленный в Gmail как дополнительный в разделе «Отправлять письма как».
Пароль приложения создаётся в настройках аккаунта Google, в разделе безопасности, и доступен только при включённой двухэтапной аутентификации. Порядок описан в справке Google о паролях приложений, параметры серверов — в справке Gmail. Режима «ненадёжные приложения», который советуют старые инструкции, в обычных аккаунтах больше нет — искать его бесполезно.
В Google Workspace администратор может запретить пароли приложений для всей организации. Тогда для отправки с сайта используют вход по OAuth 2.0 — его поддерживают популярные почтовые плагины WordPress и библиотеки вроде Nodemailer — либо SMTP-ретранслятор Workspace.
Проверка по шагам
- Отправьте тестовую заявку и запишите точный ответ сервера из журнала.
- Если 534 или 535 — проверьте, что в аккаунте включена двухэтапная аутентификация, создайте новый пароль приложения и вставьте его без пробелов.
- Если 530 или «wrong version number» — приведите в соответствие порт и шифрование.
- Если таймаут — проверьте с сервера сайта команду openssl s_client -connect smtp.gmail.com:465. Если соединение висит, исходящий порт закрыт хостингом — спросите у поддержки, как открыть его или через какой шлюз разрешена отправка.
- Отправьте несколько тестовых писем на Gmail, Яндекс и Mail.ru и проверьте папку «Спам».
Лимиты отправки Gmail
У Gmail есть суточные лимиты на число получателей: у бесплатного аккаунта — около 500 в сутки, в Google Workspace — около 2 000. При превышении Google временно блокирует отправку, и все формы сайта перестают слать письма до конца блокировки. Для уведомлений о заявках лимита обычно хватает с большим запасом, а письма регистрации, заказы и рассылки лучше сразу отправлять через транзакционный почтовый сервис.
Gmail и персональные данные: что важно для сайта в России
Заявка с сайта — это обычно имя, телефон и почта клиента, то есть персональные данные. Если письма с заявками уходят через Gmail, данные российских клиентов передаются на серверы за рубежом. Это трансграничная передача: по 152-ФЗ о ней нужно заранее уведомить Роскомнадзор, а первичный сбор и хранение данных граждан РФ должны быть в России. Для сайтов, которые работают с клиентами в России, проще отправлять заявки через Яндекс, Mail.ru или собственный почтовый сервер в РФ. Как устроены требования, разобрано в нашем чек-листе по 152-ФЗ.
Как не терять заявки, пока почта не работает
Многие плагины форм сохраняют заявки в базе сайта. Выгрузите их за весь период поломки и свяжитесь с клиентами в тот же день. Чтобы следующий сбой почты не прошёл незамеченным, дублируйте заявки в Telegram или сразу в CRM.
Похожие разборы — для SMTP Яндекса и SMTP Mail.ru. Если разбираться некогда, поможем срочно: диагностика за 1–2 часа от 4 900 ₽, перенастройка отправки — 4 900 ₽, выгрузка потерянных заявок — 3 900 ₽. Подробнее на странице «Не приходят заявки с сайта».
Материалы для проверки
Если нужна реализация
Состав работ зависит от текущего проекта и подтверждённой причины. Можно обсудить диагностику или разработку подходящего решения.
Вопросы и ответы
Как включить SMTP в Gmail для сайта?
Включите двухэтапную аутентификацию в аккаунте Google, создайте пароль приложения и укажите в настройках сайта: сервер smtp.gmail.com, порт 465 с SSL/TLS или 587 со STARTTLS, логин — полный адрес, пароль — пароль приложения.
Почему Gmail пишет «Application-specific password required»?
Google не принимает обычный пароль от аккаунта для отправки через SMTP. Нужен пароль приложения, а он доступен только при включённой двухэтапной аутентификации.
Где включить «ненадёжные приложения» в Gmail?
Нигде: для обычных аккаунтов этот режим отключён. Вместо него используется пароль приложения или вход по OAuth 2.0.
Сколько писем в сутки можно отправить через Gmail?
У бесплатного аккаунта — около 500 получателей в сутки, в Google Workspace — около 2 000. Для массовых писем сайта нужен транзакционный почтовый сервис.
Можно ли отправлять заявки российских клиентов через Gmail?
Технически да, но это трансграничная передача персональных данных: о ней нужно заранее уведомить Роскомнадзор. Проще использовать почтовый сервис или сервер в России.