用户范围的自定义维度是否应该针对过去的匹配进行更改?例如,我有一个PromoCode的自定义维度,它跟踪用户来到网站的促销代码(即:通过广告/优惠)。我在Tag Manager中设置了维度,如下所示:
Google Analytics网页浏览代码(自定义尺寸部分):
Index Dimension Value
2 {{ValidPromoCode}}
变量:{{varPromoCode}}
Type: URL
Component Type: Query
Query Key: promocode
然后我在实际站点中有一些javascript来获取promocode并将其设置为在{{ValidPromoCode}}
var中检查的cookie - 因此它会检查URL中的promocode,如果它在那里它会更改维度值,否则它使用cookie值:
function() {
//parse promocode value from cookie string
var promoCode = document.cookie.substring( document.cookie.indexOf("promocode=") + 10, document.cookie.indexOf( ";", document.cookie.indexOf("promocode=") + 10 ) );
if( typeof {{varPromoCode}} == "undefined" ) {
if ( document.cookie.indexOf("promocode") >= 0 ) {
return promoCode;
} else {
return null;
}
} else {
//docs say a query var will return the full querystring if the parameter
//is not found, from my experience it returns undefined.
//simple check for querystring here anyway (if it has = its a querystring)
if ( {{varPromoCode}}.indexOf("=") == -1 ) {
return {{varPromoCode}};
} else {
return null;
}
}
}
这一切都按预期工作。使用标记管理器调试和Google Analytics分析调试程序,在发送匹配项时,会在所有方案中设置正确的值。 (即:更改promocode,删除cookie,没有promocode等)。
问题是(也许这不是问题,而是一个功能)......当我使用一个promocode时,说TEST16
然后我做一些网页浏览,触发一些事件然后在几分钟内检查分析稍后,我的网页浏览量/事件附加了TEST16
promocode ...但是,如果我然后将promocode更改为T35T16
并进行一些不同的网页浏览/事件...然后检查分析a几分钟后,第一个代码TEST16
无处可见,我现在点击的页面/事件显示T35T16
promocode ......
这是用户范围应该如何工作?我认为没有任何分析数据/变化及时传播?
我希望promocode能无限期地关注用户,但如果我更改了值(即:他们点击了一则新广告),我也希望它能够更改,而不会影响他们过去的点击/促销价值。
我应该使用会话范围吗?或者我应该以某种方式改变我的实现?
答案 0 :(得分:1)
历史数据一经处理就无法更改。用户范围的值仅适用于当前和未来的命中。例如,如果您的用户范围维度为"logged in or not"
(值为true
或false
),那么如果一个会话的最后一个值为false
,那么这将是整个会议CD的价值。在下一个会话中,该值再次为false
,因为它适用于未来的匹配。如果最终值更改为true
,则表示整个会话应用于该CD的内容。所以你所看到的只是那个特定会话的价值在变化。
[比照https://support.google.com/analytics/answer/2709828?hl=en&ref_topic=2709827#processing]