資料層 Data Layer, 存放各種訪客、網頁行為數據的地方




用LINE傳送
對惹... 不好意思只有行動裝置可以用 LINE 分享喔.. ^^" (若是用桌機或筆電會被帶走.. ~"~) introduction of data layer

說到資料層 Data Layer..

我們這幾週開始在盡力介紹與推廣 Google Tag Manager 之於 Google Analytics 的應用與便利性。只是目前發現一個狀況、是對於剛開始接觸 Google Analytics 的朋友來說當然可以參考前幾篇文章介紹來嘗試用 Google Tag Manager 來放大 Google Analytics 的分析可能。

但對原本就已經安裝 Google Analytics 追蹤碼已久的用戶而言,不論轉換成 Google Tag Manager 後是否真的那麼方便且更有效率,都會因為過去許多進階分析如事件追蹤碼安裝或相關電子商務分析(如下圖是之前安插在原本的 Google Analytics Tracking Code 的電子商務追蹤碼就沒用惹..),就都會需要重新安裝以及投入學習成本!!

addTransaction code

所以,我們前幾週已經開始介紹透過 Google Tag Manager 進行網站事件追蹤的參考流程。而今天,則是要跟各位先提到的是,未來若想要徹底發揮 Google Tag Manager 最大極限與分析可能,同時也是開始進入 Google Tag Manger x 電子商務網站分析數據後不得不知道的一個殺手級應用、資料層 Data Layer!!

剛剛提到如何利用 Google Tag Manager “預覽及偵錯” 模式測試與設定 “事件” 的做法與流程,是可以參考 “站外連結點擊事件追蹤 x GTM, 任意追蹤、比較頁面連結點擊數” 這篇文章介紹。

此外還有一個跟技術較沒有直接關係,但方才有稍微提到且在實際上進行分析與工具轉換時會面對的兩難就是,現在若要全面移除既有追蹤碼並改為 Google Tag Manager Container code, 一定會需要新增一些人力並投入對應的時間資源(且還有失去過往比較數據的可能..)。

故現在為了減少分析技術轉換所造成數據完整性的破損度,是會建議可以挑選國定假日(像是前幾天的連假時期),因為多半上網的人數會銳減,若再加上手腳夠快的話,就相信很有機會做到無痛轉換喔。

如下圖,目前臺灣大多網站一進入週末假日的流量就會大幅度減少 ← 出去玩都來不及了,誰還有那莓果時間上網..

(為了避免瀏覽文章的心情與思緒被打斷,這篇文章中若如上方有出現超連結,或許也可以先按著 Ctrl(或 ⌘ Command) 鍵再點選該連結。如此就可以先默默另開視窗,等待會有空或真的有需要時再到另一個頁籤查看喔!!)

the traffic dropped in holiday

那所謂資料層 Data Layer 是..

如同這篇文章的封面圖,資料層 Data Layer 就是一個可以傳送與存放各種網站行為數據的 “位置(層)” ,以便未來讓 Google Tag Manager 在設定條件符合時可以自由擷取、並傳送到各種 Google 應用工具如 Google Analytics & Adwords 等..(一大應用是以資料層 Data Layer 中變數與值為代碼觸發條件與分析對象)。

但會什麼會有需要這個存放數據的 “位置” 而不如過去是直接從程式碼送到 Google Tag Manager 就好,可參考 Google Tag Manager 說明中心所說。

using a data layer

如以上說明,就是提到了為什麼會說 Google Tag Manager 若能要搭配 Data Layer 才能發揮最大分析價值。而另一個重要考量也就是因為在網頁中很多資料都會動態更新,如頁面上發生的各種訪客使用行為:提交表單、交易等電子商務數據等。

那現在為了能夠更全面且準確的被 Google Tag Manager 擷取並傳送到 Google Analytics 以便進一步分析,就需要在訪客動作(事件)一產生時就將相關資料送到這 Data Layer, 未來也就可獲得最完整且確認的分析數據了。

因為這個資料層 Data Layer 並不像是有一個資料庫、檔案有一個實體的存放位置,而只是 Google 大大所提供的一個無形的層。

故就會有點像是我們在 “掌握代碼、觸發條件、變數,啟用 Google Tag Manager 就是現在” 文章中介紹 “變數” 時所比喻的 “專屬默契” 。

只不過現在透過程式傳送到資料層 Data Layer 的數據,更會比較像是我們與 Google Tag Manager 之間不會遺忘的共通 “記憶”。只要某記憶(數據)一產生,Google Tag Manager 就可以從中抓取並傳送到 Google 對應的分析工具報表中。


如何傳送數據到資料層 Data Layer

那現在若要將網站相關數據傳送到 資料層 Data Layer 主要是利用 JavaScript 如下圖。下圖為尚未為產生任何數據的空值。

an empty object

若是一般而言要傳遞數據到資料層 Data Layer 的程式碼如下。主要的搭配就是 dataLayer.push 加上 (變數名稱:值)。

variable name and value

也可以寫在行內標籤中傳送事件資料到資料層 Data Layer 如下。

event onclick example

然後有一相當重要的規範是在寫入資料層 Data Layer 時需要寫在 Google Tag Manager 容器的上方才會成功傳遞數據。

the data layer snippet is must called before the container code

順利將網頁的分析數據透過 “變數” 與 “值” 的型態送到 Data Layer 後,未來就可以利用 Google Tag Manager 進行抓取、設定。


在今天資料層 Data Layer之後…

只是認識或了解如何傳送資料到資料層 Data Layer 雖說還無法立即產生任何分析價值,但日後我們就可以盡可能深入研究資料層 Data Layer 與 Google Tag Manager 的應用與互動關係,了解如何傳送用戶瀏覽行為相關數據到資料層 Data Layer、並在資料層 Data Layer 自訂變數與觸發條件,甚至是如何利用之前也有提過的 “預覽及偵錯” 模式來確認資料層變數再到 Google Analytics 的各種進階分析..

但若是已經迫不及待想要了解更多的朋友,除了 Google 說明中心文章介紹外,“Google Tag Manager Data Layer explained like never before” 這篇文章中也有相當詳細的介紹。

這篇 Google Analytics 精選文章發表於2017 年 03 月 01 日 星期三

立即訂閱看見數據網電子報

數據變化萬千,跟著看見數據網從數據中洞察網站經營脈動、缺失與機會!!