M masamenu.tr
🧩 Виджеты для вашего сайта

🍪 Cookies и согласие (CMP)

Баннер согласия, блокировка трекеров, сканер cookies, политика и журнал согласий

Документация

Cookies и согласие (CMP)

CMP (Consent Management Platform) — это баннер согласия на cookies плюс механика, которая реально блокирует сторонние скрипты до того, как посетитель нажал «Принять». Одной «плашки внизу экрана» для GDPR недостаточно: до согласия аналитика и рекламные пиксели не должны выполняться вовсе.

Наш CMP работает и на нашей витрине, и на вашем собственном сайте — одним и тем же кодом.

Где настраивается:

  • Маркетинг → «Мой сайт» → карточка «Cookies и согласие» (для внешнего сайта);
  • либо Сайт → «Настроить сайт» → секция «Cookies и согласие (CMP)» (для нашей витрины).

Как включить#

  1. Вставьте на сайт код установки из раздела «Мой сайт» — cookie-баннер грузится первым из всех виджетов, чтобы остальные скрипты увидели уже принятое решение.
  2. Включите тумблер виджета.
  3. Запустите сканер — он соберёт список cookies вашего сайта.
  4. Опубликуйте страницу «Политика cookies» или укажите ссылку на свою.

Баннер сам определяет язык страницы и показывается на нём — переводы на 45 языков уже готовы.

Для WordPress есть отдельный плагин Cenaly Consent: ставите его в своей админке WP, нажимаете «Подключить», выбираете локацию в открывшемся окне — тег и настройки прилетают сами, вставлять код руками не нужно.


Сколько это стоит#

Сам баннер и блокировка трекеров бесплатны на любом тарифе — и на нашей витрине, и на вашем собственном сайте. Соответствие закону не продаётся кусками: 45 языков, автоблокировка, Consent Mode v2, центр предпочтений и hosted-страница «Политика cookies» входят в платформу.

Отдельно продаётся уровень «Cookies Pro» — карточка «Cookies и согласие» в Магазине приложений, 9 $ в месяц или 90 $ в год на локацию. Это не доступ к разделу, а масштаб сервиса: более глубокий и частый скан сайта (включая закрытые разделы), длинный журнал согласий с выгрузкой-доказательством, свои правила по странам, полная настройка дизайна и тексты-оверрайды по языкам, снятие бейджа «Работает на Cenaly». Актуальный состав уровня и цена — на самой карточке в магазине.

ИИ-разметка нераспознанных cookies в уровень не входит и отдельно не продаётся: она доступна на любом уровне, а каждый вызов оплачивается с ИИ-баланса аккаунта. На брендах в облаке Yandex (cenaly.ru) сканера и журнала согласий нет (см. ниже), поэтому их часть уровня там не работает.


Категории и что блокируется до согласия#

Четыре стандартные категории:

Категория Что в неё попадает По умолчанию
Необходимые Корзина, сессия, безопасность Всегда включены, отключить нельзя
Предпочтения Язык, валюта, ранее выбранная локация По решению гостя
Статистика Google Analytics, Яндекс.Метрика, Matomo, Clarity По решению гостя
Маркетинг Facebook Pixel, VK, TikTok, рекламные пиксели и ремаркетинг По решению гостя

Пока согласия нет, скрипты и iframe этих категорий не загружаются: их адреса сверяются со встроенным реестром трекеров, а вы можете добавить свои паттерны. Заблокированный iframe (например, видео с YouTube) показывает заглушку со ссылкой «разрешить».

Дополнительно передаются сигналы согласия рекламным системам: Google Consent Mode v2 (до согласия — режим без cookies), Microsoft UET, Meta (fbq), Clarity Consent API. Учитываются сигналы браузера GPC и Do Not Track.

Срок жизни согласия настраивается (по умолчанию 365 дней, допустимо 30–730), после чего баннер спросит заново. Отказ гостя запоминается — повторно спрашивать при каждом визите мы не будем. Можно включить общее согласие для всех поддоменов и указать ссылку на список сайтов, которые оно покрывает.


Режимы по странам#

Режим — это поведение баннера до того, как гость что-то нажал. Он выбирается так:

  1. ваше правило для страны гостя (если задано),
  2. ваш режим по умолчанию,
  3. встроенная карта стран,
  4. эвристика по таймзоне браузера.

Страна гостя определяется по IP. ⚠️ Это выбор поведения, которое настроили вы, а не вывод о том, какой закон к вам применим.

Пять режимов#

Режим Что происходит до решения гостя Что видит гость
opt-in всё, кроме необходимых, заблокировано баннер «Принять / Отклонить / Настроить»
opt-out разрешено до явного отказа баннер + «Do Not Sell or Share»; сигнал браузера GPC или Do Not Track считается автоматическим отказом от маркетинга
мягкий разрешено, ничего не блокируется информационный баннер
уведомление разрешено одна строка-сообщение, согласия не спрашиваем
скрытый разрешено баннера нет вовсе; настройки открываются ссылкой #cenaly-consent на вашем сайте

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

Встроенная карта стран#

Применяется, когда вы не задали ни правила для страны, ни своего режима по умолчанию:

  • opt-in — 32 страны: 27 стран Евросоюза плюс Исландия, Лихтенштейн и Норвегия (вместе — ЕЭЗ), Великобритания и Швейцария;
  • opt-out — США;
  • все остальные страны — правила нет: сработает ваш режим по умолчанию, а если и он не задан — эвристика по таймзоне браузера (Europe/* → opt-in, America/* → opt-out, в остальных случаях opt-in). Безопасный дефолт — opt-in.

⚠️ Карта — это наша настройка по умолчанию, а не юридическая классификация стран. Страны, где спрашивать согласие принято, но которых в карте нет (Турция, Россия, Бразилия и десятки других), попадут под ваш дефолт или под эвристику. Нужен конкретный режим в конкретной стране — задайте его правилом, а не полагайтесь на карту.

⚠️ Определение страны по IP есть не везде. На брендах в облаке Yandex (cenaly.ru) эндпоинта гео нет, и виджет сразу падает на эвристику по таймзоне — она грубее: гость из ЕС в поездке по США получит America/* → opt-out. Если для вас это важно, задайте режим по умолчанию явно. Страну семи часовых поясов виджет всё же узнаёт (Москва → RU, Стамбул → TR, Тбилиси → GE, Киев → UA, Лондон → GB, Ереван → AM, Тирана → AL): ваше правило для такой страны сработает и при заданном режиме по умолчанию.

Где настраивается: карточка «Cookies и согласие» → шестерёнка → «Режим согласия по умолчанию» и «Правила по странам» (страна в формате ISO-2 → режим).

Чего режим НЕ делает#

  • не выбирает за вас юрисдикцию — какой режим включить в каждой стране, решаете вы (и ваш юрист);
  • не меняет тексты документов: набор юридических страниц и их формулировки — отдельный инструмент со своими странами, см. Юридические документы;
  • не покрывает мобильные приложения — это скрипт для веб-страниц;
  • не выдаёт TCF-строку IAB Europe: если рекламный партнёр требует именно сертифицированный CMP из фреймворка TCF, наш баннер ему не подойдёт. Мы передаём сигналы согласия напрямую — Google Consent Mode v2, Microsoft UET, Meta, Clarity.

Откуда берутся привычные ожидания рынка#

⚖️ Это справочные ориентиры, а не юридическая консультация и не утверждение, что к вам применима та или иная норма. Мы приводим первоисточники, на которые опираемся сами; актуальность и применимость к вашему бизнесу проверяйте с юристом.

Где Норма Что в ней про cookies Первоисточник
ЕС / ЕЭЗ Директива 2002/58/EC (ePrivacy), ст. 5(3), плюс национальные имплементации доступ к устройству пользователя ради не строго необходимых cookies — только с предварительного согласия; строго необходимые — без согласия eur-lex.europa.eu/eli/dir/2002/58
Франция рекомендации CNIL по cookies и трекерам кнопки «Принять» и «Отказаться» должны быть равнозначны по заметности; продолжение навигации согласием не считается cnil.fr
Великобритания PECR 2003 (с изменениями Data (Use and Access) Act 2025) необязательные cookies и аналогичные технологии — только по явному активному согласию; преднажатые галочки не годятся legislation.gov.uk/uksi/2003/2426
США, Калифорния CCPA/CPRA и регламенты CPPA модель отказа: opt-out из «продажи/шеринга» и обязательное распознавание сигнала Global Privacy Control. Действует выше порогов (в частности, по выручке) — типовой небольшой бизнес под них может не подпадать cppa.ca.gov
Турция руководство KVKK по cookies (2022) и решение Kurulu №2022/1358 необязательные cookies — явное согласие; продолжение просмотра сайта согласием не считается kvkk.gov.tr
Россия отдельного закона о cookies нет — общие нормы 152-ФЗ, ст. 9 согласие на обработку персональных данных — явное, отдельное, отзываемое consultant.ru, 152-ФЗ
Грузия отдельного закона о cookies нет — Закон о защите персональных данных основание обработки — согласие; технические cookies — информирование matsne.gov.ge

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


Внешний вид и тексты#

  • Раскладка: полоса, карточка, модальное окно; позиция — любой из шести вариантов кромки/угла.
  • Экран настроек: разворот в карточке или выезжающая боковая панель.
  • Палитра по элементам отдельно для светлой и тёмной темы, свой логотип, свой CSS (до 10 КБ).
  • Тумблеры кнопок: крестик, «Отклонить всё», «Настроить». Кнопку «Принять» скрыть нельзя, а в opt-in-режиме админка предупредит о рисках, если убрать «Отклонить».
  • Категории можно вынести галками прямо на первый слой баннера.
  • Любой текст баннера правится по языкам поверх наших переводов.
  • Превью в кабинете переключается между desktop, планшетом и мобильным.
  • Отдельно настраивается плавающая кнопка «Настройки cookies» (слева/справа/выключена) и список страниц, на которых баннер не показывается.

Сканер cookies и декларация#

⚠️ Сканера нет на брендах в облаке Yandex (cenaly.ru). Там список cookies для декларации ведётся вручную в той же таблице ниже — страница политики остаётся живой, — а уведомления вместо запроса согласия и ИИ-разметки, которые опираются на отчёт скана, нет.

Сканер открывает ваш сайт в браузере и собирает реальные cookies и сторонние сервисы. Каждая страница проходится дважды — без согласия (так видно нарушения prior consent) и с полным согласием (так собирается полная декларация):

  • обход по robots.txt, sitemap.xml и ссылкам со стартовых страниц, ограничение по числу страниц;
  • расписание: ежемесячно или еженедельно, в кабинете видна дата следующего скана;
  • история сканов — сколько страниц пройдено, сколько cookies найдено и сколько из них новых по сравнению с прошлым разом;
  • скан за логином — для страниц личного кабинета;
  • ИИ-классификатор: незнакомые cookies получают предложенную категорию с объяснением, вы подтверждаете или меняете. Вызов платный — списывается с ИИ-баланса аккаунта на любом уровне.

Декларация cookies — таблица всех cookies по категориям: имя, поставщик, срок хранения, назначение. Можно добавлять свои записи, править описания и переводы. Из этой же таблицы собирается список для баннера и для страницы политики.

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


Страница «Политика cookies»#

Ссылка в баннере ведёт либо на вашу существующую страницу, либо на документ, который мы сгенерируем и разместим сами: он собирается из результатов скана, публикуется на 45 языках и обновляется вместе с декларацией — таблица cookies на нём всегда живая.

Если нужны и остальные юридические страницы (политика конфиденциальности, условия, возвраты, доставка) — см. Юридические документы.


Журнал согласий и отчёты#

⚠️ На брендах в облаке Yandex (cenaly.ru) журнал согласий пока не собирается: решения гостей не попадают ни в журнал, ни в тренды, ни в выгрузку CSV. Сам выбор гость по-прежнему делает, и баннер его соблюдает.

Журнал — это доказательство согласия (proof of consent) на случай проверки:

  • дата, анонимный идентификатор, выбранные категории, версия политики, страна и язык;
  • выгрузка CSV и отдельной записи;
  • тренды: принято / отклонено / частично по дням и по странам;
  • счётчик показов баннера.

Кнопка «Переспросить всех сейчас» поднимает версию политики — после существенных изменений баннер спросит всех заново.


Ограничения#

  • Строгий «prior consent» требует отдельного тега. Через единый загрузчик cookie-баннер поднимается первым из наших виджетов, но чужую аналитику, прибитую в <head> выше нашего кода, он не опередит. Если нужно, чтобы ни один сторонний скрипт не стартовал до ответа гостя, ставьте тег баннера первой строкой в <head>, до всех остальных.
  • Сломанный или недоступный конфиг снимает блокировку, а не включает её. Виджет выключен, страница в исключениях, конфиг не прочитался — трекеры на сайте работают как обычно. Держать чужой сайт заблокированным из-за нашего сбоя нельзя, поэтому проверяйте, что баннер действительно показывается.
  • Блокируется то, что известно. Скрипты и iframe сверяются со встроенным реестром трекеров; нестандартный или самописный счётчик нужно добавить своим паттерном — иначе он загрузится до согласия.
  • Возрастной гейт 18+ — отдельная секция и отдельные тексты. Он выключен по умолчанию, а его надписи есть на английском, русском, грузинском и турецком с падением на английский, тогда как сам баннер говорит на 45 языках: формулировку для своего рынка задавайте своими текстами.
  • Покрытие регионов — это настройка, а не сертификация. Встроенная карта знает 32 страны с opt-in и США с opt-out, остальное задаёте вы правилами; проверить соответствие вашей юрисдикции баннер не может и не пытается — подробности и первоисточники в разделе «Режимы по странам».
  • Фреймворка TCF (IAB Europe) у нас нет. Если рекламная сеть требует сертифицированный CMP с TCF-строкой, наш баннер ей не подойдёт: мы передаём согласие напрямую — Google Consent Mode v2, Microsoft UET, Meta, Clarity.
  • Это веб-баннер. Для мобильных приложений (свои SDK, системные запросы отслеживания) он не предназначен.
  • Баннер не заменяет политику. Ссылка на страницу «Политика cookies» (нашу опубликованную или вашу собственную) должна быть заполнена — без неё гостю некуда посмотреть, на что он соглашается.

Устранение неполадок#

Баннера на сайте нет. Тег не вставлен или стоит не на всех страницах шаблона (нажмите «Проверить установку»); в теге чужой data-domain; тумблер виджета выключен; изменения ещё не доехали — файлы виджетов раздаются через CDN с кэшем 5 минут. Тег, который вставляет уже в браузере Google Tag Manager, проверка установки не увидит — это не ошибка, смотрите сайт глазами; полный список таких случаев — «Что проверка установки не видит».

Баннер есть, но трекеры грузятся до согласия. Скорее всего, чужой скрипт стоит в <head> выше нашего тега — переставьте наш тег первым. Второй частый случай — счётчика нет во встроенном реестре: добавьте его адрес своим паттерном.

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

Инструменты диагностики:

  • Проверить установку — читаем исходный HTML вашей страницы и говорим, найден ли код и стоит ли он внутри <head>.
  • Отправить код разработчику — открывает готовое письмо со сниппетом в вашей почтовой программе.
  • Гайд по Google Tag Manager — как поставить баннер тегом GTM.
  • Режим отладки: откройте сайт с ?cenaly_consent_debug=1 — в консоль пойдут события Consent Mode (default/update) и определённый режим региона, видно, что именно получают Google и другие системы.

Связанные разделы#


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

Баннер обязателен? Это вопрос к вашему юристу, а не к нам: обязанность зависит от того, где вы работаете, откуда к вам приходят посетители и какие скрипты стоят на сайте. Со стороны продукта ответ такой: наш баннер умеет пять режимов, по умолчанию в 32 странах ЕЭЗ, Великобритании и Швейцарии включается строгий opt-in, в США — opt-out с «Do Not Sell», в остальных странах поведение задаёте вы. Ориентиры и первоисточники собраны выше, в разделе «Режимы по странам».

Заблокирует ли CMP мою собственную аналитику? До согласия — да, это его работа. Платформенная аналитика при этом продолжает считать визиты в cookieless-режиме Consent Mode v2.

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

Работает ли это, если сайт не на нашей платформе? Да — это основной сценарий. Один тег на любом сайте, а для WordPress — плагин Cenaly Consent, который ставит тег за вас.

Была ли статья полезной?