User-ID 是您指派給個別使用者的專屬 ID。本指南說明如何將使用者 ID 傳送至 Google Analytics,以便連結不同工作階段、裝置和平台的使用者行為。
如要進一步瞭解 User-ID 功能,請參閱「評估跨平台活動」。如要瞭解如何為應用程式設定 User-ID,請參閱「設定 User-ID」。
根據使用者 ID 設定自訂維度,會導致維度含有過多不重複值。不重複值過多會導致 Google Analytics 資料和報表準確度出現問題。進一步瞭解設定自訂維度的最佳做法。
事前準備
傳送使用者 ID 前,請務必完成下列事項:
- 建立 Google Analytics 帳戶和資源。
- 為網站建立網站資料串流。
- 在網站上加入 Google 代碼。
- 可存取網站的原始碼。
- 具備 Google Analytics 帳戶的編輯者角色 (或更高層級)。
傳送 User-ID
您為 user_id 傳送的值取決於使用者狀態:
- 使用者從未登入:請勿傳送
user_id參數。 - 使用者已登入:傳送使用者 ID。
- 使用者先登入,然後登出:傳送
null。
如要將 User-ID 傳送到 Analytics,請在網站的每個網頁中,將 user_id 參數加入 config 指令:
if (/* your logic for determining if the user is signed in */) { gtag('config', 'TAG_ID', { 'user_id': 'USER_ID' }); } else if (/* your logic for determining if the user signed out */) { gtag('config', 'TAG_ID', { 'user_id': null }); } else { // Do nothing if the user never signed in. }
- 將 TAG_ID 替換為代碼 ID。
- 將註解替換成檢查使用者是否已登入,以及使用者是否已登入但隨後登出的檢查。
- 如果使用者已登入,請將 USER_ID 替換成使用者 ID。
- 使用者登出時,請將
user_id設為null。請勿傳送空字串 ("")、空白字串 (" ") 或以引號括住的字詞"null"或"NULL"。
在初始化後設定 User-ID
在許多情況下,Google 代碼首次初始化時,user_id 並不明。舉例來說,使用者可能造訪您的網站,但稍後才登入。
如要在初始網頁載入後設定或更新 user_id,請使用 gtag('set') 指令。這個指令會為網頁上所有後續事件設定 user_id,建議您採用這種做法,而非使用 gtag('config')。
在登入時設定使用者 ID
使用者成功登入後,請呼叫 gtag('set'),將 ID 與日後的事件建立關聯:
// Example function called after successful login function handleUserLogin(userId) { if (userId) { gtag('set', {'user_id': userId}); console.log('User ID set for GA:', userId); // You can also send a login event gtag('event', 'login', { method: 'your_login_method' }); } } // Example usage: // handleUserLogin('12345_user');
登出時清除使用者 ID
使用者登出時,您應將 user_id 的值設為 null,藉此清除 user_id:
// Example function called after logout function handleUserLogout() { gtag('set', {'user_id': null}); console.log('User ID cleared for GA.'); // You can also send a logout event gtag('event', 'logout'); } // Example usage: // handleUserLogout();
使用 gtag('set') 可確保在整個使用者工作階段中正確管理 user_id,即使網頁載入後使用者登入狀態發生變化,也能反映使用者目前的登入狀態。