網(wǎng)站頁(yè)面瀏覽時(shí)長(zhǎng)≠停留時(shí)長(zhǎng) :一文讀懂差異了解最佳實(shí)踐

1 評(píng)論 23467 瀏覽 43 收藏 7 分鐘

網(wǎng)站頁(yè)面瀏覽時(shí)長(zhǎng)并不等于停留時(shí)長(zhǎng),所以在數(shù)據(jù)獲取階段,如果不能準(zhǔn)確的獲取到用戶在某個(gè)頁(yè)面的停留時(shí)長(zhǎng),那么對(duì)于后續(xù)結(jié)論也會(huì)產(chǎn)生一定的誤導(dǎo)。

從運(yùn)營(yíng)角度來(lái)看,用戶在網(wǎng)站停留時(shí)間,反映了網(wǎng)站黏性。一般情況下,用戶的需求與網(wǎng)站內(nèi)容匹配度越高,頁(yè)面瀏覽時(shí)間越容易聚攏在一個(gè)相對(duì)集中區(qū)間里,不會(huì)過(guò)短也不會(huì)過(guò)長(zhǎng)。

在評(píng)估網(wǎng)站推廣效果時(shí),若來(lái)自某推廣渠道的訪客頁(yè)面瀏覽時(shí)間集中在很短的區(qū)間內(nèi),則意味著該渠道的流量質(zhì)量過(guò)低。我們經(jīng)常會(huì)看到的轉(zhuǎn)化率就與頁(yè)面平均瀏覽時(shí)長(zhǎng)密切相關(guān),呈現(xiàn)一個(gè)正態(tài)分布的圖形。

所以在數(shù)據(jù)獲取階段,如果不能準(zhǔn)確的獲取到用戶在某個(gè)頁(yè)面的停留時(shí)長(zhǎng),那么對(duì)于后續(xù)結(jié)論也會(huì)產(chǎn)生一定的誤導(dǎo)。

目前三大主流計(jì)算方法

(1)后一頁(yè)面打開(kāi)時(shí)刻減去前一頁(yè)面打開(kāi)時(shí)刻,得到前一頁(yè)面的停留時(shí)長(zhǎng)。

這個(gè)方法有兩個(gè)明顯的不足:

  1. 最后一個(gè)頁(yè)面的停留時(shí)間是訪問(wèn)不到的,如果一共只有一個(gè)頁(yè)面,那么這個(gè)頁(yè)面停留再久也不會(huì)進(jìn)行統(tǒng)計(jì);
  2. 對(duì)于同時(shí)打開(kāi)很多頁(yè)面的情況,則只有倒數(shù)第二個(gè)頁(yè)面會(huì)得到相對(duì)準(zhǔn)備的停留時(shí)長(zhǎng),而其它所有中間被打開(kāi)的頁(yè)面的停留時(shí)長(zhǎng),都會(huì)被記錄為一瞬間,有可能就會(huì)被作為臟數(shù)據(jù)拋棄掉了。

(2)通過(guò)心跳包定時(shí)向發(fā)送數(shù)據(jù)包,為了不使客戶端或服務(wù)端的負(fù)載過(guò)重,數(shù)據(jù)包發(fā)送的間隔一般被控制在 15 至 30 秒之間。

  • 好處是結(jié)合頁(yè)面是否位于前臺(tái),可以更精確地計(jì)算所有頁(yè)面的真實(shí)被瀏覽的時(shí)長(zhǎng)。
  • 不足則數(shù)據(jù)包發(fā)送的時(shí)間間隔決定了統(tǒng)計(jì)的精度以及數(shù)據(jù)上報(bào)的負(fù)載,越大的精度意味著越高的負(fù)載。

(3)主動(dòng)在用戶主動(dòng)關(guān)閉頁(yè)面時(shí)(onbeforeunload)發(fā)送數(shù)據(jù)包,通過(guò)關(guān)閉時(shí)間和打開(kāi)時(shí)間之間的差值來(lái)獲取頁(yè)面停留時(shí)間。這樣做是為了解決第一點(diǎn)中只打開(kāi)一頁(yè)時(shí)無(wú)法計(jì)算停留時(shí)長(zhǎng)的問(wèn)題,但這樣的風(fēng)險(xiǎn)是并不能確保數(shù)據(jù)包發(fā)送100%成功。

對(duì)于同時(shí)打開(kāi)多個(gè)頁(yè)面的情況,無(wú)法準(zhǔn)確獲取用戶瀏覽時(shí)長(zhǎng)的問(wèn)題也依然沒(méi)有解決,用戶關(guān)閉某頁(yè)面的時(shí)間減去頁(yè)面被打開(kāi)的時(shí)間,并不能真正體現(xiàn)用戶的瀏覽時(shí)間,只能體現(xiàn)頁(yè)面被打開(kāi)的時(shí)間。另外,如果用戶長(zhǎng)期不關(guān)閉頁(yè)面,頁(yè)面的停留時(shí)長(zhǎng)就會(huì)長(zhǎng)得夸張,為了規(guī)避這個(gè)問(wèn)題,也需要引入 session 或者其它約束。

主流計(jì)算方法的缺陷

市面上幾乎所有的統(tǒng)計(jì)方法,都是在不精確的用頁(yè)面打開(kāi)時(shí)長(zhǎng)來(lái)充當(dāng)頁(yè)面瀏覽時(shí)長(zhǎng)。提到準(zhǔn)度和精度,又回到了數(shù)據(jù)分析中很經(jīng)典的討論,即:數(shù)據(jù)的質(zhì)量要與分析目標(biāo)結(jié)合,否則我們就會(huì)在無(wú)休止地追求極致的道路上迷失,為了提升 1% 的精準(zhǔn)度而投入不成比例的成本

在進(jìn)行下一步的討論之前我們先看看以上的幾種計(jì)算方法中明顯的缺陷:

  1. 只瀏覽單頁(yè)時(shí)時(shí)長(zhǎng)無(wú)法計(jì)算;
  2. 精度和負(fù)載的平衡;
  3. 多頁(yè)面瀏覽時(shí)長(zhǎng)無(wú)法精確統(tǒng)計(jì);
  4. 頁(yè)面被最小化或者不位于當(dāng)前Tab。

以心跳包為主線,對(duì)總時(shí)長(zhǎng)校準(zhǔn)

那是否有一個(gè)成本可控,又能規(guī)避掉以上幾種計(jì)算方法中明顯的缺陷的辦法呢?

我們的思考如下:

由于網(wǎng)頁(yè)端沒(méi)有穩(wěn)定的網(wǎng)頁(yè)關(guān)閉的事件可以捕獲,而且存在多個(gè)頁(yè)面并存的情況,想獲取足夠精確的瀏覽時(shí)長(zhǎng)心跳包看似是最好的方案。通過(guò)心跳包統(tǒng)計(jì)位于最前臺(tái)的頁(yè)面的時(shí)長(zhǎng),結(jié)合后一頁(yè)進(jìn)入時(shí)間及當(dāng)前頁(yè)關(guān)閉時(shí)間來(lái)對(duì)總時(shí)長(zhǎng)進(jìn)行校準(zhǔn)。為了得到更加精準(zhǔn)早期瀏覽時(shí)長(zhǎng),在起始的30秒內(nèi)心跳包的發(fā)送頻率為5秒;30秒到90秒內(nèi),發(fā)送頻率為10秒;之后固定在15秒。

心跳包對(duì)于長(zhǎng)時(shí)間停留的,而沒(méi)有用戶交互的場(chǎng)景是非常好的解決方案,例如:觀看視頻,但對(duì)于APP和網(wǎng)頁(yè)端來(lái)說(shuō),那些長(zhǎng)時(shí)間沒(méi)有操作行為的場(chǎng)景并不多見(jiàn),對(duì)于少數(shù)打開(kāi)但沒(méi)有操作的頁(yè)面,我們就認(rèn)為用戶沒(méi)有停留了。所以從實(shí)際場(chǎng)景出發(fā),雖然心跳包更精準(zhǔn),但卻不夠經(jīng)濟(jì)了。

所以,目前客戶端數(shù)據(jù)包上報(bào)成本依然還是一個(gè)影響體驗(yàn)的因素的現(xiàn)狀下,我們沒(méi)有選擇將心跳包作為默認(rèn)采集的功能,默認(rèn)采集我們使用了打開(kāi)及關(guān)閉時(shí)間做差的方案作為計(jì)算停留時(shí)長(zhǎng)的默認(rèn)方案。

最后,應(yīng)用到實(shí)際的分析中,我們不能只看停留,還要看轉(zhuǎn)化。這并不是本文的重點(diǎn),但也拋出一種常見(jiàn)的場(chǎng)景,作為本文的結(jié)束,以表達(dá),數(shù)據(jù)脫離業(yè)務(wù)只是數(shù)字。

 

本文由@Analysys易觀 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理 。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來(lái)自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 沙發(fā)。樓主,像這種多頁(yè)面的情況,沒(méi)有做心跳包的情況,停留時(shí)長(zhǎng)有沒(méi)有別的計(jì)算方法?

    回復(fù)