Команда Яндекс.Метрики продолжает рассказ о работе с параметрами посетителей: прошлая статья была посвящена передаче данных онлайн, а в этой статье рассказывается про офлайн-загрузку. Этот способ позволяет добавить в отчеты те данные, которые уже есть в базе: например, доход на клиента или уровень лояльности.
Чтобы Метрика могла определить, какому посетителю записать эти новые атрибуты, необходимо связать данные из имеющейся базы и данные в Метрике, присвоив им общий идентификатор. Для этого нужно либо передать в Метрику свои собственные идентификаторы клиентов (UserID), либо внести в свою CRM уникальные номера посетителей из Метрики (ClientID).
Связка по UserID: при наличии собственных идентификаторов клиентов
Этап 1. Учим Метрику узнавать клиентов
Чтобы начать передавать в Метрику собственные идентификаторы авторизованных посетителей (UserID), нужно добавить на сайт код, который будет подставлять эти идентификаторы в метод setUserID:
yaCounterXXXXXX.setUserID()
Идентификаторы UserID не будут показываться в отчетах: они сохранятся в базе данных Метрики в качестве ключей, которые позволят сопоставить посетителей в Метрике и клиентов в CRM. Каждый раз, когда авторизованный посетитель будет заходить на сайт, Метрика будет получать команду «запомнить» этого посетителя под указанным UserID.
Для всех зарегистрированных посетителей эти связки будут созданы после того, как каждый из них хотя бы раз зайдет на сайт под своим логином. На это может потребоваться некоторое время: все зависит от того, как часто клиенты обычно возвращаются на сайт.
UserID можно передавать не только для авторизованных посетителей. Уникальный идентификатор также можно забирать из «меченой» ссылки, которую вы отправляли вашим клиентам по почте, или из реферера соцсетей. Также в качестве UserID подойдет номер дисконтной карты или промо-код, который посетители вводят на сайте.
Этап 2. Загрузка данных
После передачи в Метрику достаточного количества UserID, нужно подготовить файл с теми атрибутами клиентов, которых необходимо добавить в отчеты. Это таблица в формате csv с тремя столбцами: в первом — UserID, который послужит ключом для связки данных в файле и в Метрике, во втором — название параметра, а в третьем — его значение.
Вот как может выглядеть этот файл:
Чтобы отправить его в Метрику, нужно зайти во вкладку «Загрузка данных» в настройках счетчика и выбрать тип файла — «User_id»:
Когда файл будет обработан, в интерфейсе появится уведомление:
Статус «Выполнено (80% привязки)» означает, что переданные UserID нашлись в Метрике для 80% клиентов из файла. Чаще всего данные привязываются не полностью из-за того, что не все клиенты успели побывать на сайте — а значит, их UserID еще не были переданы, и Метрика не знает, каким посетителям записывать атрибуты из таблицы. Поэтому параметры будут добавлены только для 80% «привязанных» посетителей — об этом полезно помнить, интерпретируя данные в отчетах.
Всего Метрика может хранить до 1 000 параметров одного посетителя.
Связка по ClientID: если своих идентификаторов посетителей нет
ClientID — это номер, который Метрика присваивает каждому посетителю. Его можно использовать в качестве ключа для объединения данных, если на сайте нет собственной системы идентификаторов — или же если клиенты регистрируются редко, а заказы обычно делают по телефону.
Чтобы забирать себе ClientID из Метрики, необходимо добавить на сайт код, который будет вызывать метод getClientID и записывать полученное значение в вашу CRM:
<ClientID> = yaCounterXXXXXX.getClientID()
Через некоторое время — когда достаточное количество посетителей побывает на сайте, и их ClientID будет получен – можно будет сформировать csv-таблицу с атрибутами клиентов. Она будет выглядеть так же, как в примере с UserID, только на этот раз в первом столбце в качестве ключа для склейки посетителей будет использоваться ClientID. И при загрузке таблицы в Метрику также нужно будет выбрать тип файла «Сlient_ID».
Как обновить или удалить загруженные данные
Чтобы в отчетах начали показываться новые значения параметров, нужно просто загрузить актуальный файл. А если необходимо удалить данные, нужно в том же меню для загрузки данных выбрать вариант «Удалить» — и передать файл с пустыми значениями параметров:
Загрузка такого файла не обнуляет значения параметров, а именно удаляет их. То есть если вы когда-то передали количество покупок на клиента, а затем загрузили пустой файл, параметр offline-purchase просто пропадёт из отчётов – а не станет равным нулю.
В API Метрики можно настроить автоматическую загрузку файла с параметрами посетителей.
Что лучше выбрать — онлайн или офлайн передачу параметров посетителей?
С помощью метода userParams имеет смысл отправлять те данные, которые возникают только в онлайне — и при этом их не нужно хранить в своей базе. Этот способ также подойдет интернет-изданиям или блогам, у которых нет CRM.
Другое важное отличие — скорость обновления данных в отчетах. Когда будет налажена работа с методами setUserID или getClientID и с тех пор большинство клиентов хотя бы раз зайдут на сайт, новые данные в отчетах будут появляться сразу после загрузки актуального файла — а не после того, как клиент вернется на сайт.
Ответы на другие частые вопросы по обоим способам работы с параметрами посетителей специалисты Яндекс.Метрики собрали в отдельной статье.