Уже не первый раз сталкиваюсь на практике с проблемой установки кода Google Analytics на субдомены. Три года назад тут уже был пост, но судя по всему пора обновить и расширить гайд.
Может быть Вы даже не знаете, что субдомены у Вас есть. Поэтому для начала выясним, что же это такое. Как говорит нам Википедия:
Система DNS обладает древовидной иерархической системой, в которой каждая ветвь дерева является доменным именем. Поддомен — домен, являющийся частью домена более высокого уровня. Единственные домены, не являющиеся также поддоменами — корневые домены. Например, «mail.example.com» и «calendar.example.com» являются поддоменами «example.com», который в свою очередь является поддоменом домена верхнего уровня .com.
Понятие «поддомен» выражает относительную, а не абсолютную зависимость: например, «wikipedia.org» является поддоменом .org, а «en.wikipedia.org» — поддоменом «wikipedia.org». Максимальное количество уровней поддоменов — 127, и каждый из них может содержать 63 символа, пока общая длина доменного имени не достигнет длины в 255 символов.
А теперь проще =) Если у Вас есть основной сайт mysite.com продающий мобильные телефоны и, допустим, отдельный сайт для HTC — htc.mysite.com. Последний и является субдоменом.
В чем же проблема установки кода?
Поставив на субдомен по-умолчанию тот же код, что и на основной сайт, Вы получите в своем аккаунте GA объединенные данные для двух сайтов, без возможности разделить посетителей каждого сайта.
Как это можно решить?
Я решения этой проблемы необходимо кастомизировать (очень страшное слово:) код. Тоесть код для основного сайт должен выглядеть следующим образом:
var _gaq = _gaq || [];
_gaq.push([‘_setAccount’, ‘UA-_________-_’]);
_gaq.push([‘_setDomainName’, ‘.mysite.com‘]);
_gaq.push([‘_trackPageview’]);
(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);
})();
</script>
*обратите внимание на часть кода выделенную bold
А код для субдомена должен быть вот таким:
var _gaq = _gaq || [];
_gaq.push([‘_setAccount’, ‘UA-______-_’]);
_gaq.push([‘_setDomainName’, ‘htc.mysite.com‘]);
_gaq.push([‘_trackPageview’]);
(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);
})();
</script>
*и снова обратите внимание на часть кода выделенную bold
При этом в обоих кодах уникальный номер кода должен совпадать.
После этого в основном аккаунте Google Analytics достаточно создать новый профиль и выбрать в нем отслеживание именно этого субдомена.
Так Вы будете получать адекватную статистику для каждого сайта. Понимать поведение пользователей на каждом из них и сравнивать эффективность активностей для каждого.
P.S. а в следующий раз я расскажу Вам, как «побороть» показатель отказов для пользователей курсирующих между основным сайтом и субдоменом. Даже, как сделать это в нескольких случаях. Ждите!