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

cookie cookie-баннер UX согласие 152-ФЗ

Дизайн и UX cookie-баннера: как оформить согласие, типичные ошибки и отказ пользователя

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

Дизайн cookie-баннера — это не оформление, а юридический вопрос. Часть 1 статьи 9 152-ФЗ требует, чтобы согласие было конкретным, предметным, информированным, сознательным и однозначным, и именно вёрстка решает, выполняется требование или нет: где кнопка отказа, что написано на кнопках, что происходит после отказа, загружаются ли счётчики до выбора. Ниже — рабочий макет первого экрана, поведение баннера при отказе, десять ошибок, которые встречаются чаще всего, и способ проверить свой баннер за пять минут.

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


Что в дизайне баннера имеет юридическое значение?

Отдельного закона о cookies в России нет: слово cookie в 152-ФЗ не встречается, требований к размеру шрифта и цвету кнопок тоже. Но у баннера есть ровно одна задача — получить согласие, соответствующее статье 9 152-ФЗ, и по каждому признаку из неё дизайн либо помогает, либо мешает.

Требование статьи 9 152-ФЗ Что это значит в макете Типичное нарушение
Конкретное Категории названы отдельно: аналитика, маркетинг, внешние сервисы Одна кнопка «Принять всё», категорий нет
Предметное Указано, какие данные и для чего обрабатываются «Мы используем cookies для улучшения работы сайта» — и всё
Информированное Рядом ссылка на политику и на текст согласия, они открываются Ссылка ведёт на главную или на PDF, который не открывается
Сознательное Отказаться так же просто, как согласиться Отказ спрятан во втором экране настроек
Однозначное Требуется действие: переключатель выключен по умолчанию Галочки предустановлены, «продолжая пользоваться сайтом, вы соглашаетесь»

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

Как устроен первый экран баннера?

Рабочий минимум, который помещается в один экран и не требует прокрутки:

  • одна-две строки объяснения простым языком: какие данные собираются и зачем. Без «улучшения пользовательского опыта» — эта фраза не объясняет ничего;
  • три кнопки одного визуального веса: «Принять все», «Отклонить все», «Настроить». Первые две — на первом экране, без раскрытия дополнительных блоков;
  • ссылки на политику обработки и на текст согласия, открывающиеся в новой вкладке;
  • переключатели категорий — либо сразу на первом экране, если категорий две-три, либо в «Настроить»; все, кроме строго необходимых, выключены по умолчанию;
  • крестик закрытия, равный отказу, а не молчаливому согласию. Если крестик есть — он должен вести себя как «Отклонить все», и это стоит подписать.

Что стоит убрать из макета:

  1. затемнение страницы, не снимаемое ничем, кроме согласия;
  2. кнопку «Отклонить» в виде серой текстовой ссылки рядом с зелёной кнопкой согласия;
  3. таймер обратного отсчёта и фразы вроде «баннер закроется через 5 секунд» — это давление, а не выбор;
  4. повторный показ баннера при каждом переходе по сайту.

Готовый макет с кодом, который реализует эту схему, разобран в статье «Cookie-баннер 152-ФЗ: opt-in согласие и JS-код», а разбивка по категориям — в статье «Классификация cookies и их правовой статус».

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

Значительная часть посетителей приходит с телефонов — и именно на узком экране баннер чаще ведёт себя не так, как задумывал дизайнер.

  • Не закрывать баннером весь экран. Нормативного порога тут нет, но баннер во весь экран телефона работает как принудительный модальный режим: содержимое недоступно, пока не нажата кнопка.
  • Кнопки в одну колонку и одного размера. Две кнопки в строку на узком экране превращаются в разные по ширине, и «Отклонить» неизбежно оказывается меньше.
  • Целевая область не меньше подушечки пальца. Кнопка, в которую сложно попасть, даёт промах вместо выбора, а промах — не однозначное волеизъявление.
  • Не закрывать элементы управления сайта. Баннер, висящий поверх кнопки «Позвонить» или поля поиска, вынуждает нажать «Принять», чтобы просто пользоваться сайтом.
  • Учесть safe area. Кнопки, уходящие под системную панель жестов, недоступны физически.

Что делать, если пользователь отказался от cookies?

Отказ — обычный, штатный сценарий, а не сбой. Что должно произойти:

Аналитика и маркетинг не загружаются. Это главное. Баннер, после отказа от которого счётчик всё равно отрабатывает, хуже отсутствия баннера: он документирует, что оператор знал о необходимости согласия и обошёл её. Как технически отложить загрузку скриптов, описано в статье «Блокировка скриптов до согласия».

Сайт продолжает работать. Строго необходимые cookies — сессия, корзина, защита форм — работают на основании статьи 6 152-ФЗ и от согласия не зависят, так что отказ от аналитики технически ничему не мешает. Прямой нормы «не закрывать контент» в 152-ФЗ нет, но баннер, блокирующий чтение до согласия, делает согласие условием доступа — а значит, вынужденным.

Решение запоминается. Отказ сохраняется так же, как и согласие, и баннер не появляется на каждой странице. Хранить стоит не только «да/нет», но и состав категорий: при добавлении нового стороннего сервиса вопрос придётся задать заново.

Остаётся возможность передумать — в обе стороны. Постоянная ссылка «Настройки cookie» в подвале решает сразу две задачи: посетитель, отказавшийся случайно, может согласиться, а согласившийся — отозвать согласие. Право отзыва прямо предусмотрено частью 2 статьи 9 152-ФЗ, и для cookie оно реализуется именно этой ссылкой.

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

Какие ошибки в настройке баннера встречаются чаще всего?

Ошибка Почему это проблема Как исправить
Баннер есть, скрипты грузятся до согласия Согласие декоративное: обработка уже началась Отложить загрузку всех необязательных скриптов до выбора
Только кнопка «Принять» Выбор отсутствует, согласие не однозначное Добавить «Отклонить все» рядом, тем же стилем
Отказ спрятан в «Настройках» Асимметрия действий — довод против сознательности выбора Вынести отказ на первый экран
Переключатели включены по умолчанию Молчание выдаётся за согласие Выключить всё, кроме строго необходимых
Аналитика отнесена к «необходимым» Счётчик нужен владельцу сайта, а не посетителю Перенести в категорию «Аналитические»
Нет ссылки на политику или она не открывается Согласие не информированное Проверить ссылку и доступность страницы
Решение не сохраняется Баннер всплывает на каждой странице, подтвердить согласие нечем Сохранять выбор и вести серверный журнал согласий
Нет способа отозвать согласие Не реализовано право по части 2 статьи 9 152-ФЗ Ссылка «Настройки cookie» в подвале
Баннер закрывает содержимое на телефоне Вынуждает согласиться ради доступа Ограничить высоту, кнопки в одну колонку
Текст согласия «зашит» в оферту С 1 сентября 2025 года согласие оформляется отдельно Разделить документы и чекбоксы

Последняя строка — следствие требования оформлять согласие отдельным документом, действующего с 1 сентября 2025 года; нарушение это по-прежнему массовое. Подробный разбор — в статье «Пакетное согласие: одна галочка на всё больше нельзя». Что именно из этого списка видит автоматизированный мониторинг регулятора и какие составы КоАП при этом применяются, разобрано в статьях «Штраф за cookie без согласия» и «Изменения в 152-ФЗ в 2026 году и полномочия РКН».

Как хранить доказательство согласия?

Часть интерфейса, которой у большинства баннеров нет вовсе. Решение посетителя сохраняется в его же браузере — и на этом всё. Между тем подтверждать, что согласие получено, придётся оператору, а не посетителю: запись в чужом браузере не доказательство, она стирается вместе с историей и никак не связана с вашей стороной.

Что стоит записывать на сервере в момент выбора:

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

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

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

Тот же журнал решает и вторую задачу — обработку отзыва. Отзыв согласия по части 2 статьи 9 152-ФЗ фиксируется так же, как и само согласие, иначе доказать, что требование исполнено, невозможно.

Мешает ли правильный баннер конверсии?

Довод «уберём кнопку отказа, иначе потеряем данные аналитики» стоит разобрать честно, потому что он и есть настоящая причина большинства кривых баннеров.

Данных действительно станет меньше: часть посетителей откажется. Но платить за это приходится не деньгами, а составом риска. Обработка без согласия — это часть 1 статьи 13.11 КоАП, от 150 до 300 тысяч рублей для юридического лица. Более тяжёлая часть 2 (от 300 до 700 тысяч, повтор по части 2.1 — от 1 до 1,5 миллиона) написана про случаи, когда закон требует согласия именно в письменной форме: специальные категории данных, биометрия, трансграничная передача. Для аналитических cookie письменная форма не обязательна, поэтому типичный состав — часть 1. При этом сам факт нарушения виден снаружи: чтобы его зафиксировать, достаточно открыть сайт и посмотреть сетевые запросы до нажатия любой кнопки.

Разумный компромисс — не прятать отказ, а сделать согласие осмысленным: объяснить в одной строке, что именно даёт аналитика сайту, и не просить лишнего. Категория «маркетинговые cookies» на сайте без рекламы — это отказ, который вы спровоцировали сами.

Как проверить свой баннер за пять минут?

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

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

→ Проверить сайт на нарушения 152-ФЗ (бесплатно, 30 секунд)


Что читать дальше


Источники: Федеральный закон №152-ФЗ «О персональных данных» — статьи 6, 9, 18.1; КоАП РФ — статья 13.11.

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

Обязательно ли делать кнопку «Отклонить» такой же заметной, как «Принять»?

Прямого требования «одинаковый размер кнопок» в российском законе нет — в 152-ФЗ слово cookie вообще не встречается. Но часть 1 статьи 9 152-ФЗ требует, чтобы согласие было конкретным, предметным, информированным, сознательным и однозначным. Если отказаться можно только через два экрана настроек, а согласиться — одной яркой кнопкой, довод о сознательном и свободном выборе рассыпается. Практический ориентир: отказ должен занимать столько же действий, сколько согласие, и находиться на том же экране.

Что делать со встроенными видео, картами и чатами, если посетитель отказался?

Не загружать их до согласия и показывать на их месте заглушку с кнопкой «Загрузить». Встроенный плеер, карта или виджет чата — это запрос к стороннему сервису, и он уходит вместе с IP-адресом и идентификаторами посетителя ещё до того, как тот что-то нажал. Если сервис зарубежный, это вдобавок трансграничная передача по статье 12 152-ФЗ, о которой Роскомнадзор нужно уведомить до её начала. Заглушка решает обе задачи: страница не ломается, а посетитель видит, что именно он включает.

Можно ли закрывать сайт затемнением, пока посетитель не нажмёт «Принять»?

Так делать не стоит. Модальное окно, которое не позволяет ни читать страницу, ни закрыть баннер иначе как согласием, превращает согласие в условие доступа — а часть 1 статьи 9 152-ФЗ говорит о сознательном и однозначном волеизъявлении. Кроме юридической стороны есть практическая: посетитель, пришедший из поиска за конкретным ответом, упирается в стену вместо ответа, а навязчивые полноэкранные перекрытия поисковые системы отдельно учитывают в оценке удобства страницы на мобильных.

Через сколько времени можно снова показать баннер тому, кто отказался?

Единого срока закон не устанавливает. Разумная практика — хранить решение посетителя столько же, сколько живут настройки сайта, и спрашивать заново, когда изменился состав категорий или подключился новый сторонний сервис. Показывать баннер при каждом переходе между страницами не стоит: прямого запрета в законе нет, но повторяющийся вопрос работает как давление и подрывает довод о сознательном выборе по части 1 статьи 9 152-ФЗ. Отдельно проверьте, сохраняется ли выбор: если баннер возвращается потому, что решение нигде не записано, подтвердить согласие оператор не сможет — доказывать это по части 3 статьи 9 152-ФЗ придётся ему.

Нужно ли хранить доказательства того, что посетитель согласился?

Да, и это чаще всего забывают. Подтверждать, что согласие получено, обязан оператор — это прямо сказано в части 3 статьи 9 152-ФЗ, — а формы доказательства закон не задаёт. На практике галочки в браузере посетителя не хватает: рабочий способ — серверная запись о том, какие категории были выбраны, когда и какая версия текста показывалась. Цена вопроса — часть 1 статьи 13.11 КоАП: обработка в случаях, не предусмотренных законодательством, обходится юридическому лицу в сумму от 150 до 300 тысяч рублей.

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

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

Запустить →

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

2026-09-18 · 10 мин

Оспаривание штрафа Роскомнадзора: сроки обжалования и куда подавать

Предписание и постановление о штрафе обжалуются по разным правилам: первое — обязательно досудебно через Госуслуги, второе — по главе 30 КоАП в течение десяти дней. Штраф по статье 13.11 КоАП назначает суд, а не Роскомнадзор, поэтому жалоба идёт в вышестоящий суд. Разбираем сроки, основания, которые отменяют постановление, замену штрафа предупреждением и почему скидки 50% по статье 13.11 КоАП нет.

2026-09-18 · 10 мин

Расследование утечки персональных данных: что сделать за 72 часа

Статья 21 152-ФЗ даёт оператору 72 часа на внутреннее расследование утечки и второе уведомление Роскомнадзора. Порядок действий: как зафиксировать следы, определить объём и период инцидента, установить причину, кто проводит расследование и какие ошибки лишают его смысла.