作者:張曉亮
從運營角度來看棠隐,用戶在網(wǎng)站停留時間,反映了網(wǎng)站黏性檐嚣。一般情況下助泽,用戶的需求與網(wǎng)站內(nèi)容匹配度越高,頁面瀏覽時間越容易聚攏在一個相對集中區(qū)間里嚎京,不會過短也不會過長嗡贺。
在評估網(wǎng)站推廣效果時,若來自某推廣渠道的訪客頁面瀏覽時間集中在很短的區(qū)間內(nèi)鞍帝,則意味著該渠道的流量質(zhì)量過低诫睬。我們經(jīng)常會看到的轉(zhuǎn)化率就與頁面平均瀏覽時長密切相關(guān),呈現(xiàn)一個正態(tài)分布的圖形帕涌。
所以在數(shù)據(jù)獲取階段摄凡,如果不能準(zhǔn)確的獲取到用戶在某個頁面的停留時長,那么對于后續(xù)結(jié)論也會產(chǎn)生一定的誤導(dǎo)宵膨。
▌目前三大主流計算方法
1.后一頁面打開時刻減去前一頁面打開時刻架谎,得到前一頁面的停留時長。這個方法有兩個明顯的不足:
1) 最后一個頁面的停留時間是訪問不到的辟躏,如果一共只有一個頁面谷扣,那么這個頁面停留再久也不會進(jìn)行統(tǒng)計;
2) 對于同時打開很多頁面的情況,則只有倒數(shù)第二個頁面會得到相對準(zhǔn)備的停留時長会涎,而其它所有中間被打開的頁面的停留時長都會被記錄為一瞬間裹匙,有可能就會被作為臟數(shù)據(jù)拋棄掉了。
2.通過心跳包定時向發(fā)送數(shù)據(jù)包末秃,為了不使客戶端或服務(wù)端的負(fù)載過重概页,數(shù)據(jù)包發(fā)送的間隔一般被控制在 15 至 30 秒之間。好處是結(jié)合頁面是否位于前臺练慕,可以更精確地計算所有頁面的真實被瀏覽的時長惰匙。不足則數(shù)據(jù)包發(fā)送的時間間隔決定了統(tǒng)計的精度以及數(shù)據(jù)上報的負(fù)載,越大的精度意味著越高的負(fù)載铃将。
3.主動在用戶主動關(guān)閉頁面時(onbeforeunload)發(fā)送數(shù)據(jù)包项鬼,通過關(guān)閉時間和打開時間之間的差值來獲取頁面停留時間。這樣做是為了解決第一點中只打開一頁時無法計算停留時長的問題劲阎,但這樣的風(fēng)險是并不能確保數(shù)據(jù)包發(fā)送100%成功绘盟。對于同時打開多個頁面的情況,無法準(zhǔn)確獲取用戶瀏覽時長的問題也依然沒有解決悯仙,用戶關(guān)閉某頁面的時間減去頁面被打開的時間龄毡,并不能真正體現(xiàn)用戶的瀏覽時間,只能體現(xiàn)頁面被打開的時間锡垄。另外沦零,如果用戶長期不關(guān)閉頁面,頁面的停留時長就會長得夸張偎捎,為了規(guī)避這個問題蠢终,也需要引入 session 或者其它約束。
▌主流計算方法的缺陷
市面上幾乎所有的統(tǒng)計方法都是在不精確的用頁面打開時長來充當(dāng)頁面瀏覽時長茴她。提到準(zhǔn)度和精度寻拂,又回到了數(shù)據(jù)分析中很經(jīng)典的討論,即:數(shù)據(jù)的質(zhì)量要與分析目標(biāo)結(jié)合丈牢,否則我們就會在無休止地追求極致的道路上迷失祭钉,為了提升 1% 的精準(zhǔn)度而投入不成比例的成本。
在進(jìn)行下一步的討論之前我們先看看以上的幾種計算方法中明顯的缺陷:
1.只瀏覽單頁時時長無法計算己沛;
2.精度和負(fù)載的平衡慌核;
3.多頁面瀏覽時長無法精確統(tǒng)計;
4.頁面被最小化或者不位于當(dāng)前Tab申尼。
▌考慮功能場景垮卓,選擇最經(jīng)濟(jì)的方法
那是否有一個成本可控又能規(guī)避掉以上幾種計算方法中明顯的缺陷的辦法呢?我們的思考如下:
由于網(wǎng)頁端沒有穩(wěn)定的網(wǎng)頁關(guān)閉的事件可以捕獲师幕,而且存在多個頁面并存的情況粟按,想獲取足夠精確的瀏覽時長心跳包看似是最好的方案诬滩。通過心跳包統(tǒng)計位于最前臺的頁面的時長,結(jié)合后一頁進(jìn)入時間及當(dāng)前頁關(guān)閉時間來對總時長進(jìn)行校準(zhǔn)灭将。為了得到更加精準(zhǔn)早期瀏覽時長疼鸟,在起始的30秒內(nèi)心跳包的發(fā)送頻率為5秒;30秒到90秒內(nèi)庙曙,發(fā)送頻率為10秒空镜;之后固定在15秒。心跳包對于長時間停留的捌朴,而沒有用戶交互的場景是非常好的解決方案吴攒,例如觀看視頻,但對于APP和網(wǎng)頁端來說男旗,那些長時間沒有操作行為的場景并不多見舶斧,對于少數(shù)打開但沒有操作的頁面,我們就認(rèn)為用戶沒有停留了察皇,所以從實際場景出發(fā),雖然心跳包更精準(zhǔn)泽台,但卻不夠經(jīng)濟(jì)了什荣。
所以,目前客戶端數(shù)據(jù)包上報成本依然還是一個影響體驗的因素的現(xiàn)狀下怀酷,我們沒有選擇將心跳包作為默認(rèn)采集的功能稻爬,默認(rèn)采集我們使用了打開及關(guān)閉時間做差的方案作為計算停留時長的默認(rèn)方案。
最后蜕依,應(yīng)用到實際的分析中桅锄,我們不能只看停留,還要看轉(zhuǎn)化样眠。這并不是本文的重點友瘤,但也拋出一種常見的場景,作為本文的結(jié)束檐束,以表達(dá)辫秧,數(shù)據(jù)脫離業(yè)務(wù)只是數(shù)字。
?歡迎試用易觀方舟