Дата публикации: 30.04.2014 Раздел: Школа рекламиста
Universal Analytics вышел из статуса беты и теперь становится основной версией Google Analytics.
Это событие позволяет использовать его без ряда ограничений, имевших место ранее. Новая версия несет также ряд новых возможностей для отслеживания посетителей сайта и дает возможность сопоставить действия пользователя на сайте и последующее совершение целевых действие в офлайне.
Для этих целей используется Measurement Protocol или Протокол передачи данных. В каких случаях вы можете использовать эту возможность? Приведу пару примеров.
Первый вариант – посетитель приобретает у вас на сайте товар или услугу, при этом выбирая вариант оплаты "безналичный расчет". Мы можем предположить, что процесс покупки по ряду причин может быть и не завершен, поэтому передача в Google Analytics сведений о транзакции после завершения процесса оформления заказа/покупки некорректна. Данные должны быть переданы после фактического поступления оплаты.
Второй вариант – оплата наличными курьеру при доставке товара. Покупка считается завершенной после получения оплаты курьером.
В обоих ситуациях, если мы будем передавать данные о покупке (транзакции) после завершения процесса оформления заказа, мы исказим статистику, т.к. у нас пока нет фактической оплаты. Для исправления ситуации с лишними учтенными платежами придется использовать отрицательные транзакции, что не всегда удобно и не совсем правильно.
Решить обозначенную проблему нам поможет новая возможность, появившаяся в Google Analytics с выходом Universal Analytics, под названием Measurement Protocol.
В чем заключается принцип работы протокола? Все достаточно просто: необходимо отправить специальным образом сформированный запрос на определенный URL.
Первое – это URL, на который должен быть отправлен запрос, должен принимать значение
http://www.google-analytics.com/collect
для незащищенного соединения, и
https://ssl.google-analytics.com/collect
для протокола SSL.
Второе – обязательный набор из 4 параметров:
1. v - версия протокола, в настоящей момент используется значение равное 1;
2. tid - идентификатор кода отслеживания (ресурса) Google Analytics в виде UA-XXXX-Y;
3. cid - анонимный Client-ID;
4. t - тип хита.
Если первый и второй параметр не должны вызвать сложностей, то третий и четвертый требуют уточнений.
Параметр cid – это анонимный client-id или идентификатор клиента. Если посетитель просматривает ваш сайт с помощью браузера, Universal Analytics сохранит значение client-id в cookie, если вам неизвестно значение, используйте любое свое.
Обратите внимание, если вы используете client-id, который получен из cookie файла, переданные данные будут сопоставлены с другими действиями посетителя, если передаете свое значение, то будет просто зафиксирован некоторый хит нового посетителя (операции под одним client-id приписываются одному посетителю). Для иллюстрации сказанного посмотрите на изображение:
Просмотр страницы под номером 1 – это первое посещение сайта, просмотр 2 сгенерирован с помощью Measurement Protocol по клику на кнопке, при этом использовался cid из cookie установленного в посещении номер 1. У нас по отчету на сайте будет 1 посетитель.
Просмотр 3, также как и просмотр 2, сгенерирован при клике на кнопку, при этом в качестве cid передано значение 12345, что приводит к появлению на сайте второго посетителя. У нас по отчету уже 2 посетителя. Просмотр 4 полностью аналогичен просмотру 2. Т.е. действие посетителя номер 1, который ранее осуществил просмотры 1 и 2.
Вернемся к параметрам, следующий параметр t – это тип хита. Он может принимать ограниченный круг значений –`pageview`, `appview`, `event`, `transaction`, `item`, `social`, `exception`, `timing`. Наиболее часто используемые значения:
pageview - просмотр страницы;
event - событие;
transaction - транзакция;
item - элемент транзакции.
Уже сейчас у вас есть возможность передачи в Universal Analytics данных с помощью Measurement Protocol. Но для того чтобы нам получить в отчетах достоверную и полную информацию, необходимо выполнить еще два действия.
1. Получить client-id посетителя сайта и сохранить его в CRM вместе с данными о заказе (сопоставить активность пользователя на сайте и его офлайн действия).
2. Добавить к запросу дополнительные параметры, позволяющие работать нам с передаваемыми данными в отчетах.
Получить client-id можно из cookie Universal Analytics:
Вы можете самостоятельно, либо с помощью разработчиков получить нужное значение. Я в своей деятельности пользуюсь следующим кодом на языке PHP (автор Matt Clarke):
<?php
/*
* Name: Universal Analytics Cookie Parser Class
* Description: Parses the new format Universal Analytics cookie.
Что касается дополнительных параметров, их достаточно много. Полный список доступен в официальной документации Google Analytics.
Рассмотрим некоторые из параметров, которые относятся к ранее обозначенным типам хитов.
dh - доменное имя сайта;
dp - адрес страницы относительно доменного имени сайта;
dt - заголовок страницы;
ec - категория события;
ea - действие по событию;
el - ярлык события;
ti - идентификатор транзакции;
ta - название филиала или магазина;
tr - общая сумма транзакции;
in - название товара;
ip - стоимость товара;
iv - категория товара.
Теперь, когда мы имеем все необходимое для использования Measurement Protocol (протокола передачи данных), можно попробовать применить на практике приобретенные знания. Мы с вами воспользуемся всеми типами хитов, которые были названы ранее. Я буду демонстрировать передачу данных, отправляя запросы с помощью JQuery.
Отправка данных о просмотре страницы:
$(`#buttonId`).click(function(){
$.post(
"http://www.google-analytics.com/collect",
{
v: `1`,
tid: `UA-xxxxx-1`,
cid: `12xx916x95.13x6127xx4`,
t: `pageview`,
dh: `test.prometriki.ru`,
dp: `/my-test-page`,
dt: `Это проверка работы!`
},
onAjaxSuccess
)
});
Отправка данных о событии:
$(`#buttonId`).click(function(){
$.post(
"http://www.google-analytics.com/collect",
{
v: `1`,
tid: `UA-xxxxx-1`,
cid: `12xx916x95.13x6127xx4`,
t: `event`,
ec: `Проверка события`,
ea: `Виртуальное`,
el: `Получилось`
},
onAjaxSuccess
)
});
Отправка данных о покупке:
$(`#buttonId`).click(function(){
$.post(
"http://www.google-analytics.com/collect",
{
v: `1`,
tid: `UA-xxxxx-1`,
cid: `12xx916x95.13x6127xx4`,
t: `transaction`,
ti: `44473`,
ta: `SITE`,
tr: `19990.00`
},
onAjaxSuccess
)
$.post(
"http://www.google-analytics.com/collect",
{
v: `1`,
tid: `UA-xxxxx-1`,
cid: `12xx916x95.13x6127xx4`,
t: `item`,
ti: `44473`,
`in`: `Название товара`,
ip: `19990.00`,
iv: `Категория товара`
},
onAjaxSuccess
)
});
Обратите внимание, что для отправки данных о покупке необходимо сначала передать данные о транзакции, а затем о каждом товаре.
В какой момент вам необходимо передавать данные с помощью Measurement Protocol? Для примеров, которые я привел в самом начале публикации, моментом передачи данных может быть перевод заявки в CRM из статуса "заказ доставляется" в "заказ оплачен". Разработчикам, при наличии необходимых данных, не составит особого труда отправить сформированный запрос по определенному действию или событию на сайте.
Как видите, нет ничего сложного в использовании этого функционала Universal Analytics. Используйте его для сбора достоверных данных и оптимизации вашего бизнеса.
Для получения полной и официальной информации обратитесь к документации.
В заключении приведу пример ролика, который демонстрирует фиксацию событий и передачу сведений в Universal Analytics для датчика движения:
Иван Иванов, ведущий веб-аналитик WebProfiters, seonews.ru