Всегда ли utm_source и utm_medium требуются для пометки ссылок в Google Analytics? - PullRequest
10 голосов
/ 03 апреля 2012

Согласно каждому найденному источнику, чтобы вручную пометить ссылки для отслеживания кампании в Google Analytics, необходимо 3 поля - utm_campaign, utm_source и utm_medium. Тем не менее, я получаю смешанные результаты, когда я не использую последние два.

Если я установлю utm_campaign и utm_source, кампания будет отслеживаться в GA со средним значением (not set). Кажется, это работает надежно.

Если я задаю utm_campaign в href тега привязки на другом сайте и пропущу utm_source, источник кампании отображается в качестве ссылающегося домена при использовании сценария отладки GA , но без кампании имя указано в списке, и, похоже, не отслеживается должным образом, когда я просматриваю отчеты в Google Analytics. Например, если на www.referringsite.com у меня есть якорь, который выглядит как
<a href="http://www.mysite.com?utm_campaign=test">click me</a>
Инструмент отладки покажет Campaign Source: referringsite, а параметр Campaign Name не указан.

Что здесь происходит? Когда мне нужно использовать эти параметры и когда я могу их пропустить? Моя конечная цель состоит в том, чтобы разрешить использование реферера в качестве источника кампании, если utm_source явно не задано, и вообще исключить utm_medium (что, похоже, я могу сделать без проблем). Может ли кто-то конкретно объяснить, что и когда следует использовать, а также как добиться желаемого эффекта от использования httpReferrer в качестве неявного источника кампании?

1 Ответ

4 голосов
/ 04 апреля 2012

utm_source обычно требуется, если Google Analytics распознает любые другие параметры utm.

Чтобы установить __utmz cookie (файл, содержащий информацию об источнике и кампании), javascript аналитики сначала проверяет, существует ли параметр utm_source. Если нет, скрипт проходит через «стандартную» настройку источника и не проверяет другие параметры, такие как utm_campaign.

Но вы можете достичь желаемого эффекта с помощью некоторого JavaScript.

На вашей странице определите, что есть параметр utm_campaign без utm_source.
Вы можете использовать что-то вроде:

function isParameterInUrl(param){
    var url = document.location.href;
    var reg = new RegExp('(\\?|&|^)'+param+'=(.*?)(&|$)');
    matches = url.match(reg);
    if (matches[2] != undefined) {
        return true;
    } else {
        return false;
    }
}

Затем установите utm_source с помощью:

var re_hostname = new RegExp('^(?:f|ht)tp(?:s)?\://([^/]+)', 'im');
var referrer = document.refferer;
_gaq.push(['_setCampSourceKey', referrer.match(re)[1].toString();]);

Обязательно вставьте свой код перед вызовом _tackPageView.

...