Боты в GA4: как найти тех, кого встроенный фильтр не ловит

Редакция BotHunt15 мин511
Боты в GA4 проходят сквозь фильтр и попадают в отчёты аналитики

Google Analytics 4 не спрашивает, включать ли фильтрацию ботов: она работает всегда, и отключить её нельзя. Отсюда опасная иллюзия — раз Google сам всё чистит, значит, ботов в GA4 нет. На деле встроенный фильтр отсекает только тех, кто честно представился роботом в заголовке User-Agent. Всё, что маскируется под обычный Chrome, попадает в отчёты наравне с живыми людьми.

Масштаб проблемы растёт: по данным Imperva Bad Bot Report 2025, автоматизированный трафик впервые за десятилетие превысил человеческий и занял 51% всего веба, а на «плохих» ботов пришлось 37%. Мы в BotHunt ежедневно обрабатываем более 50 млн запросов на сайтах клиентов и видим, что именно эта часть трафика в счётчиках и оседает: накрутчики поведенческих факторов, парсеры цен, скликиватели рекламы, headless-браузеры на резидентных прокси. Ни один из них не объявляет себя роботом.

Разберём, как устроена фильтрация ботов в GA4, почему она структурно не ловит современную автоматизацию, как найти ботов в отчётах руками и что сделать, чтобы мусорный трафик не доходил до счётчика.

Коротко:

  • GA4 автоматически исключает трафик известных роботов и «пауков» по списку IAB/ABC International Spiders and Bots List — фильтрация включена всегда и не отключается.

  • Фильтр работает по строке User-Agent, поэтому не видит headless-браузеры, накрутку поведенческих факторов и парсеры, которые представляются обычным Chrome.

  • GA4 не показывает, сколько трафика отфильтровано: аналога «Роботности» из Яндекс.Метрики в интерфейсе нет.

  • Фильтры данных в GA4 применяются на этапе обработки и не работают задним числом — уже собранные бот-сеансы из отчётов не исчезнут.

  • Встроенная фильтрация GA4 и защита от невалидного трафика в Google Ads — две независимые системы: бот может пройти в отчёты и при этом не вернуть вам деньги за клик.

  • Чистую статистику даёт только отсечение ботов на уровне сайта, до срабатывания счётчика.

Встроенный фильтр GA4 отсеивает только явных краулеров, а замаскированные боты попадают в отчёты

Как устроена встроенная фильтрация ботов в GA4

Встроенная фильтрация ботов в GA4 — это автоматическое исключение хитов от известных краулеров на этапе обработки данных. Google опирается на собственные исследования и на список IAB/ABC International Spiders and Bots List — отраслевой реестр user-agent'ов поисковых и сервисных роботов, который IAB обновляет и рассылает подписчикам ежемесячно.

Ключевое отличие от Universal Analytics: в UA исключение ботов было чекбоксом в настройках представления, и его можно было снять. В GA4 такого пункта в интерфейсе нет вообще. Справка Google «Исключение трафика известных роботов» формулирует это прямо: отключить функцию нельзя и узнать, сколько обращений известных роботов было удалено, тоже нельзя.

Три практических следствия, о которых редко пишут:

  • Вы не видите объём отфильтрованного. Нет ни отчёта, ни параметра, ни сравнения «до/после». Отсечённые хиты не показываются даже в отчётах в реальном времени и в DebugView — исключение происходит до записи данных.

  • Отфильтрованное не восстановить. Эти хиты не хранятся и не попадают в экспорт BigQuery. Если фильтр ошибся, вернуть сеанс невозможно.

  • Фильтр не адаптируется под ваш сайт. Это сверка со статическим списком, а не поведенческая модель: он не учится на ваших данных и не реагирует на аномалии конкретного ресурса.

Доля ботов в интернет-трафике по отчёту Imperva Bad Bot Report 2025

Почему встроенный фильтр GA4 не ловит современных ботов

Встроенный фильтр GA4 проверяет строку User-Agent — то есть верит боту на слово. Если автоматизация отдаёт заголовок настоящего браузера, для GA4 она неотличима от человека. Именно поэтому в отчётах остаётся весь коммерчески опасный трафик: накрутка поведенческих факторов, парсинг цен, скликивание рекламы и спам форм.

Тип бота

Как себя объявляет

Ловит ли фильтр GA4

Что вы видите в отчётах

Googlebot, YandexBot, Bingbot

Честный User-Agent робота

Да

Ничего: визиты не попадают в GA4

SEO-краулеры (Ahrefs, Semrush, Screaming Frog)

Честный User-Agent робота

Чаще да

Обычно ничего

Простые парсеры на requests и curl

Дефолтный User-Agent библиотеки

Иногда

Чаще ничего: без JavaScript счётчик не срабатывает

Headless-браузеры (Puppeteer, Playwright, Selenium)

User-Agent настоящего Chrome

Нет

Полноценные сеансы с просмотрами страниц

Боты накрутки поведенческих факторов

User-Agent браузера плюс эмуляция скролла и кликов

Нет

Сеансы с хорошей вовлечённостью — «лучше» живых

Скликиватели контекстной рекламы

User-Agent браузера, резидентные прокси

Нет

Платные визиты с нулевой конверсией

Спам-боты форм

User-Agent настоящего браузера

Нет

Сеансы и ключевые события вроде generate_lead

Хиты через Measurement Protocol

User-Agent не передаётся вовсе

Нет

События без единого запроса к сайту

Причина техническая. Современный headless Chrome по умолчанию отдаёт строку User-Agent, совпадающую с обычным десктопным Chrome, полностью исполняет JavaScript и корректно выполняет тег GA4. На уровне строки, по которой работает список IAB, он неотличим от человека — и никакого второго уровня проверки у GA4 нет. Добавьте резидентные прокси, ротацию отпечатков устройства и имитацию движений мыши, и сигналов для встроенного фильтра не остаётся вообще.

Список IAB обновляется раз в месяц, а инструменты автоматизации — каждую неделю. Подмена User-Agent у парсера занимает одну строку кода. Поэтому доля ботов, которых встроенный фильтр GA4 способен опознать, со временем только падает. Отдельная категория 2025–2026 годов — AI-краулеры вроде GPTBot и ClaudeBot: часть из них представляется честно, но растёт и число сервисов, которые собирают контент через обычные браузерные профили.

Как распознают ботов там, где User-Agent бесполезен — по отпечатку браузера, параметрам TLS-рукопожатия и микродинамике курсора — разобрано в материале про browser fingerprinting. Ни одного из этих сигналов у GA4 нет.

Боты в GA4 и боты в Яндекс.Метрике: в чём разница

Яндекс.Метрика даёт по ботам заметно больше данных: есть отдельный отчёт «Роботы», показатель роботности и выбор режима фильтрации. В GA4 нет ни отчёта, ни настройки, ни метрики.

Возможность

Google Analytics 4

Яндекс.Метрика

Автофильтрация известных роботов

Всегда включена, не отключается

Включена, режим выбирается в настройках счётчика

Выбор строгости фильтрации

Нет

Да, несколько режимов вплоть до поведенческого анализа

Отчёт по отфильтрованным ботам

Нет

Да: «Мониторинг → Роботы»

Метрика доли роботов

Нет

Да: показатель роботности в отчётах

Фильтр по IP

Только для внутреннего трафика

Да, в фильтрах счётчика

Приём данных только с указанных доменов

Косвенно, через анализ параметра Hostname

Да, отдельная настройка счётчика

Для российского проекта вывод простой: диагностику удобнее начинать с Метрики, а выводы переносить на GA4. Пошаговый разбор настроек счётчика — в статье «Как отфильтровать ботов в Яндекс.Метрике». Совпадение аномалий в двух системах — самый надёжный признак атаки.

Не знаете, сколько в вашем трафике ботов? Подключите BotHunt бесплатно на 14 дней — установка занимает меньше минуты, и вы увидите реальную долю автоматизированных запросов. Подключить защиту →

Measurement Protocol: как события попадают в GA4 без визита на сайт

Measurement Protocol — официальный HTTP-интерфейс GA4 для отправки событий напрямую на серверы Google, минуя сайт и браузер. Он задуман для серверных сценариев: офлайн-конверсий, интеграции с CRM, передачи данных из бэкенда.

Для отправки нужны два значения: measurement_id вида G-XXXXXXX и api_secret. Первый лежит в открытом коде счётчика на каждой странице, второй создаётся в настройках потока данных и должен храниться закрыто. Это важное отличие от Universal Analytics, где для отправки фейковых хитов хватало публичного идентификатора UA-XXXXX: в GA4 классический ghost-спам «по номеру счётчика» технически невозможен, и массового реферального спама в GA4 заметно меньше.

Схема: бот отправляет события в GA4 через Measurement Protocol в обход сайта

Проблема начинается, когда секрет утекает. Типичные каналы — публикация ключа в клиентском коде или в публичном репозитории, неаккуратно настроенный серверный контейнер GTM, no-code-интеграции. Документация Google предупреждает об этом прямо: раскрытие api_secret позволяет посторонним отправлять в ваш ресурс произвольные или спамные данные и искажать отчётность.

Запрос выглядит предельно просто — ни браузера, ни JavaScript, ни захода на сайт:

POST https://www.google-analytics.com/mp/collect?measurement_id=G-XXXXXXX&api_secret=XXXX

{
  "client_id": "1234567890.1234567890",
  "events": [{ "name": "page_view", "params": { "page_location": "https://example.com/" } }]
}

Лимиты не защищают: в одном запросе можно отправить до 25 событий, а ограничение по ресурсу — порядка 100 млн запросов в час. Главное же в том, что в Measurement Protocol строка User-Agent не передаётся вообще — значит, встроенная фильтрация GA4 к таким хитам неприменима по определению. Это и есть ghost traffic, знакомый по спам-рефералам в Метрике.

Как заметить Measurement-Protocol-мусор в отчётах:

  • Массовое (not set) в браузере, разрешении экрана, ОС или стране — передавать эти данные боту нечем.

  • Сеансы без страницы входа, с нулевым временем вовлечённости и ровно одним событием.

  • События с именами, которых нет в вашей разметке.

  • Чужой домен в параметре Hostname при построении отчёта в «Исследованиях».

Спецификация — в документации Google для разработчиков. Если секрет утёк, лечение одно: удалить его в настройках потока данных и выпустить новый.

Как найти ботов в GA4: 7 сигналов в отчётах

Прямого отчёта по ботам в GA4 нет, поэтому искать приходится по аномалиям вовлечённости, техники, географии и источников. Ниже — семь сигналов, которые мы в BotHunt используем при разборе трафика клиентов, с путями в интерфейсе.

  1. Нулевое время вовлечённости при росте сеансов. Отчёты → Взаимодействие → Страницы и экраны. Сеансы растут, а среднее время вовлечённости падает к нулю — почти всегда автоматизация.

  2. «(not set)» в технических параметрах. Отчёты → Технология → Обзор. Массовое «(not set)» в браузере, разрешении экрана или ОС — признак хитов через Measurement Protocol.

  3. Одно разрешение экрана на тысячах сеансов. Отчёты → Технология → Сведения о технологии, параметр «Разрешение экрана». Ферма headless-браузеров обычно работает с одним и тем же вьюпортом.

  4. География не совпадает с бизнесом. Отчёты → Демография → Сведения. Всплеск визитов из регионов, где вы не продаёте, при нулевых конверсиях — парсинг или накрутка.

  5. Ровное распределение по часам. Исследования → Свободная форма, параметр «Час». У живого трафика есть суточная волна, боты часто работают равномерно или строго по расписанию.

  6. Подозрительные источники перехода. Отчёты → Привлечение трафика → Источник/канал. Незнакомые домены с одной страницей входа и нулевой вовлечённостью — реферальный спам.

  7. Конверсии без денег. Отчёт по ключевым событиям. Рост generate_lead или отправок формы, которому не соответствует ни одна сделка в CRM, — спам-боты форм.

Семь признаков бот-трафика в отчётах Google Analytics 4 с путями в интерфейсе

Сигналы работают только в связке: один всплеск ничего не доказывает, а нулевая вовлечённость плюс одинаковое разрешение экрана плюс чужая география — уже диагноз. Тот же принцип мы применяем в Метрике: признаки мусорного трафика и восемь признаков поведенческих ботов описаны отдельно. Самый точный источник для проверки гипотезы — логи веб-сервера, где видно IP, User-Agent и ASN: набор команд собран в материале «Поиск ботов в логах Nginx».

Какие фильтры GA4 работают против ботов, а какие бесполезны

В GA4 три механизма ручной фильтрации: фильтры данных, список нежелательных источников перехода и сегменты в «Исследованиях». Против ботов по-настоящему помогает только третий — и то как способ смотреть на чистые цифры, а не чистить их.

Инструмент GA4

Где находится

Против чего работает

Ограничение

Фильтр внутреннего трафика

Администратор → Потоки данных → Настройки тега → Определение внутреннего трафика, затем Фильтры данных

Свои сотрудники и подрядчики по IP

Нужен статический IP; боты адреса меняют

Трафик разработки

Администратор → Настройки данных → Фильтры данных

Отладочные хиты с debug_mode

К внешним ботам отношения не имеет

Список нежелательных источников перехода

Администратор → Потоки данных → Настройки тега → Показать все

Искажение атрибуции платёжными шлюзами и спам-доменами

До 50 доменов; сеанс остаётся, источник становится прямым

Сегменты и сравнения

Исследования → Сегменты

Позволяют смотреть на трафик без подозрительных срезов

Данные не удаляются, это фильтр отображения

Анализ по параметру Hostname

Исследования, параметр «Имя хоста»

Диагностика ghost traffic на чужие домены

Только диагностика, не блокировка

Три ограничения, о которых нужно знать заранее. Первое: фильтры данных применяются на этапе обработки и не работают задним числом — включённый сегодня фильтр не почистит вчерашние отчёты. Второе: у фильтра есть статус «Тестирование», в котором он ничего не исключает, а лишь помечает данные; перевод в «Активный» необратим — вернуть фильтр в режим тестирования нельзя, а отброшенные данные не восстановятся. Третье: агрессивные самодельные правила режут живых людей — пользователей VPN, корпоративных сетей и приватных браузеров с изменённым User-Agent.

Иными словами, GA4 даёт инструменты гигиены — исключить сотрудников и отладку, — но не инструменты борьбы с внешней автоматизацией. Это принципиально: аналитическая система считает трафик, а не фильтрует его.

BotHunt блокирует ботов до того, как сработает счётчик: проверка занимает 4–12 мс на каждом запросе, точность 99,9% при доле ложных срабатываний менее 0,05%. Посмотреть тарифы →

BigQuery export: как посмотреть сырые события GA4

Бесплатный экспорт GA4 в BigQuery — самый глубокий доступ к данным, который даёт Google. Он включается в «Администратор → Связи с продуктами → BigQuery» и выгружает события построчно, с полями, которых нет в интерфейсе.

Что помогает искать ботов:

  • device.web_info.browser и device.web_info.browser_version — версия браузера, которой в стандартных отчётах GA4 просто нет; аномальная концентрация одной сборки выдаёт ферму.

  • device.category, device.operating_system_version — расхождения вида «desktop плюс мобильная ОС» типичны для плохо настроенной автоматизации.

  • event_params.engagement_time_msec — сырое время вовлечённости по каждому событию.

  • geo.country, geo.city — география на уровне отдельных событий.

  • collected_traffic_source и session_traffic_source_last_click — источник на уровне события и последнего клика.

  • user_pseudo_id — позволяет посчитать, сколько событий приходится на один идентификатор.

Чего в стандартном экспорте нет: IP-адреса и сырой строки User-Agent. Самый очевидный признак бота Google из данных убирает, поэтому даже на уровне BigQuery распознавание строится на косвенных признаках.

Запрос, с которого удобно начинать проверку, — распределение событий по версиям браузера за сутки:

SELECT
  device.web_info.browser AS browser,
  device.web_info.browser_version AS version,
  COUNT(*) AS events,
  COUNT(DISTINCT user_pseudo_id) AS users
FROM `project.analytics_XXXXXXXXX.events_20260922`
GROUP BY browser, version
ORDER BY events DESC
LIMIT 50;

Десятки тысяч событий на одной версии браузера при считанных пользователях — это ферма. Важная оговорка: в BigQuery выгружается уже отфильтрованный поток, известных краулеров там нет. То есть анализ в BigQuery ищет принципиально другой класс ботов, а не возвращает отсечённых.

Почему чистить GA4 постфактум недостаточно

Фильтрация в аналитике исправляет отчёт, но не исправляет бизнес. К моменту, когда вы вычли бот-сеансы из статистики, бот уже сделал всё, ради чего приходил: выкачал каталог, скликал объявление, оставил фейковую заявку или испортил поведенческие факторы.

Сравнение: фильтрация ботов в GA4 постфактум и защита от ботов на уровне сайта

Что остаётся с вами даже при идеально настроенных фильтрах GA4:

  • Оплаченные клики. Скликивание списывает бюджет в момент перехода — разбор защиты в материале про скликивание в Яндекс.Директе.

  • Искажённые поведенческие факторы. Поиск видит поведение ботов на сайте независимо от того, что вы отфильтровали в GA4.

  • Фейковые лиды в CRM. Менеджеры обзванивают несуществующие заявки, конверсия считается по мусорной базе. Методика пересчёта — в статье о том, как считать реальную конверсию.

  • Нагрузка на инфраструктуру и сломанные A/B-тесты. Парсеры дают реальные запросы к серверу, а перекос в несколько процентов смещает результат эксперимента.

Отдельно стоит развести две системы, которые постоянно путают. Встроенная фильтрация GA4 и защита от невалидного трафика (IVT) в Google Ads не связаны между собой. GA4 сверяется со статическим списком IAB, а рекламная система использует собственный антифрод и делит невалидный трафик на простой (GIVT) и сложный (SIVT). Клик может быть признан невалидным и компенсирован в Google Ads, но сеанс всё равно попадёт в отчёты GA4 — и наоборот. Ни одна из систем не заменяет другую и не отвечает за ваши поведенческие факторы.

Как отсекать ботов до того, как они попадут в GA4

Чтобы боты не оказывались в GA4, их нужно останавливать на входе — в момент HTTP-запроса, до выполнения JavaScript счётчика. Тогда тег GA4 просто не срабатывает и лишний хит не рождается.

  1. Проверка на каждом запросе. Агент работает per-request на стороне сайта и анализирует запрос до отдачи страницы: среднее время проверки 4–12 мс, вес скрипта менее 5 КБ.

  2. Поведенческая модель вместо списка User-Agent. Оцениваются отпечаток браузера, параметры TLS-соединения, ASN и резидентность IP, микродинамика курсора и скролла. Подмена User-Agent здесь ничего не даёт.

  3. Решение в реальном времени. Бот получает блокировку, живой пользователь проходит незаметно и без капчи: точность 99,9% при доле ложных срабатываний менее 0,05%.

  4. Счётчики видят только живых. Страница боту не отдаётся, поэтому GA4 и Яндекс.Метрика фиксируют только реальные визиты. По нашим данным, после подключения доля автоматизированного трафика падает примерно на 94%.

  5. Установка. Одна строка кода, плагин для WordPress или подключение через DNS. Поддерживаются Bitrix, Tilda, Shopify, OpenCart, MODX.

Защита на уровне сайта одинаково закрывает GA4, Метрику и рекламные кабинеты — не нужно поддерживать три набора фильтров в трёх системах. Подробнее — на странице защиты сайта от ботов и защиты от скликивания. Если вы ведёте трафик из Яндекс.Директа, начните с чистки рекламы: пошаговый план описан в статье «Как очистить Яндекс.Директ от ботов» — обычно это даёт самый быстрый финансовый эффект.

Попробуйте BotHunt бесплатно 14 дней — установка занимает 1 минуту, отчёт по доле ботов появится в первый же день. Подключить защиту →

Часто задаваемые вопросы

Можно ли отключить фильтрацию ботов в GA4?

Нет. В Google Analytics 4 исключение трафика известных роботов и «пауков» включено для всех ресурсов и не имеет переключателя в интерфейсе. Справка Google прямо указывает, что отключить эту функцию нельзя и узнать объём удалённых обращений тоже нельзя. В Universal Analytics это был чекбокс в настройках представления, в GA4 его убрали.

Как понять, что в GA4 есть боты, если отчёта по ботам нет?

Искать нужно по косвенным признакам: нулевое время вовлечённости при росте сеансов, массовое «(not set)» в технических параметрах, тысячи сеансов с одним разрешением экрана, всплески из нерелевантной географии, ровное распределение визитов по часам и ключевые события, которым не соответствуют сделки в CRM. Диагноз ставится по совпадению нескольких сигналов сразу.

Почему GA4 не ловит ботов, которых видит Яндекс.Метрика?

GA4 фильтрует по строке User-Agent и списку IAB, а Яндекс.Метрика дополнительно анализирует поведение пользователя и в строгом режиме учитывает IP-адрес. Поэтому Метрика показывает роботность и отдельный отчёт «Мониторинг → Роботы», а GA4 не показывает ничего. Совпадение аномалий в обеих системах — надёжный признак атаки.

Ловит ли встроенный фильтр GA4 headless-браузеры и накрутку поведенческих факторов?

Нет. Headless Chrome, Puppeteer и Playwright по умолчанию отдают строку User-Agent обычного десктопного Chrome, полностью исполняют JavaScript и корректно выполняют тег GA4. Список IAB сверяет только User-Agent, поэтому такие сеансы попадают в отчёты как полноценные визиты. Сервисы накрутки поведенческих факторов работают по той же схеме.

Что такое ghost traffic в GA4 и откуда он берётся?

Ghost traffic — события, отправленные в ресурс GA4 напрямую через Measurement Protocol, без реального визита на сайт. Для этого нужны measurement_id из публичного кода счётчика и приватный api_secret. Строка User-Agent в Measurement Protocol не передаётся, поэтому встроенная фильтрация к таким хитам неприменима в принципе.

Удалятся ли уже собранные бот-сеансы, если настроить фильтр данных?

Нет. Фильтры данных в GA4 применяются на этапе обработки и действуют только на новые данные — задним числом отчёты не пересчитываются. Кроме того, перевод фильтра из статуса «Тестирование» в «Активный» необратим, а отброшенные после активации данные восстановить невозможно.

Связаны ли боты в GA4 с невалидным трафиком в Google Ads?

Нет, это две независимые системы. GA4 сверяет User-Agent со списком IAB, а Google Ads использует собственный антифрод и делит невалидный трафик на GIVT и SIVT. Клик может быть компенсирован как невалидный в рекламном кабинете, но сеанс всё равно останется в отчётах GA4 — и наоборот.

Видно ли ботов в экспорте GA4 в BigQuery?

Частично. В BigQuery выгружается уже отфильтрованный поток, поэтому известных краулеров там нет. Зато доступны поля device.web_info.browser_version, device.category, geo.country, engagement_time_msec и user_pseudo_id, по которым ищут аномалии. IP-адреса и сырой строки User-Agent в стандартном экспорте нет.

Мешает ли защита от ботов работе Googlebot и YandexBot?

Нет. Поисковые роботы опознаются по обратному DNS и диапазонам ASN и пропускаются без ограничений, индексация не страдает. Блокируются только те, кто маскируется под поисковик или под обычного пользователя.

О BotHunt

Защищаем сайты от ботов, пока вы читаете эту статью

Российский сервис защиты от поведенческих ботов, парсеров, спама и брутфорса. Подключается через DNS или одной строкой кода — плагином для WordPress, PHP-агентом, Bitrix или OpenCart — и отсекает ботов до того, как они попадут в Метрику.

99,9%
точность детекции
<0,05%
ложных срабатываний
5 мин
на подключение