本指南說明如何將第三方 A/B 實驗工具與 Google Analytics 整合。整合後,使用者就能在工具中執行實驗變數,並使用 Google Analytics 解讀結果。
適用對象
本指南主要適用於第三方 A/B 實驗解決方案供應商。
總覽
如要整合第三方實驗工具與 Google Analytics,您必須使用:
- Google Analytics 事件,將使用者加入變體
- Google Analytics Admin API,為已加入各個變數的使用者建立目標對象
- OAuth 2.0 可取得使用者同意聲明,代表使用者建立目標對象。進一步瞭解 OAuth 2.0
此外,在工具中啟動實驗的使用者,必須是 Google Analytics 資源的編輯者 (或以上)。
在事件中加入 exp_variant_string 參數
您需要為每個子類建立 ID,然後將 ID 新增至下列 exp_variant_string 參數中的 experience_impression 事件。您可以使用這個參數建立目標對象,將使用者與變數建立關聯。
gtag('event', 'experience_impression', {
// Replace the value with the Experiment-variant ID
exp_variant_string: "ABC-F2948574-3495F49"
});
在使用者加入變數時傳送 experience_impression 事件,例如載入實驗網頁時。
設定參數格式
為避免實驗和其他合作夥伴重複使用,建議您為 exp_variant_string 參數值使用 TOOL_ID-EXPERIENCE_ID-VARIANT_ID 格式,其中:
TOOL_ID是第三方工具的 IDEXPERIENCE_ID是體驗 IDVARIANT_ID是變數的 ID
工具、體驗和變體可使用任意數量的字元。
使用 exp_variant_string 參數定義目標對象
目標對象可讓您根據 exp_variant_string 參數,將已加入變數的使用者分組。將這個參數做為目標對象的成員資格條件,即可根據使用者加入的變數,將他們新增至適當的目標對象。
如要為新體驗建立目標對象,以及封存已結束體驗的目標對象,請使用 Google Analytics Admin API 中的 properties.audiences 資源。
建立目標對象
下列要求主體會使用 properties.audiences.create 方法,為已加入 ID 為 ABC-F2948574-3495F49 的變數的使用者建立目標對象。請注意,您可以根據體驗長度調整會員效期 (最長 540 天)。
建議您將 atAnyPointInTime 參數設為 true,以減少實驗間的資料差異。將參數設為 true 時,系統會將已指派給通過實驗的使用者,指派給新的實驗。如果將參數設為 false 或未設定,使用者已獲派至已傳遞的實驗時,就無法新增至新實驗。
{
"displayName": "Audience ABC - experiment F2948574 variant 3495F49",
"membershipDurationDays": 30,
"filterClauses": [
{
"clauseType": "INCLUDE",
"simpleFilter": {
"scope": "AUDIENCE_FILTER_SCOPE_ACROSS_ALL_SESSIONS",
"filterExpression": {
"andGroup": {
"filterExpressions": [
{
"orGroup": {
"filterExpressions": [
{
"eventFilter": {
"eventName": "experience_impression",
"eventParameterFilterExpression": {
"andGroup": {
"filterExpressions": [
{
"orGroup": {
"filterExpressions": [
{
"dimensionOrMetricFilter": {
"fieldName": "exp_variant_string",
"stringFilter": {
"matchType": "EXACT",
"value": "ABC-F2948574-3495F49"
},
"atAnyPointInTime": true
}
}
]
}
}
]
}
}
}
}
]
}
}
]
}
}
}
}
]
}
上述程式碼片段會建立下列目標對象:
- 目標對象名稱:「目標對象 ABC - 實驗 F2948574 變數 3495F49」
- 目標對象定義:「在事件名稱為『experience_impression』且參數名稱為『exp_variant_string』,而值與『ABC-F2948574-3495F49』完全相符時,納入使用者」
- 再行銷效期:30 天
封存目標對象
實驗結束後,您需要使用 properties.audiences.archive 方法封存目標對象。封存目標對象可讓使用者釋出空間,建立更多體驗。使用者仍可透過 Google Analytics 中的歷來資料,存取已封存目標對象的資料。
指定目標對象
顧客可以藉助指定目標對象功能,鎖定自家網站上出現特定行為的使用者族群做為實驗對象 舉例來說,顧客可以指定向高價值顧客顯示特價優惠和獎勵活動資訊。這樣一來,只有屬於目標對象的使用者會看到實驗。
您可以從 Google Analytics 匯入目標對象中的使用者,然後比較 Google Analytics 中的 User-ID 或裝置 ID 與系統中的 ID,讓客戶設定目標對象指定條件。如果這些 ID 相符,系統就會將使用者加入實驗。
如要從 Google Analytics 匯出使用者並匯入用戶端,請使用目標對象名單 API。目標對象名單 API 會提供目標對象中每天的使用者快照,並允許您匯出目標對象中的 User-ID 或裝置 ID。
建議您每天只為每個目標對象索取一次目標對象名單。
限制
將實驗資料與 Google Analytics 整合時,請注意下列功能和限制。
暫停遊戲體驗
您無法在 Google Analytics 中暫停目標對象。
如要允許使用者暫停體驗,請務必:
- 停止傳送在使用者成為變數成員時觸發的事件
- 在實驗暫停期間忽略所有事件
- 在 Google Analytics 報表中新增報表篩選器,排除暫停時間
或者,您也可以提供連結給使用者,讓他們在 Google Analytics 中手動變更日期。
重新處理體驗資料
如果使用者缺少活動資訊,Analytics 可以重新處理體驗資料。Google Analytics 重新處理體驗資料時,系統會遺失已結束體驗的封存目標對象。不過,使用者仍可透過探索中的 exp_variant_string 事件,擷取體驗資料。與目標對象相比,這類探索的準確度較低,因為探索中會顯示體驗前後發生的事件。
取樣體驗資料
如果使用者可同時分配至多個目標對象,客戶就會遇到基數問題 (可能導致顯示「(其他)」列)。如果並行體驗數量增加,且用於其他用途 (例如 Google Ads 出價) 的目標對象數量增加,發生這種情況的機率就會提高。
不過,如果客戶使用 Google Analytics 360,Google Analytics 會在資料匯總至「(other)」列下方時,啟用自動展開資料集,讓客戶掌握更完整的資料。
比較限制
Google Analytics 報表一次最多可顯示四個比較項目。如果使用者有超過四個變體,就能在比較時切換目標對象。建議優先放送轉換率最高的變體。
內部和自訂實驗
如果您是開發自訂或內部實驗架構,而不是整合第三方工具,可以使用用戶端事件在 Google Analytics 中追蹤實驗成效。
如要記錄使用者看到實驗和變化版本的時間,請按照下列步驟操作:
- 傳送包含參數的事件 (例如
experiment_impression或自訂事件),以識別實驗和變數。 - 在 Google Analytics 資源中,為這些參數登錄以事件為範圍的自訂維度 (例如
experiment_id和variant_id)。 - 如要製作報表,請在「探索」中建立自訂報表,並使用自訂維度比較不同變體的指標。
範例:gtags
以下範例會傳送自訂事件,追蹤實驗變體曝光:
// Triggered when a user is bucketed into a variant
gtag('event', 'experiment_impression', {
'experiment_id': 'homepage_hero_test',
'variant_id': 'variant_A'
});