Настройка _setCampaignParams в Universal Analytics

Есть в Google Analytics удобная штука — запись utm-параметров, игнорируя запись в адресной строке. Я такие штуки использую, например, для шейринга в социцальные сети и трекинга входящего трафика с таких шейров. Социалки взяли моду обрезать параметры. Например, ушла ссылка в pinterest с тремя utm-метками, вернулась только с одной. Непорядок.

_setcampaignparams

Для решения этого вопроса было принято решение динамически записывать два параметра (source + campaign) в один (совершенно не важно как он будет называться) и третий прописывать статично, а что, он же medium.

В результате получили следующий алгоритм (но и намучались с ним). Первой строчкой идет вызов аккаунта _setAccount, далее _setCampaignParams и только после нее _setDomainName. В противном случае теряется источник и в отчет записывается direct (если не ошибаюсь).

А вот что делать с Universal Analytics? Тут оказалось все еще более проще.

Синтаксис поменялся, алгритм нет. Вот тут описаны параметры кампаний (они же utm-метки). Точно так же распарсиваем наш единственный параметр на необходимые составляющие и прописываем правильные строчки после ga('create', 'UA-12345-6', 'domain.com');

ga('set', 'campaignSource', 'соответствует параметру из utm_source=');
ga('set', 'campaignMedium', 'соответствует параметру из utm_medium=');
ga('set', 'campaignName', 'соответствует параметру из utm_campaign=');

Тем, кто хочет посмотреть/настроить работу параметров в Google Tag Manager — пруфлинк с productforums.google.com.

А если я изобрел колесо или зря ехал из Киева во Львов через Одессу — оставляйте свои кейсы в комментариях :)