РКН Аудит РКН Аудит

cookie трекеры 152-ФЗ техника согласие

Как заблокировать счётчики и трекеры до согласия на cookie

· 5 мин чтения · Редакция РКН Аудит

Cookie-баннер не блокирует ничего сам по себе — это окно с текстом и кнопкой. Если Яндекс.Метрика, рекламный пиксель или виджет чата загружаются при открытии страницы, данные посетителя уходят до того, как он что-то нажал, и согласие оказывается фиктивным: по статье 9 152-ФЗ оно должно быть предварительным, а не оформленным задним числом. Правильная схема одна: до согласия на странице работает только то, без чего сайт не функционирует, а всё остальное подключается скриптом после нажатия «Принять». Ниже — что относить к необходимому, а что блокировать обязательно, как технически отложить загрузку счётчика, где хранить сам факт согласия и как за минуту проверить, что блокировка действительно работает, а не только выглядит работающей. Отдельно разберём то, что чаще всего забывают: карты, видео и внешние шрифты подключаются не через script, а через iframe и link, и их тоже нужно откладывать. Источники: 152-ФЗ, глава 13.11 КоАП.

Проверить свой сайт: что грузится до согласия — бесплатно ←


Почему баннер без блокировки хуже, чем его отсутствие

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

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

Что блокировать, а что нет

Категория Примеры До согласия
Технически необходимые сессия авторизации, корзина, CSRF-защита, само cookie согласия работают
Аналитика Яндекс.Метрика, любые счётчики посещаемости блокировать
Реклама и ретаргетинг пиксели рекламных систем, коллтрекинг блокировать
Внешние встраивания карты, видеоплееры, шрифты со сторонних хостингов блокировать
Виджеты онлайн-чаты, формы обратного звонка, отзывы блокировать
Тестирование A/B-платформы, тепловые карты, запись сессий блокировать

Граница проходит не по «важности для бизнеса», а по вопросу: сломается ли сайт без этого прямо сейчас. Аналитика не ломает сайт — она нужна вам, а не посетителю.

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

Как отложить загрузку: три рабочих приёма

1. Подключать тег скриптом после согласия. В разметке нет кода счётчика — есть функция, которая создаёт элемент script и вставляет его в документ. Функция вызывается из обработчика кнопки «Принять», а при следующих визитах — если сохранённое согласие найдено.

2. Тип text/plain и подмена после согласия. Тег счётчика лежит в разметке, но с типом, который браузер не исполняет. После согласия скрипт находит такие теги, меняет тип на обычный и заново вставляет их в документ.

3. Атрибут-маркер и общий загрузчик. Все внешние скрипты помечаются признаком категории (аналитика, реклама, виджет), а один загрузчик после согласия включает те категории, на которые человек согласился. Этот вариант удобнее всего, если категорий больше одной.

Что бы вы ни выбрали, проверьте встраивания в разметке: карта, видео и шрифты подключаются не только через script, но и через iframe и link, и их тоже нужно откладывать.

Частая ошибка: заблокировали не то

Два перекоса встречаются одинаково часто.

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

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

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

Где хранить согласие

В отдельном cookie или localStorage, и хранить стоит три вещи:

  • факт согласия и его состав (на какие категории);
  • дату — чтобы понимать срок;
  • версию текста политики — чтобы при её изменении спросить заново.

Само это хранение технически необходимо: без него баннер показывался бы при каждом открытии страницы.

Проверка за минуту

  1. Откройте сайт в режиме инкогнито.
  2. Панель разработчика → вкладка «Сеть».
  3. Обновите страницу и ничего не нажимайте в баннере.
  4. Посмотрите список запросов: если среди них есть обращения к системам аналитики или рекламы — блокировки нет.
  5. Отдельно проверьте вкладку хранилища: аналитических cookie до согласия быть не должно.

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

Чем это грозит

Загрузка трекеров до согласия — обработка без надлежащего основания, состав по части 1 статьи 13.11 КоАП: для юридических лиц 150 000–300 000 ₽.

Дополнительный риск — зарубежные сервисы: если счётчик или виджет передаёт данные за границу, добавляется трансграничная передача по статье 12 152-ФЗ с отдельным уведомлением. Разбор: «Трансграничная передача ПДн» и «Google Analytics в России».

Что почитать рядом


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

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

Зачем блокировать скрипты, если баннер уже стоит?

Потому что баннер сам по себе ничего не блокирует — это просто окно с текстом. Если счётчик, пиксель или виджет загрузился до того, как посетитель нажал «Принять», данные уже собраны и переданы, а согласие получено задним числом. Юридически это означает, что обработка началась без основания: согласие по статье 9 152-ФЗ должно быть предварительным и осознанным, а не оформленным после факта. Снаружи такая ситуация видна за секунды — достаточно открыть страницу с инструментами разработчика и посмотреть, какие запросы ушли до клика.

Что именно нужно блокировать до согласия?

Всё, что собирает данные о посетителе или передаёт их третьим лицам: веб-аналитику, рекламные пиксели, карты, видеоплееры со сторонних хостингов, чаты и виджеты обратной связи, внешние шрифты и A/B-тесты. Не блокируются вещи, без которых сайт не работает: сессия авторизации, корзина, защита от подбора паролей, сохранение самого выбора по cookie — это технически необходимые файлы, и их обработка обоснована не согласием, а исполнением договора и обеспечением работы сервиса.

Как технически отложить загрузку счётчика?

Не вставлять код счётчика в разметку сразу, а подключать его скриптом после того, как посетитель дал согласие. Практически это выглядит так: в HTML лежит не сам счётчик, а функция, которая создаёт тег script и добавляет его в документ; вызывается она из обработчика кнопки «Принять» и при последующих визитах — если сохранённое согласие есть. Тег с атрибутом type="text/plain" плюс подмена типа после согласия — тот же приём: браузер не исполняет скрипт, пока тип не изменён.

Где хранить сам факт согласия?

В отдельном cookie или в localStorage, вместе с датой и версией текста, на который человек согласился. Дата нужна, чтобы понимать срок; версия — чтобы при изменении политики запросить согласие заново. Хранить стоит и состав: на что именно согласились, если у вас несколько категорий. Само по себе это техническая необходимость, поэтому такое хранение допустимо до получения согласия на аналитику — иначе баннер показывался бы бесконечно.

Как проверить, что блокировка работает?

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

Что грозит, если скрипты грузятся до согласия?

Формально это обработка персональных данных без надлежащего основания — состав по части 1 статьи 13.11 КоАП, для юридических лиц 150 000–300 000 ₽. На практике до штрафа обычно доходит через жалобу или проверку, но нарушение относится к категории видимых снаружи: его фиксируют без запроса документов, просто открыв сайт.

Проверьте свой сайт на нарушения 152-ФЗ

Бесплатный скан за 30 секунд. 14 типов нарушений 152-ФЗ.

Запустить →

Похожие статьи