SEM.tw
數據分析 · · 6 分鐘閱讀 · 138 次閱讀

GA4 跨域追蹤設定教學:讓多網域數據完整串連

教你設定 GA4 跨域追蹤,讓不同網域的使用者行為數據完整串連,不會被當成不同的訪客。

很多網站的結構比想像中複雜。你的主站可能是 www.example.com,購物車是 shop.example.comcart.otherdomain.com,結帳完成頁面是支付閘道的域名,部落格是 blog.example.com

從用戶的角度,這是一段連續的旅程。但從 GA4 的角度,每跨一個域名,預設就是一個新的工作階段(Session)、甚至一個新的用戶。這會造成什麼問題?你的轉換路徑斷裂,結帳頁面被算成「入口頁面」,Direct 流量莫名飆高,整個分析都失去意義。

跨域追蹤就是解決這個問題的設定。這篇把設定步驟、驗證方法、以及常見問題都整理清楚。

跨域追蹤問題示意圖(Session 斷裂 vs 完整追蹤對比)

1. 什麼時候需要跨域追蹤

不是所有涉及多個域名的情況都需要跨域追蹤。先判斷你的情況是否符合:

需要跨域追蹤的情況

  • 主站是 example.com,購物車或結帳在 store.example.com(注意:不同子域名預設也會斷裂,但 GA4 比 UA 更寬容,example.comsub.example.com 的 Cookie 在某些設定下可以共享,但仍建議明確設定)
  • 主站是 yourbrand.com,使用第三方電商平台(例如 yourbrand.myshopify.com
  • 使用第三方結帳或訂位系統(例如 checkout.payment-provider.com
  • 有多個獨立域名共用同一個 GA4 資源(例如 product-a.comproduct-b.com 都在同一個 GA4 資源下追蹤)

不需要跨域追蹤的情況

  • 所有頁面都在同一個域名下(包含子目錄),例如 example.comexample.com/shop/
  • 雖然有多個域名,但你為每個域名設了獨立的 GA4 資源,分開追蹤

如何快速判斷你有沒有跨域問題

在 GA4 的「頁面和畫面」報表裡,看看你的結帳頁面、感謝頁面這些本來應該是旅程中間/結尾的頁面,有沒有出現在「入口頁面」數據裡。如果有,幾乎可以確定你有跨域 Session 斷裂的問題。

一個典型案例:某旅遊預訂平台,主站是 travel.com,訂房系統在 booking.travel.com。設定跨域追蹤之前,GA4 顯示有 38% 的工作階段從 booking.travel.com 開始,但實際上那些用戶都是從主站點進來的,只是 Session 在跨子域名時斷裂了,讓 GA4 誤以為他們是「直接造訪訂房頁面」的。設定後,這 38% 的「Direct 入口流量」消失了,正確歸入了各自的流量來源。

2. GA4 跨域追蹤原理

要理解為什麼需要跨域追蹤,先了解 GA4 識別用戶的機制。

GA4 靠 Cookie 認識用戶。當用戶第一次造訪你的網站,GA4 在你的域名下寫入一個叫 _ga 的 Cookie,裡面存了一個匿名的 Client ID(例如 GA1.2.1234567890.1234567890)。這個 Cookie 讓 GA4 在用戶下次造訪時認出「這個人之前來過」。

但 Cookie 有個限制:Cookie 是綁定在特定域名下的,無法跨域存取。example.com 的 Cookie,otherdomain.com 的 GA4 追蹤碼讀不到。所以當用戶從 example.com 跳轉到 otherdomain.com 時,GA4 在新域名看不到 Cookie,就把這個用戶當成新的、Session 也重新開始。

GA4 跨域追蹤的解法:用 URL 參數傳遞身份資訊。

當你設定了跨域追蹤,GA4 會在用戶點擊前往其他域名的連結時,自動在連結 URL 後面加上一個 _gl 參數,裡面帶著用戶的識別資訊。目標域名的 GA4 追蹤碼讀到這個參數,就能識別這是同一個用戶、同一個 Session,不會重新計算。

這個 _gl 參數看起來像這樣:

https://otherdomain.com/checkout?_gl=1*abc123*_ga*NjE4...

用戶不會特別注意到 URL 裡多了這個參數,但 GA4 會用它來維持 Session 的連續性。

3. 設定步驟

GA4 的跨域追蹤設定在「資料串流」裡完成,不需要修改 GTM 或追蹤碼。

方法一:直接在 GA4 設定(推薦)

  1. GA4 → 管理 → 資料串流 → 點選你的網站資料串流
  2. 在「Google 代碼」區塊,點「管理 Google 代碼設定」
  3. 在「設定」頁籤,找到「跨網域評估」,點「設定」
  4. 在「將要使用的網域清單中新增網域」,輸入所有需要串連的域名

域名輸入格式:

  • 輸入主域名(不含 www 也不含 https://),例如 example.com
  • 如果有多個子域名,你可以用 contains: example.com 的匹配方式,讓所有包含 example.com 的域名都包含進去
  • 第三方域名也要加進來,例如 myshopify.com(或更精確地 yourbrand.myshopify.com
  1. 儲存

方法二:透過 GTM 設定

如果你用 GTM 管理 GA4,也可以在 GTM 的「GA4 設定」代碼裡設定跨域追蹤:

  1. 在 GTM 開啟你的「GA4 - 設定」代碼
  2. 找到「設定欄位」或「進階設定」
  3. 加入設定:
    • 欄位名稱:linker.domains
    • 值:["example.com", "otherdomain.com"](JSON 陣列格式)

但直接在 GA4 介面設定更簡單,兩種方法效果相同,建議選一種就好,不要重複設定。

重要:所有涉及的域名都需要安裝 GA4 追蹤碼(且評估 ID 要一樣,或都串接到同一個 GA4 資源)。只在 A 域名設定跨域追蹤,但 B 域名沒有裝 GA4,是沒有效果的。

GA4 跨域追蹤設定畫面截圖

4. 驗證方法

設定完成後,要驗證跨域追蹤是否正常運作。

方法一:觀察 URL 的 _gl 參數

開啟 Tag Assistant 偵錯模式,然後在你的網站上點擊一個前往其他域名的連結。觀察點擊後跳轉的 URL,應該在 URL 裡看到 _gl= 這個參數被自動加上去了。如果看不到 _gl 參數,代表跨域追蹤沒有正確觸發。

方法二:用 GA4 Debug View 追蹤 Session 連續性

  1. 開啟 Tag Assistant 偵錯模式
  2. 從主域名開始瀏覽,然後點連結跳轉到目標域名
  3. 在 GA4 Debug View 觀察:跳轉到新域名後,有沒有出現新的 session_start 事件?
  4. 如果跨域後沒有出現新的 session_start,代表 Session 維持連續,跨域追蹤成功
  5. 如果跨域後出現了新的 session_start,代表 Session 斷裂,需要重新檢查設定

方法三:查看報表中的結帳頁面入口比率

在 GA4 的「頁面和畫面」報表,觀察你的結帳頁面或感謝頁面的入口工作階段比率。設定跨域追蹤前後做比較,設定後這個比率應該大幅下降(從這些頁面「開始」的 Session 大減)。

5. 常見問題排查

問題一:設定了跨域,但 _gl 參數還是沒有出現

可能原因:

  • 目標域名不在 GA4 的跨域評估清單裡(確認域名完全匹配)
  • 連結是用 JavaScript 動態生成的 window.location 跳轉,而不是 HTML 的 <a href> 連結(GA4 的跨域追蹤對動態跳轉支援有限)
  • GTM 容器尚未發布最新版本
  • 使用了多個 GTM 代碼設定跨域,發生衝突

問題二:有設定 _gl 參數也出現了,但 Session 還是斷裂

可能原因:

  • 目標域名有 Cookie 安全設定,拒絕了 GA4 寫入 Cookie
  • 目標域名的 GA4 追蹤碼和來源域名不是同一個評估 ID(或不在同一個資料串流下)
  • 用戶使用了瀏覽器的隱私模式,Cookie 無法寫入

問題三:結帳是第三方平台,我沒辦法在上面加追蹤碼

這是很常見的限制,例如 Shopify、WooCommerce、或金流服務商的結帳頁面。幾個解法:

  • 確認第三方平台有沒有提供「自訂追蹤碼」或「Google Analytics 整合」選項,很多電商平台都有
  • 聯絡第三方平台,詢問是否支援 GA4 追蹤碼植入
  • 如果都不行,至少確保「感謝頁面」(通常會跳轉回你的域名)有正確設定轉換追蹤

問題四:設定後 Direct 流量仍然很高

跨域追蹤解決的是「同一次 Session 中跨域的問題」,但有些 Direct 流量的來源本來就不是跨域問題造成的(例如 LINE 訊息的連結、書籤、沒有 UTM 的 EDM)。如果跨域設定正確,但 Direct 流量還是高,建議在行銷活動的連結上加 UTM 參數,做進一步的流量分類。

6. FAQ

Q:子域名(例如 blog.example.com 和 www.example.com)也需要設定跨域追蹤嗎?

A:需要,雖然它們共享同一個主域名,但 Cookie 的作用域預設是精確域名,不是主域名。GA4 的跨域追蹤設定涵蓋子域名,只要把 example.com 加入跨域清單,GA4 就會自動處理所有包含 example.com 的子域名之間的跨越。

Q:跨域追蹤設定後,用戶的 Client ID 會改變嗎?

A:不會。跨域追蹤的目的是讓 GA4「認出」這是同一個用戶,維持同一個 Client ID 和 Session。_gl 參數傳遞的就是用戶的識別資訊,讓目標域名的 GA4 不需要重新生成一個 Client ID,而是沿用來源域名的那個。

Q:如果我有 3 個域名需要互相追蹤,需要在每個域名的 GA4 設定裡都加入其他兩個嗎?

A:只需要在你的 GA4 資源的「資料串流設定」裡設定一次就好。但要注意:三個域名都要安裝同一個 GA4 資源的追蹤碼,缺少任何一個,那個域名的頁面就無法被 GA4 正確識別用戶。


跨域追蹤設定完成後,建議重新檢查你的數據準確性,可以參考 GA4 數據不準確排查指南。基礎的追蹤碼安裝可以複習 GA4 安裝與基本設定教學。更多 GA4 知識可以看 GA4 完整入門指南