Google Analytics: как мы это делаем

6832566ec5bd4603a92c8a03b213264a.jpgУже четыре года в наших торговых точках работают электронные каталоги. Каталоги, предоставляющие фактически функционал интернет-магазина, дают до 20% оборотов «Связного». Мы попросили нашего эксперта рассказать о «подводных камнях» настройки аналитики.

Допустим, вы сделали одностраничный сайт на wix.com (или любом другом маловменяемом, но очень красивом движке, или вручную на ajax’е, flash’е и т.п.), формально расположили код Google Analytics (GA) так, как описано в технической документации Google для новичков … и внезапно потеряли чуть более, чем всю информацию о перемещении пользователя между вашими «виртуальными» страницами.

У нас есть три варианта решения вопроса.

Вариант первый и простой: сайты-визиткиНа небольшом сайте достаточно будет отслеживать клики по важным и интересным кнопкам с помощью вызова _trackEvent ()_trackEvent (category, action, opt_label, opt_value, opt_noninteraction)

А затем в веб-интерфейсе GA настроить цели. Например, основная цель вашего сайта-визитки — создание лида: заполнение формы на сайте. Настройте цели на микроконверсии по пути к заполнению формы, а затем дашборд goal flow, этого будет достаточно чтобы просматривать конверсию на простейшем одностраничном сайте:

— вы видите весь поток, входящий на сайт, и его источники благодаря GA ('send', 'pageview'); — вы видите отказы и события, происходящие на сайте (только те, которые отслеживаются с помощью trackEvent)— вы видите поток микро-конверсий в макро-конверсии, и, соответственно, можете пофиксить те элементы этого потока, на которых отваливается наибольшее количество посетителей.

Вариант второй: сайты уровня интернет-магазина Как правило, по дефолту при исполнении функции имитирующей переход на новую страницу, к вашему url добавляется в конце через #! Пример возьмём с самой обычной страницы: http://www.kutuzov-photo.com/ — это лендинг с чистым url«омhttp://www.kutuzov-photo.com/#! gallery/c1c9t — это виртуальная страница просмотра галереиhttp://www.kutuzov-photo.com/#! contact/c16fm — или вот, например, контакты

По умолчанию Google Analytics запустит trackpageview для mysite.com/, но не для mysite.com/#! whatever. В этом случае мы увидим только просмотры главной страницы, но не увидим, сколько людей смотрело whatever или вообще нажало кнопку whatever. Чтобы это исправить, устанавливаем код виртуального просмотра страницы:

Link on Page

Этот кусочек кода отправит виртуальный просмотр страницы для вашей возникшей виртуальной страницы. Но это сработает если люди всегда приходят на вашу главную страницу, а с нее расходятся по сайту, и другие «страницы» не являются лэндингами. Если все-таки являются — последует искажение информации.

Вариант третий: для сложного сайта со многими лэндингами Теперь допустим, что страница #! whatever становится лэндингом — например, туда ведет ссылка из вашей рассылки или из органического трафика. Естественно, поскольку не произошло клика, просмотр (да и вход) будет приписан главной.Неплохим решением будет заставить Google Analytics считывать хэштег и всё что следует за ним. Для этого используем свойство location.hash в коде GA.

_gaq.push (['_trackPageview', location.pathname + location.search + location.hash]);

Теперь GA видит каждую нашу виртуальную страницу как отдельную, и механика сбора данных становится похожей на стандартную.

Полный код:

Асинхронный код отслеживания:

var _gaq = _gaq || []; _gaq.push (['_setAccount', 'UA-xxxxxx-X']); _gaq.push (['_trackPageview', location.pathname + location.search + location.hash]); (function () { var ga = document.createElement ('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName ('script')[0]; s.parentNode.insertBefore (ga, s); })(); Для старичков, не перешедших на ga.js:

var pageTracker = _gat._getTracker («UA-XXXXX-X»); pageTracker._trackPageview (location.pathname + location.search + location.hash);

© Habrahabr.ru