{"id":16474,"date":"2020-07-09T09:38:20","date_gmt":"2020-07-09T07:38:20","guid":{"rendered":"https:\/\/www.dase-analytics.com\/blog\/?p=16474\/"},"modified":"2021-10-26T13:10:50","modified_gmt":"2021-10-26T11:10:50","slug":"gtm-tip-4","status":"publish","type":"post","link":"https:\/\/www.dase-analytics.com\/blog\/sk\/gtm-tip-4\/","title":{"rendered":"GTM TIP #04: Ako posiela\u0165 Client ID a Session ID do Vlastnej dimenzie\u00a0"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Client ID je sp\u00f4sob, ak\u00fdm Google Analytics identifikuje \u201cpou\u017e\u00edvate\u013eov\u201d. Tento identifik\u00e1tor v\u0161ak be\u017ene nie je dostupn\u00fd v \u0161tandardn\u00fdch reportoch a nem\u00f4\u017eete k nemu prist\u00fapi\u0165 ako k in\u00fdm dimenzi\u00e1m. Viete tak urobi\u0165 len v User Explorer reporte.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Tak ako v pr\u00edpade Client ID vieme segmentova\u0165 \u00fadaje od konkr\u00e9tneho pou\u017e\u00edvate\u013ea, v pr\u00edpade Session ID vieme segmentova\u0165 v\u0161etky hity v r\u00e1mci jednej Session. To je ve\u013emi u\u017eito\u010dn\u00e9 \u010di u\u017e pri debugovan\u00ed implement\u00e1cie, alebo akejko\u013evek bli\u017e\u0161ej anal\u00fdze jednej konkr\u00e9tnej Rel\u00e1cie (Session).<\/span><\/p>\n<h2><b>Client ID<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Pre posielanie Client ID vyu\u017eijeme funkciu customTask(). Bez pr\u00edli\u0161n\u00e9ho zach\u00e1dzania do detailov &#8211; customTask() je posledn\u00fd moment, kedy m\u00f4\u017eete zmeni\u0165 model objekt, alebo prist\u00fapi\u0165 k d\u00e1tam, ktor\u00e9 sa odo\u0161l\u00fa do Google Analytics.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Client ID sa d\u00e1 z\u00edska\u0165 aj z _ga cookie, probl\u00e9m v\u0161ak je, \u017ee pri prvej Pageview nov\u00e9ho pou\u017e\u00edvate\u013ea t\u00e1to Cookie e\u0161te nemus\u00ed by\u0165 vytvoren\u00e1, \u010do by znamenalo, \u017ee hodnota sa do Google Analytics neodo\u0161le spr\u00e1vne. Av\u0161ak, pri vyu\u017eit\u00ed customTask() funkcie tento probl\u00e9m odpad\u00e1, nako\u013eko Client ID je povinn\u00fd atrib\u00fat ka\u017ed\u00e9ho jedn\u00e9ho hitu a preto v tomto momente bolo pou\u017e\u00edvate\u013eovi Client ID u\u017e pridelen\u00e9 (hoci cookie e\u0161te st\u00e1le nemus\u00ed by\u0165 vytvoren\u00e1).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Funkciu, ktor\u00e1 sa vykon\u00e1 ako customTask ulo\u017e\u00edme do Custom JavaScript premennej. Jedin\u00e9, \u010do je v tomto k\u00f3de potrebn\u00e9 zmeni\u0165 je index Vlastnej dimenzie, do ktorej chceme Client ID odosla\u0165 (v pr\u00edklade dolu napr. posielame Client ID do vlastnej dimenzie 17). <strong>Nezabudnite v Google Analytics property vytvori\u0165 Vlastn\u00fa dimenziu Client ID.<\/strong> Ke\u010f\u017ee t\u00fato dimenziu budeme posiela\u0165 s ka\u017ed\u00fdm jedn\u00fdm hitom, je \u00faplne jedno, \u010di ju nastav\u00edme na Hit, Session alebo User scope.<\/span><\/p>\n<p><b>Uk\u00e1\u017eka JS &#8211; customTask premennej:<\/b><\/p>\n<pre>function() {\r\n  return function(model) {\r\n    \/\/ CD17 bude obsahovat client ID\r\n    model.set('dimension' + 17, model.get('clientId'));\r\n  }\r\n}\r\n<\/pre>\n<p><span style=\"font-weight: 400;\"><strong>N\u00e1sledne t\u00fato premenn\u00fa s k\u00f3dom mus\u00edme ulo\u017ei\u0165 ako customTask v \u010dasti \u2018Fields to set\u2019<\/strong> (ide\u00e1lne do Google Analytics Settings Variable, v hor\u0161om pr\u00edpade do ka\u017ed\u00e9ho GA tagu).<\/span><\/p>\n<p><a href=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image9-9.png\" data-rel=\"lightbox-image-0\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-16481 size-full\" src=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image9-9.png\" alt=\"\" width=\"933\" height=\"414\" srcset=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image9-9.png 933w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image9-9-300x133.png 300w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image9-9-600x266.png 600w\" sizes=\"(max-width: 933px) 100vw, 933px\" \/><\/a><\/p>\n<h2><b>Session ID<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Posielanie Session ID je omnoho jednoduch\u0161ie, preto\u017ee vyu\u017eijeme princ\u00edp na ktorom funguj\u00fa Vlastn\u00e9 dimenzie s rozsahom Rel\u00e1cie (Session scoped). V GTM nevieme jednoduch\u00fdm sp\u00f4sobom ur\u010di\u0165, kedy vznik\u00e1 a zanik\u00e1 Session, a kedy hit spad\u00e1 do Session A a kedy u\u017e do Session B. <strong>Hity s\u00fa do jednotliv\u00fdch Session priraden\u00e9 a\u017e v Google Analytics.<\/strong> Session scoped dimenzie v\u0161ak funguj\u00fa na jednoduchom princ\u00edpe &#8211; posledn\u00e1 hodnota, ktor\u00e1 bola do Session scoped dimenzie poslan\u00e1, bude po skon\u010den\u00ed session priraden\u00e1 ka\u017ed\u00e9mu jedn\u00e9mu hitu v r\u00e1mci Session. Tzn. \u017ee ak s ka\u017ed\u00fdm jedn\u00fdm hitom budeme posiela\u0165 n\u00e1hodne vygenerovan\u00e9 ID, eventu\u00e1lne, ke\u010f Session skon\u010d\u00ed, sa posledn\u00e9 vygenerovan\u00e9 ID prirad\u00ed v\u0161etk\u00fdm predch\u00e1dzaj\u00facim hitom. <strong>D\u00f4le\u017eit\u00e9 v\u0161ak je, aby bola vlastn\u00e1 dimenzia nastaven\u00e1 ako Session scoped, inak t\u00e1to implement\u00e1cia nebude fungova\u0165.\u00a0<\/strong>Tak\u017ee podobne ako pri Client ID, nezabudnite vytvori\u0165 dimenziu Session ID v Google Analytics (Session scoped).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">V prvom rade potrebujeme funkciu, ktor\u00e1 bude generova\u0165 n\u00e1hodn\u00fd identifik\u00e1tor. Na form\u00e1te pr\u00edli\u0161 nez\u00e1le\u017e\u00ed, tak\u017ee funkcia m\u00f4\u017ee vyzera\u0165 takto:<\/span><\/p>\n<p>Uk\u00e1\u017eka JS &#8211; Session ID premennej:<\/p>\n<pre>function () {\r\n  return '_' + Math.random().toString(36).substr(2, 9);\r\n};\r\n<\/pre>\n<p><span style=\"font-weight: 400;\">T\u00fato funkciu si znova ulo\u017e\u00edme do Custom JavaScript premennej. Posledn\u00fdm krokom je vlo\u017ei\u0165 t\u00fato funkciu do \u010dasti tagu, kde sa nastavuj\u00fa Vlastn\u00e9 dimenzie spolu s prisl\u00fachaj\u00facim indexom (znova, ide\u00e1lne Google Analytics Settings Variable, v hor\u0161om pr\u00edpade do ka\u017ed\u00e9ho jedn\u00e9ho Google Analytics tagu).<\/span><\/p>\n<p><a href=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image15-6.png\" data-rel=\"lightbox-image-1\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-16482 size-full\" src=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image15-6.png\" alt=\"\" width=\"934\" height=\"522\" srcset=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image15-6.png 934w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image15-6-300x168.png 300w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image15-6-600x335.png 600w\" sizes=\"(max-width: 934px) 100vw, 934px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">T\u00e1to implement\u00e1cia v\u00e1m napr\u00edklad odhal\u00ed, ko\u013eko Rel\u00e1cii sa pribl\u00ed\u017eilo k hranici 500 hitov (maxim\u00e1lny po\u010det hitov na Rel\u00e1ciu, v\u0161etky \u010fal\u0161ie hity nebud\u00fa v GA zaznamenan\u00e9). V pr\u00edpade, \u017ee ve\u013ek\u00e9 mno\u017estvo Session t\u00fato hranicu dosiahlo, alebo sa k nej bl\u00ed\u017ei, mali by ste identifikova\u0165, ktor\u00e9 hity ta a pok\u00fasi\u0165 sa optimalizova\u0165 implement\u00e1ciu.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Client ID je sp\u00f4sob, ak\u00fdm Google Analytics identifikuje \u201cpou\u017e\u00edvate\u013eov\u201d. Tento identifik\u00e1tor v\u0161ak be\u017ene nie je dostupn\u00fd v \u0161tandardn\u00fdch&#8230;<\/p>\n","protected":false},"author":62,"featured_media":16475,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[809],"tags":[602],"_links":{"self":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/16474"}],"collection":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/users\/62"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/comments?post=16474"}],"version-history":[{"count":8,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/16474\/revisions"}],"predecessor-version":[{"id":17896,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/16474\/revisions\/17896"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/media\/16475"}],"wp:attachment":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/media?parent=16474"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/categories?post=16474"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/tags?post=16474"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}