本指南說明如何將第三方 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,當資料匯總至「(other)」列下方時,Google Analytics 會啟用自動展開資料集,讓客戶掌握更完整的資料。
比較限制
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'
});