Параметры визитов

Совет. Для работы с JavaScript API необходимы навыки работы с HTML и JavaScript. Если вы не обладаете такими навыками, обратитесь к разработчику или вебмастеру вашего сайта.

Большинство данных о посещениях собирается счетчиком Яндекс.Метрики автоматически. Однако, часто возникает необходимость дополнения собранных данных собственными. Например, интерес может представлять статистика по заказам определенных товаров или информация о действиях авторизованных пользователей.

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

Параметры визитов передаются в хранилище счетчика с помощью JavaScript API. Отправка данных может производиться либо во время инициализации счетчика, либо в произвольный момент времени до истечения тайм-аута визита.

При инициализации счетчика параметры визита указываются в параметре params.

Для передачи параметров визита во время просмотра посетителем сайта используется метод params либо необязательный аргумент методов extLink, file, hit, reachGoal.

Параметры визитов передаются в виде JavaScript-объекта или массива.

Примечание. Количество параметров визитов, которые могут быть показаны в отчетах Метрики, не превышает 10 уровней вложенности.
var yaParams = {
    x: 10,
    y: "неавторизованный пользователь"
}

var yaCounterXXXXXX = new Ya.Metrika({id: XXXXXX, params: window.yaParams||{}});

Обработка переданных данных

Переданные Яндекс.Метрике в виде JavaScript-объектов данные обрабатываются следующим образом.

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

  • объект — для каждого ключа объекта создается ветвь дерева, и для каждого значения алгоритм вызывается рекурсивно;
  • строка — вычисляется количество случаев, когда встречается каждое различное значение строки;
  • число — вычисляется суммарное и среднее значение всех чисел;
  • массив — создается ветвь дерева [Параметры], вычисляется количество случаев, когда значение является массивом, и алгоритм вызывается рекурсивно для каждого элемента массива;
  • true, false или null — вычисляется количество случаев, когда встречается каждое такое значение.

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

Внимание. Часть названий полей зарезервирована для передачи данных электронной коммерции. Не используйте эти названия для передачи параметров визитов. Не передавайте свои параметры с зарезервированными.

Пример. АВ-тестирование

Допустим, необходимо определить, как цвет кнопки Купить влияет на конверсию по цели «Переход в корзину».

Если пользователю показывается красная кнопка, определяем параметр:

var yaParams = {ab_test: "красная кнопка"};

Если пользователю показывается зеленая кнопка, определяем параметр:

var yaParams = {ab_test: "зеленая кнопка"};

Передаем этот параметр любым удобным способом. Например, при инициализации счетчика на страницах с товаром или с помощью метода reachGoal, вызываемого при нажатии кнопки Купить.

После этого в интерфейсе Яндекс.Метрики появится возможность использовать значения параметра ab_test для выборки соответствующих данных.

Пример. Передача иерархической структуры данных

Допустим, необходимо передать данные и отобразить их в отчете в древовидном списке.

var yaParams = {
    "level1":{"level2":["level3_1","level3_2"]}}
...