【GTM】使用 GTM 三步驟完成 跨網域追蹤 設定

這篇文章是使用 GTM(Google Tag Manager) 進行 跨網域追蹤 設定的筆記。
如果僅使用 GA(Google Analytics) 而沒有使用 GTM 做代碼管理,則需要另外處理/修改追蹤碼。

前幾天工程師突然和我說,他「建議」,是不是不同的網域應該要埋設不同的追蹤碼。我聽到時真的是覺得滿頭問號,我們不是只有一個網域嗎?然後我才知道,我一直以為是在子網域的另一個網站以及手機版網頁,竟然和我們的官網是同個層級的網域。

舉例來說,我一直以為我們的官網是 A 網站「aaa.com.tw」,但實際上是「www.aaa.com.tw」。而另一個 B 網站是「bbb.aaa.com.tw」,手機版則是「m.aaa.com.tw」和「mbbb.aaa.com.tw」。這四個網站都是在不同的網域,並非另外三個是在第一個網域下的子網域。

關於跨網域追蹤

這樣子會有什麼問題呢?

因為是不同的網域,GA 會將他們視為不同的網站,User 在從 A 網站進入到 B網站時,並不會被紀錄為網站內頁面切換的瀏覽,而是進入另一個網站,對 GA 來說,是 A 網站和 B 網站各自有一個 User (實際為同一 User),我們便無法追蹤到完整流程。

在 Google 提供的 Analytics (分析) 說明中有提到跨網域追蹤的簡介以及常用方法,其中關於子網域有寫到,如果已經使用 analytics.js 追蹤程式碼,在追蹤子網域時是不需要進行額外設定的。而多個網域的部份,則是建議設定跨網域追蹤來收集這些網域的資料,並傳送給同一個 Analytics (分析) 帳戶資源。

而在代碼管理工具說明注意事項又寫到,最理想的做法是為每個網域建立一個容器。不過如果網站上的使用者活動和代碼橫跨多個網域,建議只設定一個容器給所有相關網域使用。

什麼時候需要設定跨網域追蹤

  1. 使用流程橫跨網域
    我們公司的網站就是屬於這種情況,大部分的產品可以在 A 網站完成購買流程,但部份產品則是會連結到 B 網站完成後續購買步驟。
    ※許多使用第三方金流的購物網站也是此情況,需連結至付款頁面完成購買流程。
  2. 網站導流
    舉例來說,曾經待過一間公司為各個產品線別註冊不同網域,並在每個網站中互相放入其他產品線的連結,這時候就可以透過跨網域追蹤來蒐集流量資料。

步驟一:GTM 容器的 GA 通用代碼變數設定

※在此假設已在所有網頁使用 GTM 埋設同一組追蹤碼並傳送資料至 GA 帳戶資源。

這個步驟可以在 GA 通用代碼中的變數的部份進行設定並勾選「在這個代碼中啟用覆寫設定」,也可以在變數的地方直接設定。若是後者,如果有代碼使用到這個變數而沒有勾選覆寫設定,則會套用變數自身的設定。

cross-domain

打開更多設定,並且設定下列項目:

  • 要設定的欄位
    欄位名稱 allowLinker → 值 true
    欄位名稱 cookieDomain → 值 auto
  • 跨網域追蹤
    自動連結網域 → 輸入所有要追蹤跨網域資料的網域,使用半形的逗號「,」分隔

步驟二:設定參照連結網址排除清單

接著回到 GA,在資源的追蹤資訊→參照連結網址排除清單中 新增參照連結網址排除條件,將所有要追蹤跨網域資料的網域都新增在此。

如此一來在跨網站時 GA 便會視為同一個 User 的工作階段去做追蹤。

cross-domain

步驟三:設定資料檢視篩選器

這個設定是為了在資料檢視中能夠區分網頁是屬於哪個網域下的。例如,在要跨網域追蹤的兩個網站首頁都是「home」,原本在資料檢視中看到針對網頁「/home」的數據,在設定後就可以看出是「www.aaa.com.tw/home」還是「bbb.aaa.com.tw/home」。

到資料檢視→篩選器中 新增篩選器,在篩選器類型選擇自訂→進階,然後按照以下設定。

  • 欄位 A –> 擷取 A:
    主機名稱 = (.*)
  • 欄位 B –> 擷取 B:
    要求 URI = (.*)
  • 輸出至 –> 建構函式:
    要求 URI = $A1$B1
cross-domain

到此步驟已經設定完畢了,最後只需要檢驗是否設定成功。

驗證是否設定成功

驗證的方法很簡單,只要從一個網站中點選連結到另一個網站,看看網址後面是否有多一組參數 ?_ga=……一大串數字,這組參數就是 GA 傳送的 cid (client_id) 。

如果是使用 Chrome 瀏覽器的話,也可以透過 Google Tag Assistant ,確認一下是不是在所有網頁中 cid 都是相同的( Pageview Requests → URLs )。


我在最一開始接觸數位行銷時,並沒有使用 Google Tag Manager,只有使用 Google Analytics 做流量追蹤而已,但現在的我強烈建議使用代碼管理工具來輔助,透過在代碼管理工具裡做設定,可以讓你在埋設追蹤碼時大幅減少對工程師的依賴,也可以提高工作效率:D

一直過著無趣的生活,正嘗試用愛的力量豐富一切。夢想出一張嘴就能改變世界。

-

如果需要我幫忙,歡迎告訴我:)

在〈【GTM】使用 GTM 三步驟完成 跨網域追蹤 設定〉中有 3 則留言

  1. 關於子網域的說明有點不明白,和我之前認知不同..

    範例
    https://www.example.com
    example = 網域 (主域名) = https://example.com
    www = 子網域 = 舉凡主域名前有掛子域名,都是子網域 e.g. http://www.example.com、abc.example.com、123.example.com
    com =頂級域名

    aaa.com.tw = 主域名
    子網域
    http://www.aaa.com.tw
    bbb.aaa.com.tw
    m.aaa.com.tw
    mbbb.aaa.com.tw

    若是 GTM 或 GA要方便做跨網域追縱,不是用一組 GTM 一組 GA 比較好管理嗎 ?

    1. 哈囉!子網域是你的範例那樣沒有錯唷!XD
      文章的前兩段並不是在說明子網域,而是在說明我遇到的狀況~
      我們的網站是使用子網域「www.aaa.com.tw」
      所以其他站台「bbb.aaa.com.tw」、「m.aaa.com.tw」、「mbbb.aaa.com.tw」
      都不是「www.aaa.com.tw」的子網域,因此需要做跨網域追蹤
      實際上我們也是使用一組 GTM 和一組 GA 來做追蹤和管理喔~

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *