utm_nooverride與Universal Analytics不兼容
在去年HubSpot One的文章《網站分析中那些被“錯愛”的訪問來源》中,我們分享了跨站跟踪的各種場景和解決方法,老闆再也不會說我的推廣不轉化啦!其中傳統的Classic Google Analytics使用的utm_nooverride=1這樣方便的參數在Universal Analytics中已經不適用。
可是跨站訪問和離站回訪的情況在我們日常分析中比比皆是,如第三方登錄,第三方支付,更改密碼,有沒有一種方法可以依舊使用utm_nooverride=1這樣方便的解決重複統計訪問的問題呢?
今天介紹的就是David Vallejo提供的這種通過GTM來解決的方法,只需兩分鐘,你就可以讓utm_nooverride起死回生。
新建變量QS – utm_nooverride
首先要做的是在Google Tag Manager中新建URL類型的變量,這個變量的作用是自動獲取到URL後的utm_nooverride參數的值。如果有一個鏈接它指向的網址為https://hubspot.one/?utm_nooverride=1 ,那麼當用戶點擊鏈接後著陸到HubSpot One的網站時,該參數的值“1”便被記錄到QS – utm_nooverride這個變量中。
新建變量調整referer
第二步是根據不同的QS – utm_nooverride的值來調整referer的值。這個過程會判斷剛才保存的值是否為“1”。代碼如下:
function(){if({{QS - utm_nooverride}}=="1"){return document.location.origin;}else{return document.referrer;}}
如果值為“1”,那麼就返回目前網站的首頁,也就是document.location.origin。在我們上面的例子中它會是https://hubspot.one/
如果值不為“1”,那麼就返回現有的referer。即document.referrer。
把更新後的referer傳給GA
最後一步便是把剛才根據參數判斷過的新referer的值傳遞給Google Analytics。這樣如果URL後面跟上了utm_nooverride=1這個參數那麼GA便會把它當成一個來自自己網站首頁的訪問。這樣如果你此時正有一個未過期的會話,你就不會重新開啟一個新會話。
總結
本篇我們通過一個小教程介紹了解決用戶短暫離站造成的訪問來源失準的問題。這個方法相當簡單,你只要經過部署後把返回網站的URL都加上utm_nooverride=1便可。這樣你的轉化就不會都來自支付寶,你的回訪就不會都來自微信登錄頁面了。
最後,為什麼我們一會說referrer一會說referer呢?因為HTTP協議中的referer從一開始就被拼錯了,所以久而久之就成為“都對”了。