Measurement Protocol или о том, как из загружать данные в Google Analytics
Universal Analytics включает в себя такую интересную возможность, как — Measurement Protocol, который позволяет загружать в GA данные о просмотрах страниц, событиях, социальных взаимодействиях, времени просмотра, и самое интересное — электронной торговле.

То есть, мы можем загружать данные о проведенных транзакциях прямо из CRM в GA.
На данный момент, как правило, транзакцией, в электронной торговле, считается факт нажатия кнопки «Оформить заказ», на последнем шаге корзины. Что, в целом правильно, но по факту, мы не знаем, была ли оплата по этому товару. Поэтому, данные в Google Analytics и данные в системе учета заказов могут сильно отличаться.

Используя же Measurement Protocol, мы можем видеть чистые данные по оплатам, что будет удобно для подсчета точных маржи и ROI, и, в том числе, сравнивать количество реальных транзакций после нажатия «Оформить заказ», что тоже не мало важно.

Для настройки этого функционала обязательно нужен Universal Analytics, со старым счетчиком не получится. Тем более, Google запустил инструмент миграции с GA на UA.

Далее, для загрузки данные в UA нужны, как минимум два параметра:

  • Tracking ID / Web property / Property ID;
  • Anonymous Client ID.
Если с первым вопросов нет, его можно посмотреть в интерфейсе, то со вторым сложнее, но есть способ, этот параметр можно брать из cookes, которые сохраняет UA пользователю.

Используя этот код (спасибо Matt Clarke), мы получаем cid (Anonymous Client ID) пользователя, который передаем в систему учета заказов, вместе с информацией о товаре:

<?php
/*
* Name: Universal Analytics Cookie Parser Class
* Description: Parses the new format Universal Analytics cookie.
* Developer: Matt Clarke
* Date: January 10, 2013
*/
class UniversalAnalyticsCookieParser{
// Parse the _ga cookie if found
function __construct() {
if( isset($_COOKIE["_ga"]) ){
echo $this->getCid();
}
}
// Handle the parsing of the _ga cookie
public function parseCookie()
{
list($version,$domainDepth, $cid1, $cid2) = split('[\.]', $_COOKIE["_ga"],4);
return array('version' => $version, 'domainDepth' => $domainDepth, 'cid' => $cid1.'.'.$cid2);
}
// Get cid
public function getCid()
{
$contents = $this->parseCookie();
return $contents['cid'];
}
}
?>
Пол дела сделано, теперь, после того, как клиент оплатил заказ, мы можем, используя данные о пользователе и транзакции передать эту информацию в Google Analytics, т.е. делаем обычный HTTP запрос, типа такого:

http://www.google-analytics.com/collect?v=1&tid=UA-XXXX-Y&cid=86335049.1370106123&t=pageview&dp=%2Fhome.

Но, конечно с значениями транзакции и товара, который был куплен. Описание значений, в справке.
Made on
Tilda