GTM Google Analytics自定义维度变量仅在某些时候触发

问题描述 投票:0回答:1

我在GTM中使用自定义变量设置了自定义维度。但是,当我查看Google Analytics分析报告时,我发现该维度仅在大约75%的时间内被记录。同一页面将跟踪维度的3/4页面浏览量,而其他25%的视图不记录维度。请参阅下面的代码,这是我在javascript中创建的自定义变量,然后以下屏幕截图显示了我如何创建自定义变量并创建自定义维度。这有什么原因会发生吗?

我的猜测是,在创建javascript变量之前可能没有加载pull页面(变量代码实际上是朝向页面底部)。或者也许我的页面上的其他一些javascript导致其余的javascript失败(我无法重新创建这个,但可能在旧的浏览器或移动设备上)。如果可能出现这两种情况中的任何一种情况,那么我该怎么做才能解决问题呢?是否有更好的方法更有可能不会失败?

<script>
    // For GA
    var ArticleID = 624;
</script>

Custom GTM Variable

Custom Dimension

javascript jquery google-analytics google-tag-manager universal-analytics
1个回答
1
投票

根据您的设置,很可能存在竞争条件,并且与您设置变量的脚本相比,Google跟踪代码管理器(GTM)脚本会先运行。因此,GTM将找不到您的变量,并将未定义的值传递给Google Analytics跟踪器,该跟踪器不会发送到Google Analytics本身。

解决此问题的方法之一是在GTM初始化之前将此变量推送到Google跟踪代码管理器的数据层。因此,该值将在GTM初始化时出现,这实际上触发了网页浏览事件。

所以你的代码将变为:

<script>
  dataLayer = [{
    'ArticleID': 624
  }];
</script>
<!-- Google Tag Manager -->
...
<!-- End Google Tag Manager -->

有关datalayer的进一步参考,您可以查看this developer guide

在GTM中,您需要将JavaScript变量替换为dataLayer变量,其中Data Layer Variable Name将为ArticleID。

© www.soinside.com 2019 - 2024. All rights reserved.