# Cookie на сайте: как сделать уведомление и получить согласие

URL: https://chugunov.pro/cookie-na-sajte-uvedomlenie/
Обновлено: 01.10.2026.
Источник: chugunov.pro.

## Коротко

Согласие на обработку cookies для сайта нужно тогда, когда сайт ставит не только технические cookie, без которых он не работает, но и аналитические или рекламные: счётчик Яндекс Метрики, пиксели соцсетей, коды ретаргетинга. В этом случае посетителю показывают окно с коротким текстом, ссылкой на политику cookie и кнопками выбора, а аналитику подключают в соответствии с его решением.

Технически задача несложная: баннер, отдельная страница с политикой и немного JavaScript, который запоминает выбор. Сложности начинаются в деталях — кэширование страниц, порядок загрузки счётчиков, тексты, которые не противоречат политике конфиденциальности. Ниже — как сделать всё аккуратно в WordPress и 1С-Битрикс.

| Что нужно | Зачем | Где размещается |
| --- | --- | --- |
| Окно уведомления | Сообщить о cookie и получить выбор | Внизу страницы, на всех страницах |
| Политика cookie | Объяснить, какие cookie и зачем | Отдельная страница, ссылка из окна и подвала |
| Запоминание выбора | Не показывать окно повторно | Cookie или localStorage браузера |
| Условная загрузка счётчиков | Выполнить выбор посетителя | Код шаблона или плагин |

## Основная мысль

**Баннер cookie — это не наклейка «для галочки», а переключатель: если посетитель нажал «отказаться», а Метрика всё равно загрузилась, окно только создаёт видимость порядка.**

Большинство сайтов ограничиваются плашкой «Мы используем cookie» с одной кнопкой «ОК». Это уведомление, а не согласие: выбора у посетителя нет. Для сайта, который вообще не собирает аналитику, такой вариант может быть достаточным. Для сайта с Метрикой, рекламными пикселями и формами логика должна быть другой.

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

## Что такое cookie и какие они бывают

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

### Виды cookie по назначению

| Тип | Пример | Нужен ли выбор посетителя |
| --- | --- | --- |
| Строго необходимые | Сессия, корзина, защита форм | Обычно нет, достаточно уведомления |
| Функциональные | Язык, выбранный город | Зависит от политики сайта |
| Аналитические | Яндекс Метрика, веб-аналитика | Как правило, да |
| Рекламные | Пиксели, ретаргетинг | Да |

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

### Свои и сторонние cookie

Свои cookie ставит сам сайт: например, WordPress запоминает, что посетитель оставлял комментарий, а 1С-Битрикс хранит идентификатор сессии. Сторонние ставят подключённые сервисы: счётчики, виджеты чатов, видеоплееры, карты. Именно сторонние сервисы обычно и превращают простой сайт в сайт, которому нужно согласие.

### Как узнать, какие cookie ставит сайт

Откройте сайт в режиме инкогнито, затем инструменты разработчика браузера: вкладка «Application» в Chrome или «Хранилище» в Firefox, раздел Cookies. Там видны все cookie с доменами. Пройдите по нескольким страницам, отправьте форму, добавьте товар в корзину — список пополнится. Это и есть исходные данные для политики.

## Уведомление или согласие на обработку cookies для сайта

Эти понятия часто смешивают, хотя технически это разные решения.

### Уведомление

Уведомление об использовании cookies на сайте информирует: сайт использует cookie, подробности — в политике. Кнопка одна — «Понятно» или «Закрыть». Все скрипты загружаются сразу, независимо от реакции посетителя. Такой вариант подходит сайтам, которые используют только технические cookie.

### Согласие

Согласие предполагает выбор. В окне как минимум две кнопки: «Принять» и «Только необходимые», иногда третья — «Настроить» с переключателями по группам. Аналитические и рекламные скрипты загружаются только после согласия. Выбор сохраняется, и его можно изменить позже — например, по ссылке «Настройки cookie» в подвале.

### Что выбрать

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

## Политика использования cookies на сайте: что в ней писать

Политика cookie — отдельная страница, на которую ведёт ссылка из окна и из подвала. Иногда её делают разделом политики конфиденциальности, но отдельная страница удобнее: её проще обновлять при подключении нового сервиса.

### Структура политики

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

Политика обработки файлов cookie на сайте должна описывать реальное положение дел. Если в политике не упомянута Метрика, а она стоит, документ скорее вредит, чем помогает. Поэтому политику пишут после инвентаризации cookie, а не копируют с чужого сайта.

### Связь с политикой конфиденциальности

Политика конфиденциальности для сайта с cookies должна содержать упоминание cookie и данных аналитики среди обрабатываемых данных и ссылку на отдельную политику cookie. Как составить основную политику, разобрано в статье [«Политика конфиденциальности для сайта»](https://chugunov.pro/politika-konfidencialnosti-dlya-sajta/). Тексты обоих документов не должны противоречить друг другу.

## Окно cookie на сайте: текст, кнопки и дизайн

Окно — единственное, что видит большинство посетителей. Оно должно быть понятным и не мешать пользоваться сайтом.

### Текст окна

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

### Кнопки

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

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

### Расположение и поведение

Окно cookie на сайте лучше ставить плашкой внизу экрана, а не модальным окном на весь экран. Плашка не должна закрывать кнопку заявки, корзину или чат на телефоне. Высота на мобильном — не больше трети экрана.

Окно не должно сдвигать содержимое при появлении. Иначе растёт показатель CLS, одна из метрик Core Web Vitals с целевым значением не больше 0,1. Правильно — фиксированное позиционирование поверх контента.

## Cookie на сайт: код простого баннера

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

### Разметка

```
<div id="cookie-banner" class="cookie-banner" hidden>
<p>Сайт использует cookie для работы и аналитики.
<a href="/politika-cookie/">Политика cookie</a></p>
<button type="button" id="cookie-accept">Принять</button>
<button type="button" id="cookie-decline">Только необходимые</button>
</div>
```

### Скрипт

```
(function () {
var KEY = 'cookie_consent';
var banner = document.getElementById('cookie-banner');
var saved = null;
try { saved = localStorage.getItem(KEY); } catch (e) {}

function loadAnalytics() {
// здесь подключается код счётчика и других необязательных сервисов
}

if (saved === 'all') { loadAnalytics(); }
else if (!saved) { banner.hidden = false; }

document.getElementById('cookie-accept').addEventListener('click', function () {
try { localStorage.setItem(KEY, 'all'); } catch (e) {}
banner.hidden = true;
loadAnalytics();
});

document.getElementById('cookie-decline').addEventListener('click', function () {
try { localStorage.setItem(KEY, 'necessary'); } catch (e) {}
banner.hidden = true;
});
})();
```

### Как это работает

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

Код счётчика Метрики переносят из шаблона внутрь функции loadAnalytics, а в шаблоне оставляют только сам баннер. Для ссылки «Настройки cookie» в подвале достаточно удалить сохранённый ключ и снова показать баннер.

### Почему выбор решается в браузере

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

## Плагин cookie для WordPress

Для WordPress есть много плагинов уведомлений: достаточно поискать по слову cookie в каталоге плагинов. Известные примеры — Complianz и CookieYes. Большинство из них ориентированы на европейские требования, поэтому тексты и группы cookie придётся адаптировать под русский язык и свою политику.

### Как выбирать плагин

- умеет ли блокировать скрипты до согласия, а не только показывать окно;
- есть ли группы cookie и кнопка настроек;
- совместим ли с плагином кэширования, который стоит на сайте;
- насколько тяжёлый: не тянет ли внешние скрипты с серверов разработчика;
- переводится ли интерфейс и можно ли отредактировать все тексты;
- когда плагин последний раз обновлялся.

Плагин для одного окна — всё же ещё один плагин. О том, как не перегрузить сайт расширениями, — в статье [«Плагины WordPress для сайта компании»](https://chugunov.pro/plaginy-wordpress-dlya-sajta-kompanii/). Если на сайте уже есть собственная тема и аккуратная вёрстка, баннер из предыдущего раздела часто оказывается проще и быстрее плагина.

### Как добавить cookies на сайт WordPress вручную

1. Сделайте резервную копию и работайте в дочерней теме.
2. Разметку баннера выведите через хук wp_footer в functions.php дочерней темы.
3. Скрипт подключите через wp_enqueue_script, стили — через wp_enqueue_style.
4. Уберите прямую вставку кода Метрики из шаблона или плагина вставки кодов и перенесите его в функцию загрузки аналитики.
5. Очистите кэш и проверьте в инкогнито: до нажатия «Принять» запросов к счётчику быть не должно.

## Баннер cookie в 1С-Битрикс

В ядре 1С-Битрикс есть механизм соглашений пользователей для форм, но готового баннера cookie с блокировкой скриптов в стандартной поставке нет. Решений два: модуль из Маркетплейса или собственный баннер в шаблоне.

### Модуль из Маркетплейса

Модули баннеров cookie в Маркетплейсе есть, но качество разное. Перед установкой проверьте, умеет ли модуль откладывать загрузку счётчиков, и совместим ли он с композитным сайтом. Правила безопасной установки описаны в статье [«Модули 1С-Битрикс»](https://chugunov.pro/moduli-1s-bitriks/).

### Собственный баннер

Разметку баннера размещают в footer.php шаблона сайта или в отдельной включаемой области, скрипт — в папке шаблона. Код Метрики, который часто вставлен прямо в header.php, переносят в функцию загрузки аналитики.

Главная особенность Битрикса — композитный кэш. Композит отдаёт посетителям готовую HTML-страницу, поэтому решать, показывать ли баннер, нужно только скриптом в браузере, как в примере выше. После изменений очистите кэш — как это сделать правильно, описано в статье [про кэш в 1С-Битрикс](https://chugunov.pro/kesh-v-bitriks/).

## Как не потерять данные Метрики

Главный вопрос владельцев: если счётчик загружается только после согласия, статистика станет неполной. Это правда — посетители, которые отказались или не нажали ничего, в Метрику не попадут.

### Что можно сделать

- **Сделать окно понятным.** Короткий человеческий текст и равноценные кнопки дают больше согласий, чем пугающие формулировки.
- **Не блокировать сайт окном.** Посетитель должен видеть страницу, иначе уйдёт, не сделав выбора.
- **Учитывать заявки в CRM.** Даже если визит не попал в Метрику, сама заявка дойдёт — источник можно фиксировать по UTM-меткам в скрытых полях формы.
- **Сравнивать не абсолютные цифры, а динамику.** После внедрения согласия базовая линия трафика в Метрике сдвигается; сравнивайте периоды после внедрения между собой.

Проверьте после изменений, что цели срабатывают у тех, кто согласился. Как настроить цели на заявки, разобрано в статье [«Цели в Яндекс Метрике»](https://chugunov.pro/celi-v-yandeks-metrike/).

### Сценарий: сайт услуг с формами

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

### Сценарий: интернет-магазин на 1С-Битрикс

Магазин с композитом, корзиной, Метрикой и рекламными пикселями. Корзина и сессия — необходимые cookie, работают сразу. Метрика и пиксели разнесены по группам «аналитика» и «реклама» с отдельными переключателями в окне настроек. Баннер показывается скриптом, композит не отключается.

## Как проверить, что согласие работает

Внешне окно может выглядеть идеально и при этом ничего не блокировать. Проверка занимает десять минут и не требует специальных сервисов.

### Пошаговая проверка в браузере

1. Откройте сайт в режиме инкогнито, чтобы не было сохранённого выбора.
2. Откройте инструменты разработчика и вкладку «Network» («Сеть»), обновите страницу.
3. В строке фильтра наберите часть адреса счётчика, например mc.yandex. До нажатия кнопки запросов быть не должно.
4. Во вкладке с cookie убедитесь, что аналитических cookie нет — только технические.
5. Нажмите «Только необходимые», обновите страницу. Картина должна остаться прежней, окно — не появляться.
6. Очистите данные сайта, обновите страницу и нажмите «Принять». Запросы к счётчику должны появиться сразу, без перезагрузки.
7. Повторите то же на телефоне: окно не должно перекрывать кнопки и форму.

### Что проверить после каждой доработки

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

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

## Типичные ошибки и чек-лист

### Ошибки

- Окно есть, но счётчики загружаются до нажатия кнопки.
- Кнопка отказа спрятана или отсутствует, хотя сайт использует аналитику.
- Политика cookie скопирована с чужого сайта и не совпадает с реальными сервисами.
- Баннер выводится на сервере, и из-за кэша одним посетителям он не показывается никогда, а другим — на каждой странице.
- Окно на мобильном закрывает кнопку заказа.
- Баннер сдвигает страницу и портит CLS.
- Нет способа изменить выбор после первого нажатия.

### Чек-лист

1. Составлен список cookie и сторонних сервисов сайта.
2. Опубликована политика cookie, ссылка на неё есть в окне и в подвале.
3. Политика конфиденциальности упоминает cookie и ссылается на политику cookie.
4. В окне есть равноценные кнопки согласия и отказа.
5. До согласия в инкогнито нет запросов к счётчикам и рекламным сервисам.
6. После согласия счётчики загружаются, цели срабатывают.
7. Выбор запоминается и меняется по ссылке в подвале.
8. Баннер корректно работает с кэшем и композитом.
9. Окно не перекрывает важные кнопки на телефоне.
10. Тексты согласованы с юристом.

Cookie — часть общей работы сайта с персональными данными. Формы, согласия и политика проверяются вместе; порядок проверки есть в статье [«Сайт и 152-ФЗ»](https://chugunov.pro/sajt-i-152-fz-proverka/).

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

### Обязательно ли уведомление об использовании cookies на сайте?

Если сайт ставит только технические cookie, обычно достаточно упоминания в политике. Если есть аналитика и реклама, большинство юристов рекомендуют окно с выбором. Для конкретного сайта решение принимают с юристом.

### Как сделать cookie на сайте, если я не программист?

На WordPress — установить плагин уведомлений и настроить тексты. На 1С-Битрикс — модуль из Маркетплейса. В обоих случаях проверьте, что счётчики действительно блокируются до согласия, иначе окно работает вхолостую.

### Где взять cookie на сайт код?

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

### Как установить cookies на сайт WordPress?

Cookie сам WordPress ставит автоматически для сессий и комментариев. Если имеется в виду баннер согласия — через плагин или через подключение разметки и скрипта в дочерней теме.

### Какой плагин cookie для WordPress выбрать?

Тот, который умеет блокировать скрипты до согласия, совместим с вашим плагином кэширования, позволяет редактировать все тексты и регулярно обновляется. Популярность в каталоге — не главный критерий.

### Чем политика использования cookies отличается от политики конфиденциальности?

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

### Нужно ли согласие на cookie для Яндекс Метрики?

Метрика ставит аналитические cookie, и данные о визитах вместе с IP-адресом могут рассматриваться как персональные данные. Поэтому многие сайты подключают её только после согласия. Формулировки и подход согласуйте с юристом.

### Не сломает ли баннер кэш сайта?

Не сломает, если решение о показе принимается скриптом в браузере. Проблемы возникают, когда баннер выводят или прячут на сервере — тогда кэшированная страница у всех одинаковая.

### Как дать посетителю изменить выбор?

Добавьте в подвал ссылку «Настройки cookie». По клику скрипт сбрасывает сохранённый выбор и снова показывает окно.

## Итог

Уведомление о cookie — небольшая доработка, но её легко сделать неправильно: окно висит, а счётчики грузятся до согласия, политика не совпадает с реальностью, кэш показывает баннер не тем посетителям. Корректная схема — инвентаризация cookie, отдельная политика, окно с равноценными кнопками и загрузка аналитики только после выбора.

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

Я как частный разработчик настраиваю уведомления и согласие на cookie на WordPress и 1С-Битрикс: баннер, политику, отложенную загрузку Метрики и совместимость с кэшем. Работаю напрямую, без посредников — подробнее на странице [доработки сайтов на WordPress](https://chugunov.pro/uslugi/dorabotka-sajta-wordpress/).

- 10.10.2026

## Связанное на сайте

- Справочник API [Справочник API 1С-Битрикс](https://chugunov.pro/api-bitrix/)
- Справочник API [Справочник API WordPress](https://chugunov.pro/api-wordpress/)

Автор статьи [Чугунов Алексей](https://chugunov.pro/about/) Fullstack-разработчик: 1С-Битрикс, WordPress, PHP
[Обо мне](https://chugunov.pro/about/)

Рубрики блога

- [Продажи](https://chugunov.pro/category/sales/) 16
- [Продвижение](https://chugunov.pro/category/prodvizhenie/) 22
- [Создание сайтов](https://chugunov.pro/category/sozdanie-sajtov/) 75
- [Интересное](https://chugunov.pro/category/interesnoe/) 13

Остались вопросы?

Отправьте сообщение, и я свяжусь с вами в ближайшее время

Или звоните, сразу обсудим детали.

[+7 (915) 016-99-88](tel:79150169988)
