Как мы защитили формы сайта от спама без CAPTCHA и сохранили заявки
Как мы остановили поток спама в формах сайта недвижимости без CAPTCHA, сохранив конверсию и удобство для реальных клиентов. Бизнес-кейс с практическим результатом.
Клиент
Отрасль
Услуги
Веб-сайт

Проблема
После качественной SEO-оптимизации и роста органического трафика сайт начал стабильно привлекать от 600 посетителей в месяц и выше. Увеличилось количество входящих заявок, выросла видимость проекта и активность пользователей — именно тот результат, ради которого велась работа.
Однако вместе с ростом трафика появилась и другая сторона проблемы. Формы обратной связи начали активно использоваться не только реальными клиентами, но и автоматическими ботами.
В систему стали регулярно попадать заявки:
- с бессмысленными именами и фамилиями,
- с несуществующими email-адресами,
- со случайными или слишком короткими телефонными номерами,
- с типичными шаблонными сообщениями, не имеющими отношения к бизнесу.
Со временем это привело к нескольким серьёзным рискам:
- CRM начала заполняться мусорными лидами;
- менеджеры тратили время на обработку несуществующих запросов;
- искажалась аналитика и реальная конверсия сайта;
- возрос риск попадания корпоративной почты в спам из-за отправки ответов и уведомлений на невалидные адреса.
Важно, что спам появлялся не из интерфейса сайта, а напрямую через отправку запросов на сервер — то есть классическая защита на уровне формы была недостаточной.
При этом использование CAPTCHA рассматривалось как крайняя мера, так как:
- она ухудшает пользовательский опыт;
- снижает конверсию;
- плохо подходит для международной аудитории;
- выглядит избыточной для премиального сегмента.
Возникла задача найти решение, которое защитит бизнес от спама, не навредив росту заявок и не создавая барьеров для реальных клиентов.
Задача
Основной задачей стало внедрение надёжной защиты от спама, которая не мешает реальным пользователям и не снижает конверсию сайта. Решение должно было работать незаметно для посетителя, не добавлять лишних шагов в форму и не ухудшать пользовательский опыт.
Со стороны бизнеса цели формулировались следующим образом:
- полностью остановить автоматический спам, отправляемый напрямую на сервер;
- защитить CRM и почтовые ящики от мусорных заявок;
- снизить нагрузку на менеджеров и исключить ручную фильтрацию лидов;
- предотвратить риск попадания домена и почты в спам-фильтры;
- сохранить и при возможности повысить текущую конверсию форм.
Со стороны продукта и UX было важно, чтобы:
- формы оставались максимально простыми и быстрыми;
- пользователь не сталкивался с CAPTCHA, тестами или подозрительными проверками;
- автозаполнение браузера и мобильных устройств продолжало корректно работать;
- форма одинаково хорошо работала для международной аудитории.
С технической точки зрения требовалось решение, которое:
- не зависит от сторонних платных сервисов;
- масштабируется вместе с ростом трафика;
- не “обучает” ботов по HTTP-статусам;
- анализирует не только поля формы, но и контекст запроса;
- может использоваться повторно в других формах проекта.
Отдельным требованием было сохранить чистоту архитектуры: защита должна быть реализована на серверной стороне, чтобы её невозможно было обойти простой имитацией отправки формы.
Итоговая цель — создать систему антиспам-защиты, которая работает как фоновый фильтр: она незаметна для пользователей, но жёстко отсекает всё, что не похоже на реальный запрос от живого человека.
Результаты
Результаты внедрения системы антиспам-защиты стали заметны практически сразу после запуска и подтвердились в течение последующих недель стабильной работы сайта.
Ключевые бизнес-результаты:
- поток спам-заявок был остановлен практически полностью (более 95%);
- в CRM и на почту начали попадать только реальные обращения от живых пользователей;
- менеджеры перестали тратить время на ручную фильтрацию мусорных лидов;
- снизилась нагрузка на сервер и почтовую инфраструктуру;
- исчез риск попадания корпоративной почты в спам-листы.
С точки зрения пользовательского опыта:
- конверсия форм не только не снизилась, но осталась на прежнем уровне;
- пользователи не сталкиваются с CAPTCHA, чекбоксами или дополнительными проверками;
- формы корректно работают с автозаполнением в браузерах и на мобильных устройствах;
- скорость отправки формы осталась прежней.
С точки зрения устойчивости проекта:
- защита масштабируется вместе с ростом трафика;
- система одинаково эффективно работает для разных типов форм;
- антиспам-логика вынесена на сервер и не может быть обойдена с клиента;
- решение не требует ежемесячных платежей и внешних сервисов.
В итоге сайт сохранил высокую конверсию при росте органического трафика, а команда получила управляемый и безопасный канал входящих заявок.
Проделанная работа
Работа над задачей была построена поэтапно, с фокусом на бизнес-результат и долгосрочную надёжность решения.
Анализ проблемы и источников спама
На первом этапе был проведён анализ входящих заявок и серверных логов. Это позволило определить, что большая часть спама отправляется:
- напрямую на API-роуты;
- без реального источника страницы;
- с некорректными заголовками;
- с минимальным временем между загрузкой страницы и отправкой формы.
Это дало чёткое понимание, какие сигналы можно использовать для фильтрации.
Реализация многоуровневой антиспам-защиты
Вместо одного механизма была реализована комбинация независимых проверок, каждая из которых по отдельности выглядит “естественно”, но вместе создаёт высокий барьер для ботов:
- honeypot-поля, невидимые для пользователя;
- контроль времени заполнения формы;
- проверка referer и origin на соответствие домену;
валидация текущей страницы отправки; - rate limit по IP и email;
- базовая эвристика по имени и телефону;
- защита от прямых запросов без контекста сайта.
Важно, что сервер всегда отвечает статусом 200, чтобы не “обучать” ботов по ошибкам.
Унификация логики для всех форм
Антиспам-логика была вынесена в единый серверный слой и адаптирована под разные формы:
- стандартные контактные формы;
- расширенные формы;
- минимальные формы;
- форма для партнёров.
Это позволило поддерживать единые правила безопасности и упростило дальнейшее масштабирование проекта.
Улучшение валидации и пользовательской обратной связи
Формы были доработаны так, чтобы:
- пользователь сразу понимал, какие данные введены некорректно;
- сообщения об ошибках были понятными и человеко-ориентированными;
- интерфейс оставался простым и ненавязчивым.
Валидация реализована на уровне формы, а финальная проверка — на сервере.
Тестирование и стабилизация
После внедрения система была протестирована:
- на реальных пользователях;
- на автозаполнении;
- на мобильных устройствах;
- на попытках прямой отправки запросов.
В течение нескольких недель проводился мониторинг логов и поведения форм, после чего решение было признано стабильным.
Ключевые моменты проекта
Описание проекта
Многоуровневая защита вместо CAPTCHA
Большинство сайтов решают проблему спама установкой CAPTCHA. Это простой, но грубый инструмент. Он:
- раздражает пользователей,
- снижает конверсию,
- плохо работает с мобильных устройств,
- выглядит непрофессионально в премиум-сегменте.
В этом проекте был выбран другой подход — логическая защита на уровне данных и поведения.
Пользователь ничего не замечает, но система понимает, кто перед ней: человек или автоматический скрипт.
Защита API и бизнес-данных
Важно было защитить не только форму, но и серверный маршрут, принимающий данные. Даже если кто-то узнает URL API, отправить данные напрямую невозможно без выполнения всех проверок.
Это защищает:
- CRM от мусорных записей,
- почту от спама,
- бизнес-процессы от искажённых данных.
Почему это важно для бизнеса
Чистые заявки — это:
- корректная аналитика,
- правильные решения по рекламе,
- экономия времени сотрудников,
- доверие к цифрам,
- стабильная работа сайта.
Сайт — это не просто дизайн и тексты. Это инструмент продаж, который должен быть надёжным.
Где такое решение действительно необходимо
Подобный подход особенно актуален для:
- сайтов услуг и агентств;
- недвижимости и инвестиций;
- B2B-проектов;
- международных сайтов;
- проектов с рекламным трафиком;
- сайтов без отделённого колл-центра.
Вывод
Этот кейс — пример того, как глубокая техническая работа напрямую влияет на бизнес-результат.
Без усложнения интерфейса, без платных сервисов, без CAPTCHA.
Просто правильно спроектированная логика, которая делает сайт надёжным, а данные — чистыми.
Используемые технологии
API Интеграция
TypeScript
Next.js








