Почему reCAPTCHA показывает 454 запроса, а на почту пришло 10 писем
Многие владельцы сайтов сталкиваются с непониманием статистики Google reCAPTCHA. Вы видите цифру 454 запроса с формы, 14% подозрительных, но на email приходит лишь 10 писем. Куда делись остальные заявки? Разберёмся в механике работы каптчи и обработки форм.
Что означает число «454 запроса» в панели reCAPTCHA?
Это количество попыток отправки формы, которые прошли через проверку каптчи на вашем сайте. Сюда входят как успешные отправки, так и отклонённые. reCAPTCHA считает каждый клик по кнопке «Отправить» или каждый POST-запрос, который был обработан её скриптом.
Разница между «запросами» и «письмами»
Запрос - это событие на сервере, а не готовое письмо. После того как каптча одобрила запрос, данные формы передаются вашему PHP-скрипту (или другому обработчику). Только если скрипт успешно отработал и отправил email, вы получаете письмо. Сбои могут быть на любом этапе: ошибка в коде, блокировка SMTP-сервера, фильтры спама на почтовом ящике.
Почему 14% подозрительных - это не все потерянные письма?
reCAPTCHA помечает 14% как подозрительные - это трафик, который она отфильтровала (боты или автоматические скрипты). Остальные 86% (примерно 390 запросов) каптча пропустила. Значит, проблема не в каптче, а в обработке этих 390 легитимных запросов. Они могли быть отправлены, но не дошли до вашего почтового ящика.
Куда делись остальные 380 запросов: основные причины
- Ошибки в PHP-обработчике формы. Если скрипт не отправляет письмо при определённых условиях (пустые поля, некорректный email), запрос считается успешным для reCAPTCHA, но письмо не уходит.
- Проблемы с SMTP-сервером. Хостинг может блокировать массовые отправки. Если за короткое время пришло 50+ заявок, почтовый сервер может отклонить часть писем.
- Спам-фильтры вашего почтового ящика. Письма могли попасть в папку «Спам» или быть удалёнными автоматически. Проверьте все папки, включая «Нежелательные».
- Настройки reCAPTCHA. Вы могли включить режим «Только для самых подозрительных» или «v3» с порогом чувствительности. В таком случае часть трафика может быть заблокирована без отображения виджета.
Как проверить, где теряются заявки?
Включите логирование всех запросов в обработчике формы. Записывайте в файл или базу данных: время запроса, IP, данные полей и результат отправки письма. Сравните количество записей в логах с числом полученных писем. Если в логах много записей, а писем нет - проблема в почтовой функции (mail() или SMTP). Если записей мало - значит, reCAPTCHA или JS-валидация блокирует отправку до обработчика.
Пошаговая инструкция для диагностики
- Временно отключите reCAPTCHA и протестируйте форму - убедитесь, что письма приходят.
- Включите режим отладки в PHP:
error_reporting(E_ALL);и проверьте логи ошибок сервера. - Установите SMTP-отправку через надёжного провайдера (SendGrid, Mailgun, Яндекс.Почта для домена).
- Проверьте папку «Спам» в почтовом ящике - добавьте адрес отправителя в белый список.
Помните: reCAPTCHA считает только количество проверок, а не писем. 454 запроса - это 454 нажатия кнопки «Отправить» на вашем сайте. 14% из них были признаны ботами и заблокированы. Остальные 390 - это реальные люди, чьи данные могли быть потеряны из-за технических неполадок на вашем сервере или в почтовой системе.