實踐復盤:產品經理該怎么寫埋點文檔?

23 評論 21221 瀏覽 316 收藏 9 分鐘

?編輯導語:埋點,就是在用戶使用產品時記錄下用戶行為數據,以便后面對用戶行為進行數據分析。對于產品經理來說,工作內容可能經常涉及到埋點文檔。那么,對于產品經理新人來說,如何上手寫埋點文檔呢?本文作者通過復盤自己的實操經歷,為我們做出了總結。

就我而言,今年最大的提升就是對產品開發全流程有了更多的實踐。除此之外,還在友盟上搭起了埋點,以及學會了 SQL 查詢數據。

這些對我分析數據,以及后續做產品決策起到了巨大的幫助。畢竟我們做產品,不能光靠著主觀意識的“我覺得”、“我認為”,而是要有客觀的方式支持。

下面先分享我對埋點的實操經驗,希望對你能有些啟發。

一、什么是埋點?

每個人在 App 上操作時,都可以看做一個行為,比如點擊某個按鈕、在某個頁面停留了多長時間。

而埋點,就是將這些行為記錄下來的技術手段。

從流程上來說,在定義好用戶行為(點擊、停留、輸入等),技術上植入代碼進行捕捉處理 →發送返回 → 呈現結果,這樣就得到了用戶操作數據。

二、埋點的分類

1. 頁面埋點

頁面即將展示時觸發,比如我們統計頁面的訪問情況,訪問人數(UV)和訪問量(PV),就會用到頁面埋點。

2. 事件埋點

也叫行為埋點,在點擊頁面上的元素(按鈕等)的時候觸發。結合頁面埋點,像是商品 UV 點擊率 = 商品點擊 UV ÷ 商品曝光 UV ,用來判斷用戶對商品的喜愛程度。

三、埋點怎么做?

1. 常規的埋點方式

拿我們公司用的友盟平臺為例,產品這邊需要提供的是埋點文檔,如下圖:

分享一下命名思路和規范,先看第一列的頁面,具體看紅色字體部分。

A01-首頁 → A0105 點擊 XX 按鈕(事件埋點) → A010501-進入XX列表頁(頁面埋點),兩個頁面之間是通過點擊按鈕觸發,而我們在命名時也這么做。

這樣做的好處,是自己在梳理埋點時,既不會重復,也不會邏輯混亂。以上是命名的基本邏輯,下面看一下命名規范,這也是參考大廠朋友的思路。

  • 頁面埋點:以英文字母大小寫 + “_”組成。
  • 事件埋點:以頁面埋點 + “.行為”組成,行為由英文字母(大小寫)構成。

實例看下上圖的藍色字體部分:monitor ?→ monitor.search →monitor_search → monitor_search.back。

以上都是常規的方式,也都是可以拿來復用的,但這里還有個情況不得不考慮:如果一個功能按鈕在多個頁面都有,那該怎么辦?

2. key 和 value 怎么用在埋點中?

拿分享圖片行為來說,它一定的多入口的,舉個例子:

如果按上面的方式,需要做 N 個事件,對比加入 key 和 value 以后方式二,如下圖:

對于分享圖片,我們只需要定義一個事件,然后確定頁面來源(key)和多個頁面名稱(value)即可。

最后附上我在埋點文檔中的應用,如下圖紅色字體部分:

當然,這塊我做的時候是存在問題的,其實分享渠道也是可以歸位key(value),像藍色字體部分一樣,整理后如下圖:

那么,我為什么說用key(value)更好呢?我舉個分析場景的例子說明一下。

3. 方式一多事件,對比方式二 key(value)

假設一個場景:我們要分析 N 天用戶的整體分享行為(微信 + QQ + 釘釘),以及在 A 頁面產生了多少分享行為。

我們用腦圖對比不同方式,在兩個問題下的解決方式。

發現了沒有?如果是做多事件的埋點,在分析時得找出所有的事件。

用 key(value)呢?只需要找到一個事件,并選擇對應的 value 值即可,簡單列舉一下這種方式的好處:

1)減少多事件的維護成本

如果后續功能迭代增加了分享圖片的頁面,此時只需要多加一個 value 即可。

2)提升數據分析效率

當我們分析分享情況時,只需要選擇一個事件即可。

3)白嫖友盟平臺

友盟只提供500個免費的事件數量,能省一個就剩一個。因此在做埋點的時候,還是要有意識的用 key(value)值去做,對自己,對開發都好。

當然了,也并不是所有的埋點都要命名一個事件 ID 配上 key(value),我總結了幾個標準:

  1. 同種類型的多事件埋點
  2. 有拓展可能的事件埋點

到目前為止,還只是產品經理梳理思路的部分,但如何體現在產品方案,也就是 PRD 上面呢?

四、埋點與 PRD 文檔

拿我現在的產出為例,我在 PRD 上會分為這幾部分,如下圖。

在需求評審后,也就是 UI 設計圖都做完之后,我會同步進去。

  • 從開發流程上來說,埋點都是最后做的,不會影響他們進度;
  • 從產品方案上來說,評審后基本不會改頁面,會避免返工,同時埋點也需要在設計圖上標注。

以上文提到的頁面埋點:monitor → monitor.search →monitor_search → monitor_search.back 舉例,如下圖:

在每個頁面中標記埋點的命名,給到開發那邊即可。對于友盟來說,需要產品經理批量導入 txt 埋點文檔,這部分看一下就懂了,就不展開說了。

五、寫在最后

以上就是數據收集的上半部分,主要分享的是埋點怎么做,通用性也還是蠻強的。不過話說回來,埋點只是手段,重要的還是如何借助數據做分析,讓自己的決策更加的客觀。

希望上面的分享對你能有些啟發~

 

作者:空;公眾號:小木盒產品記

本文由 @空 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自 Unsplash,基于 CC0 協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 您好,可以加您微信嗎

    來自北京 回復
  2. 請問下作者,這份文檔里有一點沒有搞明白,因為埋點的結果最終是要將事件發生的次數落到數據庫表的,就是要告訴開發給什么字段賦一個值,比如【分享圖片至微信的次數】統計出來是10次,通過您上面那份文檔,我可以理解為是要給3600shareimage_Source.0(假設您文檔里的0代表微信)這個字段賦值10么。就是我沒太明白key-value方式是怎么定義具體的字段的

    來自浙江 回復
  3. 你好,作者,我想問一下,減少多事件的維護成本里面的,如果后續功能迭代增加了分享圖片的頁面,此時只需要多加一個 value 即可—>不應該是如果后續功能迭代增加了分享圖片的頁面,此時只需要多加一個key即可,這樣嗎?

    來自江蘇 回復
    1. 因為你已經加了分享圖片的埋點事件,已經定義了key(頁面來源),value(頁面A、B、C),此時在某個頁面增加了分享圖片,只需要在key(頁面來源)下,增加一個value(頁面D)即可

      來自浙江 回復
  4. 脫敏PRD能來一份嗎

    來自上海 回復
  5. 學習了

    來自廣東 回復
    1. 謝謝關注~

      來自浙江 回復
  6. 您好,我看您的事件列表里,都有頁面ID和功能ID,例如B01這種得,請問這塊是如何統一定義得?另外如果是多個入口,每個入口的ID是否要單獨定義(以確保開發人員能夠明確入口)

    來自遼寧 回復
    1. 1、問題:例如B01這種得,請問這塊是如何統一定義得?
      產品定規范,便于自己分析和管理,交付給開發是最后那張圖,也就是頁面+英文命名;
      2、問題:另外如果是多個入口,每個入口的ID是否要單獨定義?
      多入口的不需要重復定義,即定義一個功能ID,不同頁面用key-value確保開發人員明確入口即可;

      來自浙江 回復
  7. 命名一般是自己定還是開發定呢

    來自廣東 回復
    1. 產品定,開發寫入代碼,但要注意能對得上,否則后面分析的時候就懵了

      來自浙江 回復
    2. 好的,謝謝~!

      來自廣東 回復
  8. 感謝分享牛逼, 想請教一點的就是,數據埋點完,你們最后有沒有類似數據展示的一個東西,

    來自浙江 回復
    1. 我們是在友盟上做的埋點,實時監控、事件分析、漏斗分析都可以實現,對于小B企業來說足夠了~

      來自浙江 回復
  9. 感謝分享 不錯

    來自山東 回復
    1. 謝謝~

      來自浙江 回復
  10. 圖中的埋點文檔可以分享一下嗎,作者大大

    來自河南 回復
    1. 寫法都是一樣的,要根據你們App的情況來寫。我這邊要是整體脫敏文檔,工作量太大啦- –

      來自浙江 回復
    2. 我也想要文檔學習一下,一個簡單的demo就可以

      來自上海 回復
    3. 隱私問題,那你加我吧,我發給你~

      來自浙江 回復
    4. 怎么加啊,我想要一份文檔學習永無止境

      來自河南 回復
    5. 文章末尾有的哈~

      來自浙江 回復
    6. 同求脫敏文檔。

      來自北京 回復