Сбор сигналов
Код на сайте загружается асинхронно и запускается после отрисовки страницы. При открытии страницы он отправляет на сервер технические характеристики браузера, а через 15 секунд или при уходе со страницы — сведения о поведении: сколько было движений мыши, прокруток, касаний, как быстро последовало первое действие. Визит длится 30 минут с последнего действия, как в Метрике, поэтому поведение суммируется по всем страницам.
Мы не собираем то, что посетитель вводит в формы, и не записываем экран.
Признаки и баллы
Каждый признак добавляет баллы. Живое поведение — долгий визит с прокруткой и движениями мыши — немного снижает итог. Сумма ограничена диапазоном от 0 до 100.
| Группа | Признак | Почему это важно |
|---|---|---|
| Браузер | Флаг navigator.webdriver, безголовый режим Chrome | Так помечают себя браузеры под управлением скриптов |
| Браузер | Следы Selenium, Puppeteer, Playwright, PhantomJS | Инструменты автоматизации оставляют свои объекты в странице |
| Браузер | Программная видеокарта (SwiftShader, llvmpipe) | На серверах и в виртуальных машинах нет настоящей видеокарты |
| Браузер | Система в User-Agent не совпадает с navigator.platform | Бот подменил название браузера, но забыл про остальное |
| Браузер | Мобильный браузер без сенсорного экрана, пустой список языков, нулевой размер окна | Типичные ошибки эмуляции |
| Сеть | IP дата-центра или хостинга | Живые клиенты редко сидят на серверах; учитывается вместе с другими признаками |
| Сеть | VPN-сервис или выходной узел Tor | Скрывают настоящий адрес; сам по себе не делает ботом |
| Сеть | Назвался поисковым роботом, но IP не принадлежит Яндексу или Google | Проверяем обратным и прямым DNS-запросом |
| Поведение | Мышь движется строго по прямой | У человека траектория всегда немного дрожит |
| Поведение | Клик без движения мыши, реакция быстрее 150 мс | Скрипт кликает в координаты сразу после загрузки |
| Поведение | События с флагом isTrusted = false | Клик или прокрутка сгенерированы кодом, а не человеком |
| Поведение | Ни одного действия за 10 секунд и больше | Слабый признак: человек мог просто читать |
| Реклама | Три и более перехода по рекламе с одного устройства за сутки | Главный признак скликивания |
| Реклама | Много визитов с одного IP или устройства за час | Серийная работа бота |
Вердикт
листал, звонил
один слабый признак
подозрительный
явный бот
По умолчанию визит с оценкой от 70 считается ботом, от 40 до 69 — подозрительным, ниже 40 — человеком. Пороги можно изменить в настройках каждого сайта. Поисковых роботов мы относим к отдельной группе и не учитываем в статистике ботов.
Первичный вердикт выносится сразу после загрузки страницы — по характеристикам браузера и сети. Через 15 секунд, когда появляются данные о поведении, вердикт уточняется. В Метрику сразу уходят только явные боты, остальные — после уточнения.
Связка с Метрикой и Директом
Проще всего войти в кабинете через Яндекс. Сервис получит ограниченный доступ к Метрике и Директу и сделает всё сам:
- создаст в счётчике цели «КликСтоп: бот» и «КликСтоп: подозрительный визит»;
- создаст условие ретаргетинга по цели «бот» и поставит корректировку ставок −100% в выбранных кампаниях;
- раз в сутки будет добавлять в минус-площадки сайты и приложения РСЯ, где за 14 дней доля ботов выше порога, который вы задали;
- будет добавлять в запрещённые IP-адреса, с которых бот переходил по рекламе несколько раз, в пределах лимита Директа и не трогая ваши записи.

Каждое изменение записывается в журнал. Если не хотите давать доступ, то же самое настраивается вручную:
- В настройках сайта в кабинете укажите номер счётчика Метрики.
- В Метрике создайте цели типа «JavaScript-событие» с идентификаторами
antibot_botиantibot_suspect. - В Директе откройте «Библиотека» → «Условия ретаргетинга и аудитории» и создайте условие «выполнена цель antibot_bot за 30 дней».
- В настройках кампании добавьте корректировку ставок −100% для этого условия.
Дополнительно каждый визит получает параметр antibot.verdict — по нему удобно строить сегменты в отчётах Метрики.
Почему рекомендуем сначала наблюдать
У каждого бизнеса своя аудитория. Например, у B2B-сайта много посетителей из офисов с корпоративными прокси. Первые одну-две недели собирайте цели, смотрите в кабинете причины пометок и, если нужно, поднимите порог. Затем включайте корректировку в Директе.
Хранение данных
Визиты хранятся 90 дней и удаляются автоматически. Подробнее — в политике обработки данных.