簡體   English   中英

如何使用 GTM 更新 Google Analytics 用戶 ID?

[英]How to update Google Analytics user id using GTM?

使用 gtag.js 我可以通過這種方式更改用戶 ID:

gtag('config', 'G-XXXXXX', {
  'user_id': '12345'
});

改用 GTM,如何更改 Google Analytics 使用的用戶 ID?

我目前所做的是在 GTM 中添加一個變量,並將其作為用戶屬性“user_id”的值插入分析的 TAG 中。

問題在於,以這種方式使用初始 user_id 值初始化 Analytics。 但在我的情況下,在單頁應用程序上使用它,用戶 ID 可以在已經初始化 GTM 等 Analytics 后更改,並且 dataLayer.push({ 'user_id': 'xxx' }) 對 Analytics 沒有影響。

dataLayer.push({ 'user_id': 'xxx' })本身可能沒有效果,但那是因為你沒有告訴 GTM 更新它的內部 state。

GTM 使用一些自定義代碼覆蓋數據層數組的“推送”方法,其中包括掃描推送對象以查找具有保留名稱“事件”的鍵。 僅當它找到該鍵時,才會實際評估已推送到數據層的數據,並且在 GTM 界面的“變量”選項卡中配置的變量假定一個新值,如果確實為它們設置了一個新值新增數據層 object。 “事件”鍵還允許您創建觸發器以使用更新的值觸發標簽。

所以如果你這樣做

dataLayer.push(
{ 
  'user_id': 'xxx',
  'event': 'updateUserId' 
}); 

您在 GTM 中的 user_id 變量將被分配新值,您可以使用事件名稱“updateUserId”創建“自定義事件觸發器”。例如,您可以使用新值向 Google Analytics 發送請求(我不得不說變量名稱“user_id”對於您顯然希望改變很多的東西有點不高興)。

如果在推送之后跟隨自動事件,例如有效的點擊觸發器或類似事件,該值也會更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM