工作之后經常聽到數據埋點這個詞,但不明白埋點是什么。一下答案參考知乎大神的答案
知乎原文:https://www.zhihu.com/question/36411025
第一個答案
作者:大頭魚
鏈接:https://zhuanlan.zhihu.com/p/25195217
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
所謂埋點就是在應用中特定的流程收集一些信息,用來跟蹤應用使用的狀況,后續用來進一步優化產品或是提供運營的數據支撐,包括訪問數(Visits),訪客數(Visitor),停留時長(Time On Site),頁面瀏覽數(Page Views)和跳出率(Bounce Rate)。這樣的信息收集可以大致分為兩種:頁面統計(track this virtual page view),統計操作行為(track this button by an event)。
數據埋點的方式
現在埋點的主流有兩種方式:
- 第一種:自己公司研發在產品中注入代碼統計,並搭建起相應的后台查詢。
- 第二種:第三方統計工具,如友盟、神策、Talkingdata、GrowingIO等。
如果是產品早期,通常會使用第二種方式來采集數據,並直接使用第三方分析工具進行基本的分析。而對於那些對數據安全比較重視,業務又相對復雜的公司則通常是使用第一種方式采集數據,並搭建相應的數據產品實現其數據應用或是分析的訴求。
關鍵指標
我們先看看無論是APP,H5還是小程序都會關注的指標,了解這些指標的計算方法的細微差異以及復雜性,換個角度來思考埋點的意義。【源自:精通Web Analytics 2.0】
- 訪問與訪客
訪問次數(Visits)與訪問人數(Vistors)是幾乎所有應用都需要統計的指標,這也是最基礎的指標。
對於應用的統計來說,經常看到的DAU,MAU,UV等指標都是指統計訪客(Vistors)。訪問(Visits)是指會話層,用戶打開應用花一段時間瀏覽又離開,從指標定義(訪問次數)來說這被稱之為統計會話(Session)數。
一次會話(Session 或 Visit)是打開應用的第一個請求(打開應用)和最后一個請求決定的。如果用戶打開應用然后放下手機或是離開電腦,並在接下來30分鍾內沒有任何動作,此次會話自動結束,通常也算作一次訪問或會話期(30分鍾是早起網頁版應用約定俗成的會話數定義,目前用戶停留在應用的時長變長,30分鍾的限定也可能隨之不同,總之是能代表一次用戶訪問的時長)。
在計算訪問人數(Vistors)時,埋點上報的數據是盡可能接近真實訪客的人數。對於有需要統計獨立訪客這個指標的場景,這里還是需要強調一下,訪問人數(Vistors)並不是真實獨立的人,因此收集數據時必須知道訪問人數雖然能夠很好的反映使用應用的真實訪問者的數量,但不等於使用應用的真實人數。(原因是,重復安裝的應用,或是手機參數被修改都會使得獨立訪客的指標收到影響。計算訪問人數的埋點都是依賴Cookie,用戶打開應用,應用都會在此人的終端創建一個獨立Cookie, Cookie會被保留,但還是難免會被用戶手動清理或是Cookie被禁用導致同一用戶使用應用Cookie不一致,所以獨立訪客只能高度接近於使用應用的真實人數。)
- 停留時長
停留時長用來衡量用戶在應用的某一個頁面或是一次訪問(會話)所停留的時間。
頁面停留時長,表示在每個頁面所花費的時間;例如:首頁就是進入首頁(10:00)到離開首頁進入下一個頁面(10:01)的時長,首頁停留時長計算為1分鍾。頁面A是2分鍾。停留時長的數據並不都是一定采集得到的,比如頁面B進入時間(10:03),離開出現異常或是退出時間沒有記錄,這時候計算就是0 (所以指標計算時需要了解埋點的狀況,剔除這樣的無效數據)。
應用的停留時長,表示一次訪問(會話)所停留的時間,計算起來就是所有頁面的訪問時長,同樣是上一個流程,應用的停留時長就是4分鍾。
- 跳出率
跳出率的計算方法現在在各個公司還是很多種,最經常被使用的是:用戶只訪問了一個頁面所占的會話比例(原因是:假設這種場景,用戶來了訪問了一個頁面就離開了,想想用戶使用的心里畫面應該是:打開應用,心想什么鬼,然后關閉應用甚至卸載了。這個場景多可怕,這也是為什么跳出率指標被如此關注)
跳出率可以分解到兩個層次:一是整個應用的跳出率,二是重點的着陸頁的跳出率,甚至是搜索關鍵詞的跳出率。跳出率的指標可操作性非常強,通過統計跳出率可以直接發現頁面的問題發現關鍵詞的問題。
- 退出率
退出率是針對頁面的,這個指標的目標很簡單,就是在針對某個頁面有多少用戶離開了應用,主要用戶反映用戶從應用離開的情況。哪些頁面需要被改進最快的方式被發掘。(注意:退出率高不一定是壞事。例如:預測流程的最終節點的退出率就應該是高的)
- 轉化率
我們在產品上投入這么多,不就是為了衡量產出么?所以對於電商類應用,還有比轉化率更值得關注的指標嗎?轉化率的計算方法是某種產出除以獨立訪客或是訪問量,對於電商產品來說,就是提交訂單用戶數除以獨立訪客。
轉化率的計算看起來想到那簡單,但卻是埋點中最貼近業務的數據收集。這也是最體現埋點技巧的指標,需要結合業務特點制定計算方法。提交訂單量/訪客數是最基本的轉化率,轉化率還可以分層次,指定用戶路徑的,如:完成某條路徑的提交訂單數/訪客數。
試着找一條路徑,想想轉化率的數據怎么得來的吧,埋點都收集了什么樣的數據吧?
- 參與度
參與度並不是一個指標,而是一系列的指標的統稱,例如訪問深度,訪問頻次,針對電商的下單次數,針對內容服務商的播放次數,及用戶行為序列這些都可以是衡量參與度的指標。之所以把參與度列為一個指標,是希望大家明白把指標結合業務,產生化學反應,活學活用去發現事物的本質。
埋點的內容
看完關鍵的這些指標后,其實埋點大致分為兩部分,一部分是統計應用頁面訪問情況,即頁面統計,隨頁面訪問動作發生時進行上報;另外一部分是統計應用內的操作行為,在頁面中操作時進行上報(例如:組件曝光時,組件點擊時,上滑,下滑時)。
為了統計到所需要的指標,應用中的所有頁面,事件都被唯一標記,用戶的信息,設備的信息,時間參數以及符合業務需要的參數具體內容被附加上報,就是埋點。
關於埋點的數據的注意事項
- 不要過分追求完美
關於埋點數據有一點至關重要,埋點是為了更好地使用數據,不要試圖得到精准的數據要得到的是高質量的埋點數據,前面討論跳出率就是這個例子,得到能得到的數據,用不完美的數據來達成下一步的行動,追求的是高質量而不是精確。這是很多數據產品容易入坑的地,要經常提醒自己。
第二個答案
鏈接:https://www.zhihu.com/question/36411025/answer/468092622
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
數據生產-數據采集-數據處理-數據分析和挖掘-數據驅動/用戶反饋-產品優化/迭代。
埋點:數據分析的第一步
大數據,從龐雜的數據背后挖掘、分析用戶的行為習慣和喜好,找出更符合用戶“口味”的產品和服務,並結合用戶需求有針對性地調整和優化自身,正是大數據的價值。而這信息的匯集、分析就繞不開“埋點”.
小科普:“埋點”
埋點就是在有需要的位置采集相應的信息,就如同公路上的攝像頭,可以采集到車輛的屬性,比如:顏色、車牌號,車型等信息,還可以采集到車輛的行為,比如:有沒有闖紅燈,有沒有壓線,車速多少,司機有沒有在駕駛中接聽電話等,如果攝像頭分布是理想狀態,那么通過疊加不同位置的攝像頭所采集的信息,完全可以還原出某一輛車的路徑、目的地,甚至推測出司機的開車習慣、是否是老司機等信息。
那么,每一個埋點就像攝像頭,采集用戶行為數據,將數據進行多維度的交叉分析,可真實還原出用戶使用場景,挖掘用戶需求,從而提升用戶全生命周期的最大價值。
4種埋點“姿勢”
為了將海量數據采集得更加精准,為后續營造“純凈”的數據分析環境,埋點技術應運而生。數據基礎夯實與否,取決於數據的采集方式。埋點方式多種多樣,按照埋點位置不同,可以分為前端(客戶端)埋點與后端(服務器端)埋點,其中前端埋點包括:代碼埋點、全埋點、可視化埋點。

全埋點:通過SDK,收集頁面所有控件操作數據,通過“統計數據篩”,配置待處理的數據的特征。
優勢:一切操作皆埋點,簡單、快捷,無需埋點統計數據按需處理
劣勢:數據上傳消耗流量大,數據維度單一(僅點擊、加載、刷新);影響用戶使用體驗——用戶使用過程中容易出現卡頓,嚴重影響用戶體驗;噪點多,數據准確性不高,容易產生干擾;不能自定義埋點收集信息.
如同衛星拍攝,無需逐一安裝攝像頭,但數據量巨大,且容易遺漏,不易挖掘關鍵信息,因此全埋點的方式,適合以下場景:
舉例·應用場景
主要應用於簡單頁面,比如:短期活動中的落地頁/專題頁中,需要快速衡量點擊分布等效果。
JS可視化埋點:嵌入SDK,可視化圈選定義事件
為了方便產品和運營同學可以直接在頁面上進行簡單圈選,以追蹤用戶的行為(定義事件),
僅采集click(點擊)操作,節省開發時間,諸葛io已於近期支持JS可視化埋點。
優勢:界面化配置,無需開發,埋點更新便捷,生效快
劣勢:埋點自定義屬性支持較差;重構或者頁面變化時需要重新配置;
如同衛星航拍,無需安裝攝像頭,數據量小,支持局部區域的信息獲取 ,因此JS可視化埋點更適用於以下場景:
舉例·應用場景
1、短平快的數據采集方式:活動/H5等簡單頁面,業務人員可直接圈選,操作無門檻,減少技術人員的介入(從此世界和平),此種數據采集方式,方便業務人員盡快掌握頁面中關鍵節點的轉化情況,但是對用戶行為數據的應用較淺,無法支持更深度的分析;
2、若頁面臨時調整,可靈活的追加埋點,可作為代碼埋點的補充,以便及時增加采集數據
代碼埋點:嵌入SDK,定義事件並添加事件代碼,按需采集,業務信息更完善,對數據的分析更聚焦,因此代碼埋點是一種以業務價值為出發的行為分析。
優勢:數據收集全面且准確,便於后續深度分析(埋點准確性順序:代碼埋點>可視化埋點>全埋點),SDK較小,對應用本身的使用體驗沒有影響
劣勢:需要研發人員配合,有一定的工作量
舉例·應用場景
1、如果你不希望在采集數據的同時,降低用戶體驗
2、如果你不希望采集到海量無用數據
3、如果你希望采集的數據:顆粒度更細,維度更多,數據分析的准確性更高
那么,從業務增長的長遠價值考慮,請選擇代碼埋點
服務端埋點:可支持其他業務數據采集和整合,如CRM等用戶數據,通過接口調用,將數據結構化,由於直接從服務器端采集,數據准確性更高,適用於自身具備采集能力的客戶,或可與客戶端采集相結合采集。
舉例·應用場景
1、通過調用API接口,將CRM等數據與用戶行為數據進行整合,全量、多角度分析用戶;
2、若企業已有自身的埋點體系,那么可直接通過服務端采集將用戶行為數據上傳到諸葛io平台,進行數據分析,無需維護兩套埋點系統;
3、打通歷史數據(埋點前的數據)與新數據(埋點后),提高數據准確性。如在接入客戶端采集之后的客戶,導入原有歷史數據后,此前的已有的用戶訪問平台,不會被標記為新用戶,減少數據誤差。
怎么埋?
埋點聽起來“不明覺厲”,其實非常的簡單,就如同“在公路上安裝攝像頭”。
1、梳理產品用戶行為,確定事件布點
埋點方案≈攝像頭安裝的分布方案
經常有童鞋咨詢諸葛君:究竟獲取哪些數據來進行數據分析?回答這個問題,先要明確目的,厘清邏輯。
諸葛io數據分析的對象和基礎是用戶行為,選擇記錄和分析哪些用戶行為,直接影響到分析工作的價值產出,諸葛君建議:選擇與產品目標和當下首要問題最為密切相關的用戶行為,作為事件。以電商為例,將流程中的每個用戶行為定義為一類事件,從中獲得事件布點的邏輯。

2、記錄事件,了解分析用戶行為
確定攝像頭要記錄的信息,是違章拍照還是測速?
對需要記錄和分析的用戶行為進行梳理,並完成事件布點表后,接下來,需要在研發工程師的協助下,根據您應用的平台類型(iOS、Android、JS)完成SDK的接入,每個事件的布點,將變成一段非常簡短的程序代碼——當用戶做相應的行為時,您的應用會運行這段代碼,向諸葛io記錄相應事件。在布點完成、產品發版后,用戶開始使用新版的應用時,使用行為的數據就會自動傳遞到諸葛io,以便您進行下面的分析。
這一步,諸葛io的CS團隊將為企業提供支持,協助技術團隊順利完成數據采集的第一步。
3、通過identify記錄用戶身份
在諸葛io中記錄了用戶的行為,即:用戶做了什么? 在對用戶分析的過程中,還有一類信息是很有用的,即:用戶是誰(TA的id、名字)以及具備什么特點(TA的年齡、類型……)?您可以通過諸葛io平台的identify過程,將用戶的身份及特點傳遞給諸葛io,利用identify的信息進行精細化分析:
細分用戶群:用戶屬性的一個很重要的作用就是將用戶分群。您可以根據identify的屬性定義篩選條件,進行用戶群的細分,比如用「性別=女」的條件將所有的妹子篩選出來,然后分析妹子們的行為特點和轉化率……
基於屬性的對比:細分的重要目的之一就是對比,您可以基於「性別」細分,然后對比「妹子們」和「漢子們」的行為、轉化、留存等的區別;
基於屬性的人群畫像:您可以基於用戶屬性,對產品的任意用戶群進行「畫像分析」——該用戶群的男女比例、地區分布、年齡層次、用戶類型……
最理想的埋點方式?
回到一開始的問題:何種埋點方式最理想呢?
正如同硬幣有兩面,任何單一的埋點方式都存在優點與缺點,企圖通過簡單粗暴的幾行代碼/一次部署、甚至犧牲用戶體驗的埋點方式,都不是企業所期望的。要滿足精細化、精准化的數據分析需求,可根據實際需要的分析場景,選擇一種或多種組合的采集方式,畢竟采集全量數據不是目的,實現有效的數據分析,從數據中找到關鍵決策信息實現增長才是重中之重。
因此,數據采集只是數據分析的第一步,數據分析的目的是洞察用戶行為,挖掘用戶價值,進而促進業務增長,故最理想的埋點方案是根據根據不同的業務和場景以及行業特性和自身實際需求,將埋點通過優劣互補方式進行組合,比如:
1、代碼埋點+全埋點:在需要對落地頁進行整體點擊分析時,細節位置逐一埋點的工作量相對較大,且在頻繁優化調整落地頁時,更新埋點的工作量更加不容小覷,但復雜的頁面存在着全埋點不能采集的死角,因此,可將代碼埋點作為輔助,將用戶核心行為進行采集,從而實現精准的可交叉的用戶行為分析;
2、代碼埋點+服務端埋點:以電商平台為例, 用戶在支付環節,由於中途會跳轉到第三方支付平台,是否支付成功需要通過服務器中的交易數據來驗證,此時可通過代碼埋點和服務端埋點相結合的方式,提升數據的准確性;
3、代碼埋點+可視化埋點:因代碼埋點的工作量大,可通過核心事件代碼埋點,可視化埋點用於追加和補充的方式采集數據。