Kampaňové parametry jsou extrémně obtížná disciplína. Dost složité je už jen udržet v nich pořádek, abychom dokázali rozlišit, ze které naší iniciativy přichází návštěvník na náš web z zejména zda poté konvertuje.

Zmapování online kanálů

Pořádek udržíme tak, že si nejprve všechny varianty zmapujeme a stanovíme si jasná pravidla pro to, jak mají tagy vypadat. Inspirací může být například takováto tabulka Online Channels (pokud ji hodláte využít, dejte mi vědět, zda pro vás byla užitečná – kontakty najdete přímo v ní).

Kolik potřebujeme parametrů

Průmyslovým standardem jsou nyní Google Analytics se svými pěti proměnnými a jednoduchým pomocníkem pro tvorbu otagovaných odkazů. I Google Analytics ale zvažují přechod k jednoduššímu způsobu značení kampaní jedním parametrem. To má hned několik výhod:

  • Výsledná URL je kratší a lépe se s ní tedy manipuluje (pokud k šíření odkazů nevyužíváme zkracovače).
  • Eliminujeme možnost překlepů při spojování více parametrů (? Vs. &).

Pro jeden parametr ale musejí být pravidla přísnější, abychom dokázali z jednoho tagu vyčíst vše potřebné a to ideálně automatickým způsobem na úrovni měřicího nástroje (to umí některé z těch pokročilejších). Specifika tagování v jiných měřicích systémech si nechám na později, jelikož s dnešním tématem až tak nesouvisejí. Držme se tedy dále předpokladu, že stále využíváme klasické tagy Google Analytics.

Nepřítel tagování – redirecty

Velmi častým problémem při analýze výkonnosti kampaní jsou redirecty, při kterých může dojít ke ztrátě kampaňových tagů. Je nutné spolupracovat s IT a těmto problémům včas předejít buď eliminací zbytečných redirectů zejména na kapaňových landing pages nebo alespoň zajištěním přenášení parametrů, pokud se to bez redirectů neobejde.

Životnost cílové URL

Další nepříjemností je potom situace, kdy se některý z návštěvníků proklikne z kampaně a s cílovou URL obsahující kampaňový tag dále nakládá. Ať si ji uloží do záložek nebo ji sdílí jinde na internetu, máme zaděláno na pokřivená data, protože další využívání této URL bude mylně zařazeno pod původní kampaň.

Někteří SEO specialisté navíc v tento moment poukazují také na to, že vzniká duplicitní varianta téže stránky s odlišnou URL a případný vzniklý zpětný odkaz nepředává stránce vytouženou autoritu. Často doporučovaným lékem na tento neduh je místo využívání tagů v podobě parametrů v URL použít obdobně formátovanou kotvu. To ale nemusejí podporovat všechny systémy, které s tagy zacházejí (např. e-mailové systémy, které odkazy v newsletterech tagují automaticky). Tato varianta selhává, pokud se nevyhneme redirectům (kotvy se narozdíl od parametrů nedostanou na server a není tedy možnost ovlivnit, zda se přenášejí – v některých prohlížečích tomu tak bohužel není), je proto nutné zajistit, že redirecty opravdu nenastanou.

Bonus tip – práce s URL přímo v prohlížeči.

K napsání tohoto článku a sdílení bonusového tipu na závěr mě inspiroval tento tweet Marka Prokopa.

Řešením problému s následným užíváním tagované URL může být totiž ve většině moderních prohlížečů šikovná manipulace s historií navštívených URL přímo v prohlížeči. Jen je nutné zajistit, abychom kampaň stihli změřit (počkat si přes setTimeout, až dojde ke změření stránky).

Výsledný kód vašich Google Analytics tak stačí obohatit o funkci, která po změření zobrazení stránky včetně zaznamenání kampaňových tagů URL vyčistí. Sníží se tak pravděpodobnost, že uživatel stihne s otagovanou URL dále manipulovat.

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXXX-Y']);
  _gaq.push(['_setAllowAnchor', true]);
  _gaq.push(['_trackPageview']);

  _gaq.push(function() {
    setTimeout(function() {
      var d = document, title = d.title, href = d.location.href, hash = d.location.hash;
      if ((typeof history !== "undefined") && (typeof history.replaceState !== "undefined") && (hash !== "") && (hash.indexOf("utm_") !== -1)) {
        history.replaceState("", title, href.split("#")[0]);
      }
    }, 500);
  });

  (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>

Závěrem

Každá implementace měřicího nástroje se ale může lišit v použití parametrů nebo způsobu nasazení – jinak bude kód vypadat v případě, že využíváte Universal Analytics, jiné to bude s Google Tag Managerem. Svoje kódy proto vždy testujte nebo takovéto úpravy přenechte některé z agentur, která má s pokročilými technikami implementace měřicích nástrojů větší zkušenosti.

Tags: , ,

Komentáře

  1. Elegantní řešení, nádhera. Ještě doporučuji zkontrolovat si Likevací tlačítka, zda přebírají adresu článku nebo adresu z URL. Protože tlačítka pak dokážou udělat v měření kampaní mnohem větší paseku než uživatelé kopírující URL z prohlížeče (používá je víc lidí).

    Třeba takový Tweet button při defaultní instalaci přebírá adresu z prohlížeče i s kampaňovými parametry. A změna adresy pomocí history to neovlivní.

    • Díky za skvělý komentář.

      Tohle bych určitě řešil na úrovni těch tlačítek – vidím dvě cesty:
      1) většina tlačítek umožňuje „podstrčení“ jiné adresy – tady bych vyřešil očištění o utm_ parametry;
      2) načítat tlačítka až potom, co provedu úpravy nad history (předpokládám, že by to mělo mít požadovaný efekt, ale raději bych to otestoval).

      • Souhlas, určitě je nejjednodušší to řešit podstrčením té adresy článku rovnou z redakčního systému, všechna tři hlavní tlačítka (FB, Twitter, G+) to umí. Ale analytik by si to měl rozhodně zkontrolovat, minimálně ten Twitter to při defaultní instalaci přes https://twitter.com/about/resources/buttons nedělá a je třeba tam přidat parametr „data-url“.

      • To přebírání adres může být dost pakárna – třeba i při automatickém prolinkování cross-domain měření to pak znamená přepsání odkazů na typ
        Stáhnout

        Pročištění takových situací řeším v rámci tag managementu tím, že si zvlášť makrem očišťuji o UTM a _ga parametry i adresu v {{element url}}. Takže bych si změřil stažení správné adresy http://www.priklad.cz/download.php?id=123

        Což je pouze řešení pro měření – neřeší to, kdybych odkazované adrese neměl či nesměl posílat utm a _ga parametry.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *