ГлавнаяБаза знанийРаботает ли счётчик без согласия на cookie и что за это грозит

Работает ли счётчик без согласия на cookie и что за это грозит

Cookie и счётчики 8 сентября 2026 г.

Метрика без согласия на cookie — частая находка проверок: счётчик грузится раньше баннера. Разбираем состав КоАП и как быстро это закрыть.

Если Яндекс Метрика, Google Analytics или рекламный пиксель отправляют первый запрос раньше, чем посетитель нажал кнопку в баннере, — согласия на этот момент ещё не было, а данные уже ушли. Наличие самого баннера здесь роли не играет: важно, что успело сработать до клика.

Кого это касается

Ситуация типовая: баннер согласия на сайте есть, выглядит нормально, но код счётчика вставлен в шаблон страницы напрямую — в <head> или в конец <body> — и грузится при каждом заходе, независимо от того, что посетитель нажал. Так бывает почти всегда, когда счётчик подключали до баннера и потом просто не трогали: работает — не трогай. Отдельно так же часто ловятся сайты на конструкторах (Tilda, Bitrix24, amoCRM-лендинги), где Метрика включается галочкой в настройках платформы и грузится без всякого условия, а баннер живёт своей отдельной жизнью поверх.

Проверить стоит и себя, если на сайте вообще нет баннера: тогда счётчик по определению грузится без согласия при каждом визите, и это тот же состав, просто без промежуточного шага «баннер есть, но не держит».

Что говорит закон

Обрабатывать персональные данные можно только по основанию из части 1 статьи 6 152-ФЗ, и для аналитики с рекламой единственное рабочее основание — согласие посетителя. Момент, когда счётчик отправил первый запрос с данными о посетителе (device id, IP, поведение на странице), и есть момент начала обработки. Если к этому моменту согласия ещё не было — основания не было тоже, независимо от того, что баннер потом появился и человек его закрыл.

Отдельно момент важен для форм: если счётчик собирает и данные из полей формы (например, виджет обратного звонка со своей аналитикой), к нему добавляется ещё и обязанность по части 1 статьи 9 152-ФЗ — согласие уже не на аналитику, а на обработку конкретных персональных данных из формы. Это разные основания, и закрываются они по-разному: аналитике — баннер, форме — отдельный чекбокс согласия.

Не уверены, что у вас с этим порядок? Робот откроет сайт браузером и покажет, что видно проверяющему — бесплатно и без регистрации.

Чем это грозит на практике

Санкция — часть 1 статьи 13.11 КоАП, «обработка персональных данных без законного основания». Вилка одна для всех вариантов: не важно, нет баннера вовсе, баннер есть, но счётчик его игнорирует, или согласие в баннере оформлено с нарушением.

Ситуация Что видит проверка Штраф для юрлица
Баннера нет вообще счётчик грузится при каждом заходе 150 000 – 300 000 ₽
Баннер есть, счётчик срабатывает раньше клика запрос к счётчику виден до нажатия любой кнопки 150 000 – 300 000 ₽
Повторное нарушение того же состава те же признаки, дело уже было 300 000 – 500 000 ₽

Суммы приведены по действующей редакции КоАП с учётом Федерального закона от 30.11.2024 № 420-ФЗ, вступившего в силу 30 мая 2025 года. Это вилка по составу, а не прогноз конкретной суммы — итоговый размер внутри вилки определяет тот, кто рассматривает дело. Полная картина по всем составам 152-ФЗ и порядку давности — в статье штрафы за нарушение 152-ФЗ.

Как это видит робот и проверяющий

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

  • открывается вкладка «Сеть» в инструментах разработчика, ставится фильтр по домену счётчика;
  • страница перезагружается без единого клика по баннеру;
  • если в списке запросов уже есть обращение к mc.yandex.ru, google-analytics.com, top-fwz1.mail.ru или другому трекеру — счётчик сработал без согласия, точка зафиксирована.

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

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

Что сделать, чтобы закрыть

  1. Найдите все счётчики, которые сейчас грузятся напрямую. Посмотрите исходный код страницы (Ctrl+U) и найдите теги <script> со ссылками на mc.yandex.ru, google-analytics.com, top-fwz1.mail.ru, vk.com/rtrg, а также встроенные пиксели виджетов чатов и форм.
  2. Заверните каждый в условие по согласию. Код счётчика не должен присутствовать в разметке до клика — не «скрыт стилями», а физически отсутствовать. Готовый пример такой обёртки — в статье как сделать баннер cookie по закону.
  3. Если счётчики идут через диспетчер тегов (GTM, Яндекс Диспетчер тегов) — проверьте триггер каждого тега. Триггер «All Pages» означает, что тег стреляет всегда, а согласие из баннера на него никак не влияет — контейнер тегов сам по себе не трекер и может грузиться сразу, но теги внутри обязаны ждать отдельного события «согласие получено».
  4. Проверьте виджеты и встроенные скрипты отдельно от основного кода сайта — часто именно они, а не Метрика, оказываются источником запроса до согласия.
  5. Если баннера нет вовсе — сначала разберитесь, точно ли он вам нужен, по статье нужен ли баннер согласия на cookie, и только потом переходите к сборке.

Как проверить, что закрыто

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

Быстрее сделать то же самое руками — запустить бесплатную проверку: она заходит на сайт как посетитель и сама смотрит, что из счётчиков успело сработать до согласия.

Частые вопросы

Достаточно ли переставить код счётчика ниже на странице, в конец <body>? Нет. Место в HTML не влияет на момент срабатывания — скрипт выполнится, как только браузер до него дойдёт, независимо от того, вверху он или внизу страницы. Важно не место, а условие: код должен запускаться по событию согласия, а не при загрузке страницы.

Если счётчик уже отправил данные до согласия один раз, это уже нарушение или только со второго раза? Уже нарушение. Часть 1 статьи 13.11 КоАП не требует повторности — она наступает для более высокой вилки штрафа при повторном привлечении по этому же составу, а не как условие первого нарушения.

GTM-контейнер — это тоже счётчик, который нужно блокировать целиком? Нет. Сам контейнер диспетчера тегов можно грузить сразу, он не собирает данные о посетителе самостоятельно. Условие по согласию ставится на теги внутри него — каждый настраивается на срабатывание по отдельному триггеру после согласия, а не «All Pages».

Google Analytics по-прежнему актуален для этого вопроса, если он частично заблокирован в России? Да. Доступность сервиса для владельца сайта не влияет на правовую оценку: если код GA всё ещё стоит на сайте и отправляет запросы из браузера посетителя, требование о согласии действует так же, как для любого другого счётчика.

Нужно ли отдельное согласие на каждый счётчик, если их несколько? Нет, если все они перечислены в одном баннере и в политике конфиденциальности. Читателю не нужно нажимать «Принять» на каждый трекер по отдельности — достаточно одного согласия, которое разблокирует все перечисленные счётчики разом.