---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://yandex.com.tr/support/metrica/en/code/install-counter-csp.md
  - https://yandex.com.tr/support/metrica/es/code/install-counter-csp.md
  - https://yandex.com.tr/support/metrica/pt/code/install-counter-csp.md
  - https://yandex.com.tr/support/metrica/ru/code/install-counter-csp.md
  - https://yandex.com.tr/support/metrica/tr/code/install-counter-csp.md
title: Установка счетчика на сайт с CSP
description: Как установить счетчик на сайт с CSP.
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/support/metrica/ru/llms.txt


# Установка счетчика на сайт с CSP

Код счетчика, генерируемый Яндекс Метрикой, предназначен для размещения внутри HTML-кода страниц (inline). На сайтах, которые используют технологию [Content Security Policy](https://www.w3.org/TR/CSP/), такой код будет исполняться только в том случае, если предприняты специальные действия. А именно, необходимо передавать браузеру в HTTP-заголовке разрешение на обработку данных: директивы [src-script](https://www.w3.org/TR/CSP/#directive-script-src) с атрибутом [nonce](https://www.w3.org/TR/CSP/#framework-directive-source-list) (это требует подписывания содержимого элемента `script`) и [img-src](https://www.w3.org/TR/CSP/#directive-img-src) для обработки содержимого элемента `noscript`.

Кроме этого, Яндекс Метрика допускает другой способ подключения [кода счетчика](*кода-счетчика): вы можете разместить в HTML-коде страниц только содержимое элемента `noscript`, а содержимое элемента `script` вынести во [внешний скрипт](#separate-code-file) (например, в JS-файл).

При выборе любого способа необходимо добавить в HTTP-заголовок разрешение на обращение к Яндекс Метрике.

{% cut "Общий список адресов" %} {#urls}

```
https://mc.yandex.ru
https://mc.yandex.az
https://mc.yandex.by
https://mc.yandex.co.il
https://mc.yandex.com
https://mc.yandex.com.am
https://mc.yandex.com.ge
https://mc.yandex.com.tr
https://mc.yandex.ee
https://mc.yandex.fr
https://mc.yandex.kg
https://mc.yandex.kz
https://mc.yandex.lt
https://mc.yandex.lv
https://mc.yandex.md
https://mc.yandex.tj
https://mc.yandex.tm
https://mc.yandex.uz
https://mc.webvisor.com
https://mc.webvisor.org
https://yastatic.net
wss://mc.yandex.ru
wss://mc.yandex.az
wss://mc.yandex.by
wss://mc.yandex.co.il
wss://mc.yandex.com
wss://mc.yandex.com.am
wss://mc.yandex.com.ge
wss://mc.yandex.com.tr
wss://mc.yandex.ee
wss://mc.yandex.fr
wss://mc.yandex.kg
wss://mc.yandex.kz
wss://mc.yandex.lt
wss://mc.yandex.lv
wss://mc.yandex.md
wss://mc.yandex.tj
wss://mc.yandex.tm
wss://mc.yandex.uz
wss://mc.webvisor.com
wss://mc.webvisor.org
```

{% endcut %}

{% cut "Адреса для frame-ancestors" %} {#frame-ancestors-urls}

```
metrika.yandex.ru
analytics.yandex.by
analytics.yandex.com
analytics.yandex.com.tr
analytics.yandex.kz
analytics.yandex.ru
metr.yandex.by
metr.yandex.com
metr.yandex.com.tr
metr.yandex.kz
metr.yandex.ru
metrica.ya.ru
metrica.yandex
metrica.yandex.by
metrica.yandex.com
metrica.yandex.com.tr
metrica.yandex.kz
metrica.yandex.ru
metrika.ya.ru
metrika.yandex
metrika.yandex.by
metrika.yandex.com
metrika.yandex.com.tr
metrika.yandex.kz
metrika.yandex.uz
```

{% endcut %}

## Размещение кода счетчика в HTML-коде страниц сайта {#nonce}

{% note alert %}

В примерах прописаны не все адреса, необходимые для работы Метрики.

- [Общий список адресов](#urls)
- [Адреса для frame-ancestors](#frame-ancestors-urls)

{% endnote %}

Если вы используете этот способ, HTTP-заголовок `Content-Security-Policy` или `Content-Security-Policy-Report-Only` должен содержать директивы:

- [script-src](https://www.w3.org/TR/CSP/#directive-script-src) с атрибутом [nonce](https://www.w3.org/TR/CSP/#framework-directive-source-list). Этот атрибут должен содержать строковое значение в виде случайной последовательности символов (латинские буквы и цифры). Это значение должно быть сформировано на сервере случайным образом отдельно при каждом запросе.
    
    ```no-highlight
    Content-Security-Policy: script-src 'nonce-<последовательность символов>';
    ```
    
    Эту же последовательность символов должен содержать атрибут `nonce` в элементе `script` кода счетчика на страницах сайта.
    
    ```javascript
    ...
    <!-- Yandex Metrica tag -->
    
```

1. В интерфейсе Яндекс Метрики перейдите в раздел **Настройка** (вкладка **Счетчик**) и скопируйте из поля содержимое элемента `script`.
1. <!-- source: ru/_includes/code/separate-code-file/id-separate-code-file/7.md -->
   Добавьте этот код в файл `metrika.js`.


   {% cut "Пример содержимого файла" %}


   ```javascript
   (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||
   []).push(arguments)};
       m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)
   [0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
       (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym")
       ym(XXXXXXXX, "init", {
           id:XXXXXXXX,
           clickmap:true,
           trackLinks:true,
           accurateTrackBounce:true
       });
   ```

   Где `XXXXXXXX` — номер счетчика Яндекс Метрики.


   {% endcut %}
   <!-- endsource: ru/_includes/code/separate-code-file/id-separate-code-file/7.md -->
    
1. <!-- source: ru/_includes/code/separate-code-file/id-separate-code-file/4.md -->
   Чтобы счетчик собирал данные о посетителях, у которых отключен JavaScript, добавьте в HTML-код страниц сайта содержимое элемента `noscript`:

   ```
   <noscript><div><img src="https://mc.yandex.ru/watch/XXXXXXXX" style="position:absolute; left:-9999px;" alt="" /></div></noscript> 
   ```
   <!-- endsource: ru/_includes/code/separate-code-file/id-separate-code-file/4.md -->
    
<!-- source: ru/_includes/buttons/chat-button.md -->
[Написать в чат](https://yandex.com.tr/chat/#/user/036e6a02-3620-9cdc-4c5e-a34667a7379e?utm_source=spravka){.button}

<!-- source: ru/_includes/styles/href-to-button.md -->

<!-- endsource: ru/_includes/styles/href-to-button.md -->
<!-- endsource: ru/_includes/buttons/chat-button.md -->

<!-- source: ru/_includes/code/texing-button.md -->
<div class="cut-button">

{% cut "Написать письмо" %}

<!-- source: ru/_includes/popup/id-qanda/check1.md -->
Если вам не удалось [самостоятельно проверить работу счетчика](https://yandex.com.tr/support/metrica/ru/general/check-counter.md), воспользуйтесь рекомендациями ниже.
<!-- endsource: ru/_includes/popup/id-qanda/check1.md -->

{% list tabs radio %}

- Данные в консоли не отправляются

  {% include [qanda-check2-2](../_includes/popup/id-qanda/check2-2.md) %}

  {% cut "Рекомендации не помогли" %}


  <div style="padding: 15px;
         margin: 10px 0;
         background: #FFFFFF;
         border-radius: 10px;
         border: 1px solid var(--g-color-line-generic);">
    <iframe style="background: #FFFFFF;"
            height="700"
            width="100%"
            frameborder="0"
            src="https://forms.yandex.com.tr/surveys/1706/?&theme=Dannye v konsoli ne otpravlyayutsya&iframe=1&lang=tr">
    </iframe>
  </div>

  {% endcut %}

- Данные в консоли есть, но отчеты не отображаются

  <!-- source: ru/_includes/popup/id-qanda/check2-3.md -->
  Это значит, что информация отправляется Яндекс Метрике. При этом данные могут не отображаться в отчетах по следующим причинам:
  <!-- endsource: ru/_includes/popup/id-qanda/check2-3.md -->

  <!-- source: ru/_includes/popup/id-qanda/check2-4.md -->
  - Данные отправляются на счетчик с другим номером.
  - В настройках счетчика, на вкладке **Фильтры**, указаны слишком жесткие фильтры. Удалите ненужные фильтры.
  - В настройках счетчика, на вкладке **Фильтры**, задан фильтр **Не учитывать мои визиты**. Это значит, что счетчик не учитывает ваши посещения — попробуйте перейти на сайт в режиме браузера «инкогнито».
  <!-- endsource: ru/_includes/popup/id-qanda/check2-4.md --> 

  {% cut "Рекомендации не помогли" %}


  <div style="padding: 15px;
           margin: 10px 0;
           background: #FFFFFF;
           border-radius: 10px;
           border: 1px solid var(--g-color-line-generic);">
    <iframe style="background: #FFFFFF;"
              height="700"
              width="100%"
              frameborder="0"
              src="https://forms.yandex.com.tr/surveys/1706/?&theme=Dannye v konsoli est, no otchety ne otobrazhayutsya&iframe=1&lang=tr">
    </iframe>
  </div>

  {% endcut %}

{% endlist %}

{% endcut %}

</div>

<!-- source: ru/_includes/styles/cut-button.md -->

<!-- endsource: ru/_includes/styles/cut-button.md -->
<!-- endsource: ru/_includes/code/texing-button.md -->

<!-- source: ru/_includes/footer-links.md -->
- - -

<div class="borderless-table">

#|
||
Полезные ссылки

- [Демосчетчик](https://metrica.yandex.com.tr/r/dashboard?)
- [Добавить счетчик](https://metrica.yandex.com.tr/add/)
- [Бесплатная настройка счетчика](https://yandex.com.tr/promo/freeservice/metrica?utm_source=help_metrica_tr&utm_medium=cpc&utm_campaign=1)
- [API Яндекс Метрики](https://tech.yandex.com.tr/metrika/)
- [Предложить идею](https://yandex.com.tr/support/metrica/troubleshooting/idea.html)
- [Обсудить в Telegram](https://t.me/yandexmetrika)
|
Онлайн-обучение

- [Получить сертификат по Яндекс Метрике](https://yandex.ru/adv/expert/exam/metrika/?utm_source=metrika_help&utm_medium=web&utm_campaign=static&utm_content=useful_links)


- [Пройти обучающий курс](https://yandex.com/adv/edu/online/metrika?utm_source=metrika_help&utm_medium=web&utm_campaign=static&utm_content=useful_links)

||
|#

</div>

<!-- source: ru/_includes/styles/table-style.md -->

<!-- endsource: ru/_includes/styles/table-style.md -->
<!-- endsource: ru/_includes/footer-links.md -->

<!-- source: ru/_includes/styles/cut-button.md -->

<!-- endsource: ru/_includes/styles/cut-button.md -->

[*кода-счетчика]: Код счетчика состоит из двух частей: JavaScript-кода, размещенного в элементе `script` и HTML-кода, включенного в элемент `noscript`.
{% included (../_includes/popup/id-qanda/check2-2.md) %}
   Это может происходить по нескольким причинам:
   - Счетчик установлен неправильно. Например, CMS внесла изменения в код счетчика. Следует переустановить счетчик или обратиться в службу поддержки вашей CMS.
   - Работу счетчика Яндекс Метрики на сайте блокируют неработающие скрипты. Проверить это можно в консоли браузера.


{% endincluded %}