2019年8月7日 星期三

Google Analytics 筆記 - 透過 gtag.js 回報 pageview 時,進行 Custom dimensions 回報

在 gtag 的自訂維度的文件上,是以 event 來教學的:gtagjs/custom-dims-mets 且 gtag 的 pageview 文件也是滿精簡:gtagjs/pages

遙想以前 ga 可以很直觀地靠 set 指令 處理:

ga('create', 'UA-XXXX-Y', 'auto');
// 設定指數 1 的自訂維度值。
ga('set', 'cd1', 'Level 1');
// 送出自訂維度值及瀏覽量匹配資料。
ga('send', 'pageview');


最後東摸摸西摸摸,找到一招,就是要發送自訂維度時,一口氣完成定義跟使用:

var params = {
'send_page_view': true,
'page_title' : title,
'page_path': path,
};

var custom_value = getSpecialInfo();
if (custom_value) {
params['ab_user'] = custom_value;
params['custom_map'] = {
'dimension1': 'ab_user',
};
}
gtag('config', 'UA-XXXX-Y', params);


而為何需要使用到這些,其實就是想多做更多的用戶分類,例如 A/B Test 時,更細膩的追蹤用戶行為。若採用 Google Analytics 實驗功能,可以直接靠 實驗/實驗ID 來區分。另外 Google 實驗在 2019/08/07 起已經移師到 Google 最佳化工具囉。只是使用 optimize.google.com 服務時,有些使用情境不太適合,像是網頁一初始畫面就要依照 A/B Test 分群做 UI 改變時,設計上只能先等 optimize.google.com js sdk 初始化才能做事,這就會稍微給人體驗不佳。如果操作上跟網頁初始化無關,如用戶點擊按鈕才依照 A/B Test 分群做不一樣的效果,那就還滿適合善用 optimize.google.com 提供的功能。

目前單靠 google analytics 自訂維度,再靠土炮 A/B 分群方式,把用戶標籤記錄在 cookie 使用:

// AB Test
function getRandomValue(min,max){
return Math.floor(Math.random()*(max-min+1))+min;
}

if (!getCookie(ab_test_cookie_name)) {
var user_flag = getRandom(1,10) > 5 ? '201908-a' : '201908-b';
setCookie(ab_test_cookie_name, user_flag, 365, '/');
}


後續在 google analytics 專案內的行為流程中,就可以在"新增區隔",從 "進階條件" 撈出自訂維度來看行為。

沒有留言:

張貼留言