Cookie‑баннер — это всплывающее уведомление, которое появляется при первом заходе на сайт. В 2026 году он обязателен почти везде, и половина сайтов делают его неправильно.
Когда баннер обязателен
Если на сайте подключён хотя бы один счётчик аналитики, пиксель ремаркетинга, чат-виджет или внешний сервис, который ставит cookies — баннер нужен. Это:
- Яндекс.Метрика, Google Analytics, Google Tag Manager;
- VK Pixel, MyTarget, Top.Mail.Ru;
- Roistat, CallTouch, CoMagic;
- Jivo, Talk-Me, любой онлайн‑чат;
- любой пиксель ретаргетинга — Mail.Ru, VK Ads и аналоги.
Если на сайте действительно ничего из этого нет (только верстка и формы) — баннер не обязателен, но рекомендуется на будущее. Подключите Метрику завтра — забудете поставить баннер.
Уведомление и согласие — это разные вещи
Российская практика тут отличается от европейской. По GDPR (Европа) баннер обязан получать активное согласие до загрузки счётчиков. По 152‑ФЗ Роскомнадзор пока требует менее строгого — баннер должен информировать пользователя о сборе cookies и давать возможность отказаться.
На практике безопаснее делать «европейский» вариант с двумя кнопками:
- Принять — пользователь даёт согласие на все cookies, включая аналитику и рекламу. Загружаются Метрика, GA, пиксели.
- Только необходимые — пользователь не даёт согласия на счётчики. Загружаются только технические cookies (сессия, авторизация, корзина).
До нажатия одной из кнопок счётчики грузиться не должны. Это самый частый просчёт: баннер есть, кнопки есть, но Метрика всё равно стоит сразу в <head>. Юридически — это значит, что баннера нет.
Что писать в баннере
Минимально необходимое:
Этот сайт использует cookies и сервисы аналитики (Яндекс.Метрика, Google Analytics) для улучшения работы. Подробнее в Политике обработки персональных данных. [ Принять ] [ Только необходимые ]
Что важно:
- Названы конкретные сервисы — не «партнёры» или «третьи лица».
- Есть ссылка на политику. Кликабельная.
- Кнопка «Только необходимые» равноправна по визуальному весу с «Принять» — нельзя её прятать в углу или делать серой и мелкой. РКН и суды специально это смотрят.
- Кнопки «Закрыть крестиком» — недопустимо. Закрытие баннера крестиком не считается согласием.
Куда записать выбор пользователя
Когда пользователь нажимает «Принять» или «Только необходимые», его выбор нужно где-то сохранить. Стандартная практика:
- В localStorage или собственный cookie вида
cookie_consentсо значениемallилиessential. - Срок жизни — 6–12 месяцев. Через год снова показываете баннер — пусть пересогласится.
- В аналитике (если согласие на неё дано) — журналировать факт согласия с timestamp на сервере. На случай проверки.
Готовые решения
Свой код писать необязательно. Есть проверенные библиотеки:
- Cookiebot — платный, $7-50/мес, с умным автодетектом cookies на сайте. Хорошо подходит для крупных сайтов с десятком сервисов.
- Klaro! — open source, бесплатный, ~30 КБ JS. Конфигурация в JSON, поддерживает русский. Подходит, если умеете в код.
- Cookieinformation — платный, дешевле Cookiebot, российских сайтов реже.
- Свой JS на 50 строк. Для лендинга или небольшого сайта с одной Метрикой — самый разумный вариант. Принимает кнопки, ставит cookie, грузит Метрику только при согласии.
Для Tilda, Bitrix, WordPress
В большинстве популярных CMS есть готовые блоки или плагины:
- Tilda. Стандартный блок «Согласие на cookies» в библиотеке (T123 и аналоги). Поддерживает обе кнопки. По умолчанию — настроен корректно.
- Bitrix. С версии 21.1100 в коробке есть модуль «Уведомление о cookie». Подключается одним кликом, кастомизируется в настройках. По умолчанию текст слабый — переписывайте.
- WordPress. Плагины Complianz, CookieYes, Real Cookie Banner. Бесплатные базовые версии справляются для большинства сайтов.
- «Мегагрупп.ру», InSales и другие конструкторы. Обычно встроено в шаблон. Проверьте, что счётчики реально не грузятся до нажатия — и что в политике cookies упомянуты.