Передача IP-адреса в Яндекс.Метрику

21 декабря, 2019

Два способа передачи IP-адреса посетителя вашего сайта в Яндекс.Метрику в качестве параметра визита - напрямую через код сайта и с помощью Google Tag Manager.

Как вы уже знаете, IP-адрес для инструментов веб-аналитики и рекламных сервисов часто трактуют неоднозначно. То он считается метрикой, которая позволяет идентифицировать пользователя, то Google и Яндекс дают возможность исключать в настройках рекламных кампаний нежелательные IP-адреса (например, тех, кто скликивает рекламу, роботов, сотрудников компании и т.д.).

А в сообществе интернет-маркетологов по-прежнему идут дискуссии на тему: стоит ли отслеживать IP-адреса пользователей и передавать их в инструменты аналитики? Ответ простой: каждый владелец сайта решает для себя сам.

Для выполнения требований по защите личных данных пользователей, включая политику конфиденциальности сторонних ресурсов и государственные законы, в Яндекс.Метрике и Google Analytics предусмотрен функционал обработки и хранения IP-адресов. В Яндексе это называется маскировкой, в Google - анонимизацией. Подробнее читайте по ссылкам ниже:

Ранее в своем блоге я писал о том, как передавать IP-адреса в Google Analytics напрямую (программно) и через GTM:

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

Передача IP-адреса в Яндекс.Метрику

Группировка по IP-адресу

В результате вы увидите зашифрованную последнюю часть:

Передача IP-адреса в Яндекс.Метрику

Отчет Яндекс.Метрики с группировкой по IP-адресу

Этого нам недостаточно. Взяв за основу информацию из этих двух материалов, давайте передадим данные по IP-адресу в Яндекс.Метрику. Сделать это можно с помощью параметров визитов.

Параметры визитов – это данные, которые могут быть привязаны к визиту пользователя. Например, IP-адрес, информация, которую человек отправил с оформленной заявкой, данные по звонку, № промокода, который был показан посетителю когда он зашел на сайт и т.д. В одном визите в Яндекс.Метрику можно передавать до 1000 параметров.

Параметры визитов можно передавать при инициализации счетчика или в любой момент времени. При инициализации счетчика параметры визита указываются в параметре params в самом счетчики Метрики и передаются в виде JavaScript-объекта или массива.

Рассмотрим 2 способа передачи IP-адреса в Яндекс.Метрику:

  1. напрямую (через код сайта);
  2. с помощью Google Tag Manager.

Передача IP-адреса в Яндекс.Метрику через код сайта

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

Передача IP-адреса в Яндекс.Метрику

Две строчки кода для Яндекс.Метрики

Сохраняете изменения и загружаете на сервер. Проверить корректность передачи данных можно с помощью расширения для Google Chrome Yandex Metrica Debugger.

Передача IP-адреса в Яндекс.Метрику

Проверка определения IP с помощью Yandex Metrica Debugger

Если после двоеточия вы видите IP-адрес, то это значит, что конструкция написана верно. Чтобы удостовериться в правильности определения IP вы можете перейти на любой из сервисов, например whoer.net/ru, и сравнить с теми данными, которые поступят в Яндекс.Метрику.

Через минут 15-20 в отчете Параметры визитов отобразиться статистика по нашему IP-адресу:

Передача IP-адреса в Яндекс.Метрику

IP - параметр визита в Яндекс.Метрике

Если сопоставить со стандартной группировкой в отчете Метрики, то тоже все корректно:

Передача IP-адреса в Яндекс.Метрику

IP-адрес и наш Параметр визита

Теперь мы можем исключать недоброжелательные IP-адреса из статистики своего счетчика, заблокировать показ рекламных объявлений для тех, кто ее скликивает, а также получить более точную информацию о месторасположении пользователя и характеристиках его интернет-соединения.

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

где

  • XXXXXX - номер счетчика Яндекс.Метрики;
  • parameters – обязательный параметр, можно передавать в виде объекта или массива.

Передадим его в таком в виде с помощью второго способа.

Передача IP-адреса в Яндекс.Метрику с помощью Google Tag Manager

Для этого воспользуемся конструкцией из статьи про определения IP-адреса для Google Analytics. Вставляем код ниже в Пользовательский тег HTML:

Данный фрагмент JS-кода определяет IP-адрес каждого пользователя через ipify.org (является бесплатным API-интерфейсом IP-адресов), а затем помещает его в уровень данных (dataLayer) для чтения в GTM. Чтобы протестировать и определить свой IP, просто перейдите по ссылке: https://api.ipify.org?format=jsonp&callback=getIP

В GTM это будет так:

Передача IP-адреса в Яндекс.Метрику

Пользовательский тег HTML

Триггер - All Pages, но только один раз за сеанс, чтобы избежать многократного обращения к API-интерфейсу ipify и потенциального сбоя множества обращений. Для этого мы в качестве условия активации триггера можем выбрать Некоторые просмотры страницы – Referrer – не содержит – домен вашего сайта

Передача IP-адреса в Яндекс.Метрику

Условие активации триггера

Минус такого способа в том, что если API ipify.org перестанет работать, то данные собираться не будут. Если вы хотите реализовать передачу IP не через JavaScript, а PHP, вы можете в <head> кода страницы вашего сайта (напрямую!) вставить следующий фрагмент:

Теперь нам нужно создать  триггер типа Пользовательское событие с именем ipEvent и переменную типа Переменная уровня данных с именем ipAddress.

Передача IP-адреса в Яндекс.Метрику

Пользовательское событие и переменная уровня данных

Все, что осталось сделать - добавить тег с передачей параметра визита в Яндекс.Метрику. Для этого создаем Пользовательский тег HTML с триггером активации на наше пользовательское событие ipEvent:

В GTM это выглядит так:

Передача IP-адреса в Яндекс.Метрику

Тег для Яндекс.Метрики

Вместо params вы можете задать другое значение. Сохраняем настройки. Проверить корректность срабатывания триггеров и тегов можно также через режим отладки GTM.

Передача IP-адреса в Яндекс.Метрику

Проверка настроек в режиме отладки

Через некоторое время в Яндекс.Метрике в отчете Параметры визитов появится наше значение:

Передача IP-адреса в Яндекс.Метрику

IP-адрес в отчете Яндекс.Метрики

Получайте бесплатные уроки и фишки

По контекстной, таргетированной рекламе и аналитике