search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

想看埋點數據?產品經理有必要了解的埋點知識

本文作者將從一個埋點系統設計者的角度通俗系統地講解埋點的全過程,涉及到埋點基礎知識、埋點作用、埋點方法、埋點數據流程、埋點應用、埋點管理等信息。enjoy~

埋點是什麼?

埋點是互聯網領域非常重要的數據信息獲取方式。埋點採集信息的過程一般也稱作日誌採集。

通俗點講,就是在APP或者web產品中植入一段代碼,監控用戶行為事件(例如某個頁面的曝光)。用戶一旦觸發了該事件,就會上傳埋點代碼中定義的、需要上傳的有關該事件的信息。

常見的信息包括:用戶會話id,用戶id,當前頁面編碼,當前事件編碼,觸發時間,用戶設備id,ip信息等等。

埋點的作用

可以看到,除了像電商購物提交的訂單報表等信息是用戶填寫之後,通過業務資料庫中進行讀取的;用戶在APP或web產品上的行為信息,更多需要靠埋點方式進行獲取。典型的應用場景就是某個運營活動,頁面的點擊量(PV)有多少,點擊用戶數目(UV)有多少,都是用埋點數據進行計算,來對運營活動有數據上的評估。

當然這些信息並不是消費一次就沒有用處了。通過埋點收集到的信息,可以作為監控,看到APP的長期表現,也可以作為基礎原料,進行複雜的運算,用於用戶標籤、渠道轉化分析、個性推薦等等。

埋點種類

按照信息採集發生的位置來分,埋點可分為客戶端埋點、服務端埋點、H5埋點。客戶端埋點即監控APP當地發生事件的埋點,例如APP某頁面曝光,一旦APP客戶端載入了該頁面,客戶端埋點就會發送相應信息;H5埋點可能是在APP中跳轉到的某個H5頁面(如運營活動頁)上的埋點,也可能是web某頁面上的埋點。

下文重點講的是客戶端或H5埋點的方式,服務端埋點一般較少,埋點方式也較為通用。

埋點方式

1、手動埋點

這是埋點最古老的方式。具體的步驟一般是,產品經理在提需求,需要在APP某個頁面的某個事件進行埋點,在這個過程中,產品會對該頁面和事件按照一套規則進行編碼命名(若事件數不多,頁面編碼命名這一層也可以省略),以便後續通過該編碼對上傳上來的信息進行辨認;同時,產品也會將這一埋點需要上傳的參數告知前端開發。開發明確需求后就會進行埋點。

優點:

  • 手動埋點方式簡單靈活,來一個埋一個,埋點代碼實現過程對開發來說也較為簡單,不會佔用太多時間。
  • 可對埋點中需要上傳信息的欄位進行個性化選擇,滿足複雜業務場景。例如頁面曝光埋點中,上傳的信息只需要是這個頁面編碼等就可以了,但如果是某個下拉控制項的事件,可能上傳的信息中還需要帶上下拉控制項后最終選擇了第幾項。

缺點:

  • 埋點過多時,大量重複性操作較為枯燥且容易出錯。新版本發布可能要埋100個點,人工手動去埋,總可能出現某一個忘記埋或者某個應該在A處埋的點埋到了B處的情況。
  • 溝通成本較高。需要PM和開發確認。
  • 埋點周期長。手動埋點如果出現漏埋情況,必須依賴下一版本發版,補上漏埋的那個埋點,才能看到數據。如果新增一個埋點需求,要看數據也只能等下期了。

2、半自動埋點

看了上面的手動埋點描述,可能很多人都會有疑問,所有的埋點都需要手工去埋是否有必要。就比如100個埋點中,可能有80個埋點都是頁面曝光事件,這類埋點非常相似,完全可以用一套埋點手段去解決。那麼半自動埋點就是為了解決這種問題,把部分人工的工作進行標準化,做成SDK。阿里埋點實踐中的「黃金令箭」方案就是半自動埋點的典型例子。PM提埋點需求時候,直接將自己申請的埋點進行註冊,調用符合自己要求的埋點SDK,並進行下發,那麼APP或web產品中就會集成該段埋點代碼,而不再需要溝通前端開發進行埋點。當然,在半自動埋點不完善的階段,可能調用SDK的工作是由開發完成的。

友盟、神策分析、growing IO等傳統的商用化埋點服務,也均是通過埋點SDK這種手段實現的。另外值得一提的是,近來興起的可視化埋點方案(騰訊MTA、百度移動統計近期也剛新加入了該功能),也算是半自動埋點的一種。通過可視化埋點的方案,PM可以直接看到APP或web產品的界面,在界面上捕捉需要進行埋點的元素如頁面或控制項等,再通過可視化的點擊錄入過程,賦予埋點業務含義。也就是說,可視化埋點方案可以通過所見即所得的方式,方便埋點需求方進行埋點。

優點:

  • 將通用的埋點方式進行整合,提高埋點效率,通過同一套SDK,埋點上傳的信息也較為規範,便於後續數據處理。
  • PM直接調用SDK的方式,使得埋點需求提出過程和埋點過程統一,無需付出複雜勞動,省略了整理埋點需求和溝通的環節,也節約了開發進行埋點的工作量。
  • 可視化埋點方案可以更加形象可視地將埋點業務含義和物理代碼連接起來,也可以更清晰直觀看到哪些控制項已有註冊埋點。

缺點:

  • 同樣存在埋點周期長的問題。如果漏埋還是要等下一版本發布。
  • 可視化埋點一般只適用於比較簡單的APP,如果版本過多,顯示的內容不同,需要打開並進行埋點的可視化頁面過多,導致管理混亂。
  • 公司自行開發可視化埋點方案成本較高。

3、全自動埋點

全自動埋點在一些宣傳當中也被稱為「無痕埋點」。這種方式和上文的手動和半自動埋點有產生方式上的本質不同。手動和半自動埋點是需求方需要了,才去埋。而全自動埋點則是不管需不需要,將所有的點都埋了。通常這種埋點也是通過SDK實現的,這種SDK不需調用,已經直接嵌入在APP中。因為全自動埋點都是自動生成的,用於對每一個埋點進行標識的埋點編碼也是按照既定規則進行生成。通常這種標識是不可讀的,需要PM和開發溝通,對埋點編碼進行和業務含義上的映射。

全自動埋點方法聽起來挺簡單粗暴,優點和缺點也同樣突出。

優點:

  • 根本上解決漏埋問題,縮短埋點周期。
  • 無需對頁面、控制項是否需要進行埋點做區分,需要數據時直接取數據。

缺點:

  • 全自動埋點一套SDK對應一套數據上傳方式,需要儘可能通用,個性化的數據採集無法滿足。一般只能對頁面曝光、關閉,控制項點擊這種通用事件進行全自動埋點。
  • 全自動埋點覆蓋面廣,數據傳輸壓力大,可能有很多上傳上來的信息是不需要的。
  • 和一些半自動埋點中PM可自行通過SDK自助進行埋點相比,全自動埋點仍需要PM和開發溝通。因為全自動埋點中埋點編碼為自動生成,其意義只有開發明白,要想對應到業務含義,必須由開發參與。
  • 安卓APP和IOS APP往往是兩組開發人員開發的。全自動埋點這種「埋點創造於開發過程而不是需求過程」的模式,很容易導致同一個埋點事件,其埋點物理編碼在安卓和IOS上是不同的,這就需要埋點需求方花費時間去做對應。對應過程是複雜而艱辛的。

因而,全自動埋點適用於產品比較小,頁面、控制項少,上傳的數據也較少的情況。同樣,全自動埋點也可以配合可視化埋點方案,此時可視化頁面中不僅僅是捕捉到頁面或控制項,同樣可以顯示其已存在的埋點編碼名稱,埋點需求方可將該不易讀的編碼錄入到可讀的業務含義上。

埋點數據的採集、傳輸、加工、存儲、應用和管理內容將在下期介紹。

本文由 @Chase 原創發佈於人人都是產品經理。未經許可,禁止轉載

題圖來自 Pixabay,基於 CC0 協議



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦