你一定遇過這個場景:月底對帳,GA4 說今天有 50 筆轉換,Meta 廣告後台說 68 筆,Google Ads 說 41 筆。三個數字,你該信哪一個?老闆問你「到底賣了幾筆」,你答不出來。
先給你一個會鬆一口氣的答案:它們全都沒說謊,也全都不會一樣。三個平台用不同的歸因窗、不同的去重邏輯、算不同的東西,本來就不可能對上。真正的問題不是「讓數字相同」,而是「把每個平台各自的追蹤接對、接乾淨,並且知道差異從哪來」。這篇就帶你一次接好,並學會怎麼對帳。
開工前:先把追蹤架構想清楚
最常見的錯誤,是把 GA4、Meta Pixel、Google Ads 三段代碼各自貼在網站不同角落,改一個要動三次,出錯無從查起。正確做法是以 Google Tag Manager(GTM)當中樞:網站只裝一段 GTM 容器碼,之後所有追蹤標籤(GA4 事件、Meta Pixel、Google Ads 轉換)都在 GTM 裡面管理與觸發。
架構記成一句話:網站推送資料層(dataLayer)→ GTM 監聽 → 分發給各平台。當結帳完成頁載入時,網站把訂單資訊推進 dataLayer(例如 transaction_id、value、currency、items),GTM 讀到後,同時觸發 GA4 的 purchase、Meta 的 Purchase、Google Ads 的轉換。一份資料,三個平台共用,這是數字盡量對齊的第一步。
GA4 電商事件一次接好
GA4 的電商核心是一連串標準事件,最關鍵的是 purchase。在 GTM 建一個 GA4 事件標籤,事件名稱填 purchase,並帶上這些參數:transaction_id(訂單編號,去重的關鍵)、value(訂單金額,不含運費為佳)、currency(幣別,例如 TWD)、以及 items 陣列(每項商品的 item_id、item_name、price、quantity)。
常見雷有三個:一是 value 帶錯,有人把含運費、含稅的金額灌進去,導致營收虛胖;二是 transaction_id 沒帶或重複,顧客重整感謝頁就多算一筆;三是幣別忘了填,GA4 會用預設幣別換算,金額全亂。設定完務必用 GA4 的 DebugView 實測一筆真訂單,看事件與參數是否正確進來。
Meta Pixel 與轉換去重
Meta 這邊在 GTM 裡放 Pixel 基底碼(觸發 PageView)+ 標準事件。電商最重要的兩個是 ViewContent(看商品)與 Purchase(完成購買)。Purchase 事件要帶 value、currency、contents(商品資訊)。
這裡有個進階但關鍵的動作:event_id 去重。如果你之後要接伺服器端的轉換 API(CAPI),瀏覽器端 Pixel 與伺服器端會各送一次 Purchase,Meta 靠相同的 event_id 判斷「這是同一筆」而合併,避免重複計算。所以從一開始就替每筆 Purchase 產生一個唯一 event_id(通常直接用訂單編號),瀏覽器端與伺服器端帶同一個值。這個習慣現在養成,未來接 CAPI 才不會爆量重複。
Google Ads 轉換一次接好
Google Ads 的轉換追蹤分兩塊:轉換動作設定(在 Google Ads 後台建立一個「購買」轉換,拿到 轉換 ID 與轉換標籤 conversion label)+ 網站觸發(在 GTM 用「Google Ads 轉換追蹤」標籤,填入該 ID 與 label,帶上訂單金額與 transaction_id)。
強烈建議一定要開強化轉換(Enhanced Conversions):它會把顧客結帳時填的 email、電話等資訊,先在瀏覽器端做雜湊(hash)加密後回傳,讓 Google 在跨裝置、Cookie 受限的情況下仍能比對到轉換,通常能救回一到兩成本來會遺失的轉換。設定重點:確認結帳頁抓得到已雜湊的顧客資料,且要在隱私政策揭露、取得同意。設定完用 Google Tag Assistant 檢查轉換是否確實觸發、金額是否正確。
為什麼三個平台的數字永遠對不起來
就算你上面全部接對,數字還是不會一樣,這是正常的。原因有四個,記起來就不會再被老闆問倒:
- 歸因窗不同:Meta 預設「點擊後 7 天+瀏覽後 1 天」,Google Ads 轉換窗可自訂(常見 30 天),GA4 又是另一套。同一筆訂單,某平台認、某平台已過期不認。
- 算的東西不同:Meta、Google Ads 只認「我這個平台廣告帶來的」轉換;GA4 算的是「所有渠道」的總轉換。廣告平台的數字加起來,往往大於 GA4 總數,因為它們會各自搶功勞(同一筆訂單 Meta 認、Google 也認)。
- 跨裝置:顧客手機看廣告、電腦下單,靠 Cookie 的追蹤會斷掉;有登入或有強化轉換的平台接得回來,沒有的就漏掉。
- 去重與時區:重複觸發、瀏覽器擋追蹤、平台時區設定(台灣 vs 太平洋時間)都會讓當日數字錯位。
破迷思:追求三個平台數字完全一致,是徒勞。正確心態是——以你自己的後台實際訂單數當唯一真值(single source of truth),各平台數字只用來看「趨勢」與「渠道相對表現」,而不是拿來互相對帳。
AI 幫你除錯追蹤設定
接追蹤最耗神的是除錯:明明裝了卻沒觸發、金額對不上、參數缺一半。AI 在這裡很實用。你可以把 GTM 的預覽模式(Preview)裡的 dataLayer 內容、或某個標籤沒觸發的錯誤截圖貼給 AI,請它幫你判讀是觸發條件寫錯、變數抓不到值、還是資料層根本沒推送。它也能幫你把一份 dataLayer 的 purchase 事件,比對 GA4 官方建議的參數結構,指出你少帶了哪些欄位。
但要誠實說清楚限制:AI 看不到你的網站實際運行狀態,它只能根據你貼的資訊推論。它可能給你語法正確、但不符合你網站實際結構的建議。所以 AI 給的每一段設定,都必須回到 GTM 預覽模式與各平台的偵錯工具(DebugView、Tag Assistant)實測驗證,不能貼上去就當作好了。追蹤這種東西,沒有實測過的設定,一律當作是壞的。
結尾劃重點
帶走三件事:第一,用 GTM 當中樞、用 dataLayer 餵資料,一份資料分發三平台,是數字對齊與日後維運的地基。第二,三個平台數字對不起來是正常且必然,因為歸因窗、算的範圍、跨裝置、去重全都不同;請用你後台的實際訂單當唯一真值,平台數字只看趨勢。第三,從第一天就養成 transaction_id 去重、Meta event_id 去重、Google Ads 開強化轉換三個好習慣,並且任何設定都要用偵錯工具實測過才算數。接對、接乾淨、知道差異從哪來,你就再也不會被三個數字搞瘋。