为什么我的用户范围的自定义维度会根据过去的匹配而发生变化

Why is my user scoped custom dimension changing on past hits?

本文关键字:过去 变化 范围 用户 我的 自定义 为什么      更新时间:2023-09-26

用户范围的自定义维度是否应该针对过去的匹配而更改?例如,我有一个促销代码的自定义维度,用于跟踪用户访问网站的促销代码(即:通过广告/优惠)。我在跟踪代码管理器中设置了如下所示的维度:

谷歌分析网页浏览代码(自定义维度部分):

Index    Dimension Value
2        {{ValidPromoCode}}

变量:{{varPromoCode}}

Type: URL
Component Type: Query
Query Key: promocode

然后我在实际站点中有一些 javascript 来获取促销代码并将其设置为在 {{ValidPromoCode}} var 中检查的 cookie - 因此它会检查 URL 中的促销代码,如果它在那里,它会将维度值更改为该值,否则它使用 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;
        }
    }
}

这一切都按预期工作。使用跟踪代码管理器调试和谷歌分析调试器,在发送匹配时,在所有情况下设置正确的值(即:更改促销代码,删除cookie,无促销代码等)。

问题是(也许这不是问题,而是一个功能)......当我使用一个促销代码时,比如说TEST16然后我做了一些网页浏览量,触发了一些事件,然后在几分钟后去检查分析,有我的网页浏览量/事件附有TEST16促销代码......但是,如果我然后将促销代码更改为说T35T16并去做一些不同的网页浏览量/活动......几分钟后检查分析,第一个代码TEST16不见了,我现在点击的页面/事件显示T35T16促销代码......

这就是用户范围应该的工作方式吗?我以为没有分析数据/更改在时间上向后传播?

我希望促销代码无限期地关注用户,但我也希望如果我更改值(即:他们点击了新广告)而不影响他们过去的点击/促销价值,促销代码也会发生变化。

我应该使用会话范围吗?还是我应该以某种方式更改我的实现?

历史数据在处理后不会更改。用户范围的值仅适用于当前和将来的命中。例如,如果您的用户范围维度为 "logged in or not"(值为 truefalse ),那么如果对于一个会话,最后一个值是 false ,那么这将是整个会话中该 CD 的值。在下一个会话中,该值将再次false,因为它适用于将来的命中。如果最终值随后更改为 true ,那么这就是应用于整个会话的 CD 的内容。因此,您看到的是该特定会话的值仅更改。

[参看 https://support.google.com/analytics/answer/2709828?hl=en&ref_topic=2709827#processing]