埋點設計指南
#
1. 從案例開始你是否有過這種困擾:好不容易讓一些用戶接觸到了自己的遊戲,但在他們登錄賬號前就因為一些技術問題流失了不少。下面是一個我們利用自定義事件分析完成「用戶從打開 App 到真正創建角色」過程中流失的真實案例。 我們當時按照以下思路設計了分析步驟:
1、確定分析目標:了解用戶在創建角色之前的流失情況;
2、明確具體流程:對用戶打開 App 到創建角色的流程進行拆解:
- 點擊遊戲 icon
- Unity 初始化
- 出現安卓存儲權限允許界面
- SDK 初始化(新增設備記錄點)
- 彈出隱私協議確認框【選「否」會退出即 SDK 初始化失敗】
- 檢查版本
- 確認下載按鈕(4G 環境下)/ WIFI 環境下自動下載
- 開始下載資源
- 資源下載中
- 資源下載完成,進入登錄界面
- 點擊 TapTap 登錄按鈕
- 跳出彈窗,可選 Tap 打開或者 Tap 加速器打開
- 選擇完成,跳轉喚起登錄授權
- 點擊同意,返回游戲
- TapTap 登錄完成(轉化設備記錄點)
- 遊戲服務器認證用戶
- 登錄遊戲服務器
- 輸入暱稱創角
- 創建成功,進入大廳
3、定義分析指標:根據上述流程,我們以漏斗思維,設計的幾個關鍵指標為:
- 資源確認下載率(確認下載的用戶/ 更新彈窗的曝光用戶);
- 資源下載成功率(下載成功的用戶/ 開始下載資源的用戶);
- TapTap 登錄率(登錄成功的用戶/ 點擊登錄的用戶);
- 角色創建率(角色創建成功的用戶/ 登錄成功的用戶);
4、明確事件:一般來說,事件 Event 會有三個類型:
事件類型 | 描述 |
---|---|
曝光 | XX 頁面的曝光、XX 彈窗的曝光 |
點擊 | XX 按鈕的點擊 |
系統事件 | 初始化、檢查版本、資源下載等 |
在上一步,我們確定了分析分析指標。接下來我們明確了統計哪些事件可以得到以上數據,初步確定了事件名稱和事件類型:
- 曝光:【更新提示彈窗】
- 點擊:【更新提示彈窗- 確認下載按鈕】
- 系統事件:【更新下載成功】
- 點擊:【首頁- TapTap 登錄按鈕】
- 系統事件:【登錄成功】
- 系統事件:【成功創建角色】
5、定義事件屬性: 基於事件名和事件類型,我們整理了更完整的埋點文檔如下:
事件名 | 事件顯示名 | 屬性名 | 屬性顯示名 | 屬性值 | 觸發時機 |
---|---|---|---|---|---|
pv_download | 更新提示彈窗 | #ts | 時間戳 | 彈窗展示時觸發 | |
click_download | 更新提示彈窗- 確認下載按鈕 | #networtype | 網絡類型 | WiFi、4g、5g、3g、2g | 點擊按鈕時觸發 |
download_success | 更新下載成功 | #ts | 時間戳 | 系統後台觸發 | |
login_start | 首頁- TapTap 登錄按鈕 | #ts | 時間戳 | 點擊按鈕時觸發 | |
login_success | 登錄成功 | #ts | 時間戳 | 系統後台觸發 | |
create_role | 創建角色 | #ts | 時間戳 | 創建角色成功時觸發 |
通過以上步驟,我們就完成了埋點的設計。
隨後我們將準確無誤的埋點信息(事件名、事件顯示名、屬性名、屬性顯示名)錄入 TapDB 的「配置」-「事件管理」。
研髮根據的埋點文檔進行埋點開發,開發完成後進行數據校驗。
埋點上線後,我們使用「事件」和「看板」功能對「用戶從打開 App 到真正創建角色」過程流失用戶進行分析,如下圖所示:
「更新下載成功(步驟 3)」到「首頁- TapTap 登錄按鈕(步驟 4)」的轉化率非常低,接下來就需要進行詳細的數據分析。點擊TapDB 使用指南 查看詳細數據分析方法。
#
2.埋點設計思路我們根據這個案例總結了以下思路,建議參考以下步驟進行埋點設計:
1、確定分析場景;
2、明確具體流程;
3、定義分析指標;
4、明確事件:設計 Event,確定其類型,名稱等細節;
5、定義事件屬性:明確所需要的信息,通過事件屬性完成上報;
#
3.其他設計技巧#
3.1 Event 的同類抽象在進行事件設計時,可能會遇到以下問題:
1、要統計三個關卡 A、B、C 的通關情況,對每個關卡設計一個通過事件嗎?
2、在設計「申請驗證碼」的功能埋點時,用戶註冊時、用戶登錄時、修改密碼時等多場景都會下「申請驗證碼」,對每個關卡設計一個「申請驗證碼」事件嗎?
關於不同場景下的行為是否設置為同一個 Event,我們可以基於同類抽象判斷原則:
- 重要的事件行為或者特別關注的事件行為,可以單獨將事件行為作為單獨 Event 進行跟踪和屬性設置;
- 重要程度一般的行為,比如只需要分析參與次數、參與人數的行為,可以將多個相似類型的行為設置成一個 Event,通過屬性的方式標識具體的行為;
1、不同關卡通關情況的事件設計:如果簡單統計三個關卡 A、B、C 的通關情況時,不需要做成「A 關卡通關」、「B 關卡通關」、「C 關卡通關」 三個事件,只需設計成「關卡通關」 事件,將 A、B、C 三個關卡名以屬性「關卡名稱」 進行標識。
2、「申請驗證碼」的功能埋點:可將其定義為一個事件「申請驗證碼」,並在屬性字段增加「場景」,藉此從場景來區分用戶究竟在什麼情況下申請驗證碼。
#
3.2 Event 的命名規範在設計事件顯示名時,注意確保事件沒有二義性。按照頁面名-模塊名-具體事件名的方式來命名,可以幫助分析師通過名字與備註準確理解事件所代表的用戶行為。要避免因為說明的不准確而引發錯誤的分析結論。 對 App 頁面和模塊命名進行統一的梳理和維護是有意義的準備工作,它幫助我們確保了所有人的理解是一致的。