CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart — полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей) — технология защиты от автоматических запросов (ботов), требующая выполнения задачи, которую легко решает человек, но трудно — компьютерная программа. Самые известные варианты: распознавание искажённых букв/цифр, выбор изображений с определёнными объектами, подтверждение «Я не робот».
CAPTCHA применяется для защиты форм регистрации, комментариев, форм обратной связи, а также страниц входа от брутфорс-атак.
Типы CAPTCHA
- Текстовая CAPTCHA — распознавание искажённых символов (классика reCAPTCHA v1). Эффективность против современных нейросетей низкая.
- Image CAPTCHA — выбор изображений по критерию («выберите все светофоры»). reCAPTCHA v2 от Google.
- Невидимая CAPTCHA (reCAPTCHA v3) — анализирует поведение пользователя на сайте и выставляет «оценку человечности» без явного взаимодействия. Самый удобный вариант.
- Яндекс SmartCaptcha — российский аналог с поддержкой русских слов и российских пользователей.
- Honeypot — скрытое поле в форме: люди не заполняют невидимые поля, боты — заполняют. Простой и не раздражающий вариант без взаимодействия.
CAPTCHA и SEO: проблемы
- Краулинг поисковых роботов — если CAPTCHA блокирует Googlebot или Яндекс-бота при попытке обойти страницы, сайт не будет нормально проиндексирован. Никогда не устанавливайте CAPTCHA на страницах, которые должен индексировать поисковик.
- UX и конверсия — раздражающие CAPTCHA повышают показатель отказов на формах. Исследование Moz показало: сайты с CAPTCHA теряют до 50% потенциальных регистраций. Высокий отказ на ключевых страницах — косвенный SEO-сигнал.
- Замедление страницы — скрипты reCAPTCHA (особенно загружаемые с внешних серверов) могут замедлять Time to Interactive.
Рекомендации по использованию
- Используйте reCAPTCHA v3 или Яндекс SmartCaptcha (минимальное воздействие на UX).
- Honeypot — хорошая альтернатива для простых форм.
- Никогда не блокируйте CAPTCHA страницы, которые должны быть проиндексированы.
- Исключайте Googlebot и YandexBot из CAPTCHA-проверок через User-Agent whitelist.
Часто задаваемые вопросы
Блокирует ли CAPTCHA поисковых роботов?
Может блокировать, если установлена неправильно. Googlebot и Яндекс.Бот не решают CAPTCHA — они не являются «людьми». Если CAPTCHA стоит на странице, которую должен обойти бот, страница не будет проиндексирована. Решение: устанавливайте CAPTCHA только на формы (POST-запросы), а не на публичные страницы с контентом (GET-запросы). Никогда не ставьте CAPTCHA на страницу входа в CMS таким образом, чтобы она влияла на доступ к публичному контенту.
Чем reCAPTCHA v3 лучше v2 для SEO?
reCAPTCHA v3 работает «невидимо» — не требует от пользователя никаких действий. Алгоритм анализирует поведенческие сигналы (движение мыши, время на странице, история взаимодействий) и выставляет оценку от 0 до 1. Сайт сам решает, при какой оценке блокировать или просить подтверждение. Для UX и конверсии v3 лучше: не прерывает процесс заполнения формы. Скорость загрузки у v3 сопоставима с v2, но отсутствие «задачи» убирает задержку на взаимодействие.
Есть ли CAPTCHA-альтернативы без раздражающих задач?
Да: 1) Honeypot — скрытое поле, незаметное пользователю. 2) Временно́й анализ — слишком быстрая отправка формы (менее 2–3 секунд) — признак бота. 3) Cookie/Session проверка — первый запрос без куки — подозрительно. 4) JavaScript-вызовы — страница требует выполнения JS для отправки формы, боты без JavaScript не пройдут. 5) Собственные вопросы — «Сколько будет 2 + 3?» — примитивно, но часто достаточно для простых спам-ботов.
Влияет ли CAPTCHA от Google (reCAPTCHA) на скорость загрузки страницы?
Да, и это реальный фактор для Core Web Vitals. reCAPTCHA загружает ~500 KB скриптов с серверов Google. Это влияет на Time to Interactive и может ухудшить INP. Оптимизация: 1) Загружать reCAPTCHA только при фокусе на форму, а не при загрузке страницы. 2) Использовать reCAPTCHA v3 только на страницах с формами, а не глобально на всём сайте. 3) Рассмотреть alternatives (hCaptcha, Cloudflare Turnstile) — схожая защита с меньшим весом.