追蹤設定

GA4棄單追蹤怎麼做?用GTM建好電商漏斗分析與排修順序

Open Data 4TW 編輯團隊 Open Data 4TW 編輯團隊
· · ga4, GTM 事件追蹤, 電商漏斗分析

這套棄單追蹤系統要回答哪些問題

GA4 棄單追蹤要先回答三件事:流失卡在哪一步、集中在哪一群人、差距大到該先修哪個環節。先把量測邊界定清楚,才不會把所有棄單都誤判成價格問題。

這一步要避免的誤判,是只看最終訂單數,卻分不出問題發生在購物車、結帳流程,還是付款完成前。

棄單率 vs 結帳流失率

購物車棄單率是從加入購物車或查看購物車開始,看有多少人最後沒有完成購買;結帳流失率則是從開始結帳後,觀察有多少人沒有走到 purchase。前者偏營運層,後者偏流程層。實務上把兩者混用,常會把頁面問題指派錯團隊。

最小可行 KPI

最小可行 KPI 不用多,但一定要能對應漏斗節點與分群。建議先固定同一個口徑,再看裝置、來源、新舊客差異。

指標 建議起點 用途 避免的誤判
購物車到結帳啟動率 view_cart 或 add_to_cart 看購物車頁是否把人推進下一步 把購物意圖不足誤認成結帳故障
結帳完成率 begin_checkout 看結帳流程是否順 把流程流失和流量品質混在一起
付款前流失率 add_payment_info 看付款選項與金流體驗 把付款失敗誤認成運費問題
分群差距 裝置/來源/新舊客 排修正優先級 全站平均掩蓋單一族群異常

先把 add_to_cart、begin_checkout、purchase 三個核心節點定好,再往下補 shipping 與 payment 的診斷層,判讀才不會失焦。不在這裡展開 GA4 基本介面與歷史差異。

先畫事件地圖與漏斗骨架

GTM GA4 漏斗設定的核心,是先畫出最小可行事件地圖:哪個事件代表哪一步、送哪些參數、什麼情況不送。先有骨架,才不會追一堆事件卻無法判讀。

這一步要避免的誤判,是事件名稱看起來很多,但實際上沒有形成可分析的漏斗。

必追事件

GA4 是接收與分析事件的工具,事件就是使用者做過的動作紀錄。電商棄單系統至少要把下表事件串起來。

事件名 代表步驟 用途 必備參數
view_item 看商品 判斷加購前摩擦 items、currency、value
add_to_cart 加入購物車 定義購物意圖 items、currency、value
view_cart 查看購物車 判斷購物車頁表現 items、currency、value
begin_checkout 開始結帳 切出結帳流程 items、currency、value
add_shipping_info 填配送資料 看配送阻力 items、shipping_tier、currency、value
add_payment_info 填付款資訊 看付款阻力 items、payment_type、currency、value
purchase 完成訂單 結帳終點與對帳 transaction_id、items、currency、value

可選診斷事件

可選事件用來縮小問題範圍,像是 remove_from_cart、add_coupon、login、view_promotion。這些事件不一定要先上,但當你懷疑優惠碼欄位、登入流程或促銷干擾時,它們會讓原因更清楚。我看過很多專案,真正卡住的不是流量少,而是事件太少,導致所有流失都長得一樣。

命名與參數規則

命名先用 GA4 recommended events,也就是 Google 已定義好的事件名稱,能減少報表切分成本。參數至少固定六個:items、value、currency、transaction_id、payment_type、shipping_tier。value 與 currency 要一路一致,transaction_id 只在 purchase 出現,而且一筆訂單只用一個值。這樣可避免同一張訂單被拆成多筆,或同名事件因參數缺漏失去比較價值。不在這裡展開全站互動事件大全。

GTM + GA4 前置設定與平台盤點

上 GTM 前先盤點誰已經在送事件。GA4 資料流是接收資料的入口,GTM 容器是管理派送規則的地方;若平台原生事件已存在,再重做一次最容易把 purchase 灌水。

這一步要避免的誤判,是把所有事件都交給 GTM,卻沒先確認平台或外掛已經送過什麼。

資料流、容器與權限

先確認一個正式資料流、一個測試資料流,Measurement ID 也就是 GA4 資料流編號要分開;GTM 至少要有可編輯容器、可發布版本、可看預覽模式的權限。若工程、行銷、代理商共用同一組正式權限,後續很難追出誰改了哪個事件。

平台是否已原生送事件

平台原生送事件與 GTM 自建事件,先選主來源,再補缺口,不要雙軌並行。

平台 常見原生狀況 GTM 建議補強 先查的風險
Shopify 常有 app 或原生整合送出 purchase 補自訂分群參數與 QA 同頁雙送 purchase
SHOPLINE 部分事件可由後台模組輸出 補 shipping、payment 細節 事件名與參數格式不一致
WooCommerce 多靠外掛送 GA4 先驗證外掛內容,再決定是否補 GTM 外掛更新後欄位缺值
自架站 通常需自建 dataLayer 用 GTM 完整接管事件邏輯 前端資料層格式漂移

測試/正式分流

測試環境要送到測試資料流,正式站才送正式資料流;同一容器也要用環境或變數切開。這樣才能放心驗證 begin_checkout、payment、purchase,不會把內部測試單混進正式報表。若基礎電商追蹤還沒補齊,可先對照 GA4 電商追蹤設定 與 GTM GA4 電商追蹤。不在這裡展開廣告平台串接細節。

用 GTM 實作棄單追蹤

用 GTM 實作棄單追蹤時,先用 dataLayer 提供商品與訂單資料,再用變數、觸發條件、標籤把事件送進 GA4。只要 purchase 去重沒做好,後面的漏斗分析都會偏掉。

這一步要避免的誤判,是事件有送出就當成完成,卻沒有檢查參數完整度與重複送出。

dataLayer 設計

dataLayer 是前端把商品、金額、訂單資訊丟給 GTM 的共用資料層。設計原則很單純:同一步驟只推一次、items 結構固定、value 與 currency 同步、purchase 一定帶 transaction_id。若 dataLayer 在頁面每次刷新都重推 purchase,GA4 很容易多算。

Variable、Trigger、Tag

Variable 是 GTM 讀資料用的欄位,Trigger 是事件何時送出的條件,Tag 是實際送到 GA4 的設定。建議用 dataLayer event 當觸發主軸,不要只靠按鈕點擊或網址規則。按鈕點了不代表步驟成功,thank you page 出現也不一定代表金流完成,這兩種做法都容易高估流程進度。

purchase 去重

purchase 去重至少做兩層:前端避免同一完成頁重送,GA4 端用 transaction_id 判斷同筆訂單。我的判斷會先看訂單流程類型,若回到完成頁會再觸發頁面載入,就不能只靠 page_view 判斷。

transaction_id 驗收

transaction_id 是訂單唯一識別碼,也是 purchase 去重的主鍵。驗收時至少檢查四件事:

  • 每筆 purchase 都有 transaction_id,不能空白。
  • 同一張訂單重新整理完成頁,transaction_id 不變,purchase 不重複。
  • 退款、取消、測試單有獨立規則,不混進正式訂單。
  • GA4 事件值與後台訂單編號能一對一對回。

若你要延伸看更完整的漏斗銜接,可接著參考 GA4 漏斗設定。不在這裡展開 gtag.js 手寫做法。

在 GA4 建立棄單漏斗與分群分析

GA4 棄單追蹤的分析層,要用 Funnel Exploration 把 view_cart 到 purchase 排成固定步驟,再依裝置、來源、新舊客切開看。只看總棄單率,通常找不到真正先修點。

這一步要避免的誤判,是全站平均看起來正常,但手機、廣告流量或新客其實已經明顯掉隊。

Funnel Exploration

Funnel Exploration 是 GA4 的漏斗探索報表,用來看每一步有多少人進入、流失多少。標準模板可設為:view_cart、begin_checkout、add_shipping_info、add_payment_info、purchase。若站點沒有 view_cart,也可用 add_to_cart 起算,但同一份分析裡口徑要固定。

開放/封閉漏斗

封閉漏斗適合檢查標準結帳路徑,能看出每一步的純流失;開放漏斗適合站內路徑較複雜、可從多入口進結帳的情境。若你要抓系統是否有結帳摩擦,先用封閉漏斗;若你要理解多入口內容頁如何導流,才用開放漏斗。

裝置/來源/新舊客分群

分群順序建議先看裝置,再看來源,最後看新舊客。手機結帳通常先暴露欄位過長、鍵盤遮擋、付款方式不明等問題;來源差異則能看出某些活動帶來低意圖流量;新舊客差距大時,多半與信任、註冊、付款習慣有關。若要銜接相鄰主題,可對照 購物車棄單漏斗 與 漏斗流失判讀,但這裡先聚焦在系統建置與讀法。

怎麼驗證資料是否可信

資料可信的最低標準有三個:DebugView 看得到即時事件、Tag Assistant 看得懂觸發順序、GA4 與後台能對得回大方向。只要 purchase 重複或漏送,漏斗判讀就不可靠。

這一步要避免的誤判,是看到報表有數字就相信,卻沒確認資料是正確送出還是錯誤放大。

DebugView

DebugView 是 GA4 的即時除錯畫面,用來看你剛剛送出的事件有沒有進站、順序對不對、參數齊不齊。驗收時至少跑一次完整流程:add_to_cart、begin_checkout、add_shipping_info、add_payment_info、purchase,並核對 value、currency、items、transaction_id。

Tag Assistant

Tag Assistant 是 GTM 的預覽除錯工具,用來檢查哪個觸發條件啟動了哪個標籤。若同一頁同時看到平台原生腳本與 GTM 都送 purchase,先停下來,不要急著發布。這是我最常見的灌水來源之一。

GA4 與後台對帳

GA4 要拿來看趨勢與流失步驟,後台才是訂單與營收真值。對帳看的是方向與差異型態,不是要求兩邊永遠完全相等。

症狀 先查哪裡 可能原因
purchase 明顯偏高 Tag Assistant、transaction_id 完成頁重整重送、平台與 GTM 雙送
begin_checkout 有資料,add_payment_info 幾乎沒有 結帳頁事件觸發條件 SPA 頁面未觸發、欄位送出條件太嚴
GA4 訂單數低於後台 Consent Mode、瀏覽器阻擋、跨網域設定 未同意追蹤、金流跳轉造成 session 斷裂
value 有值,items 空白 dataLayer 結構 商品陣列欄位名稱錯誤
  • QA 驗收清單:正式上線前至少完成一次完整下單測試。
  • 確認每個核心事件都能在 DebugView 看到。
  • 確認 Tag Assistant 只觸發預期標籤一次。
  • 確認 purchase 一定帶 transaction_id、value、currency、items。
  • 確認測試單不流入正式 GA4 資料流。
  • 確認 GA4 與後台在同一期間、同一時區下比對。

不在這裡只貼官方說明連結,重點是要能找出異常來源。

看到流失之後,下一步怎麼判斷修正優先級

看到漏斗流失後,先看掉點發生在哪一步,再看哪個分群最嚴重,最後才決定修正方向。先修哪裡,不是靠感覺,而是看流失節點是否集中又可被改動。

這一步要避免的誤判,是一看到棄單就先發折扣,卻沒先分清楚是運費、付款、註冊,還是手機體驗造成。

判讀決策樹可用這個順序:

  1. 若 view_cart 到 begin_checkout 掉得深,先查購物車頁資訊透明度、免運門檻、優惠碼干擾。
  2. 若 begin_checkout 到 add_shipping_info 掉得深,先查強制註冊、地址欄位、超商取貨流程。
  3. 若 add_payment_info 到 purchase 掉得深,先查 LINE Pay、信用卡、貨到付款等付款方式與金流錯誤。
  4. 若只有手機族群異常,優先修手機欄位、按鈕可見性、載入速度。

運費

若流失集中在 view_cart 或 begin_checkout 前段,常見原因是運費太晚揭露、免運門檻不清楚,或超商取貨條件放得太後面。這類問題屬於資訊揭露,不是付款問題。

付款方式

若 add_payment_info 到 purchase 掉得深,先看常用付款方式是否明確可見。台灣站點若 LINE Pay、信用卡分期、貨到付款或超商代碼繳費選項不清楚,流失通常會集中在付款前最後一步。

強制註冊

新客在 begin_checkout 前後掉得特別深,常是被要求先註冊會員。這種情況應優先比對新舊客差距;若舊客正常、新客異常,問題多半在信任門檻與流程阻力。

優惠碼

優惠碼欄位不是不能放,而是不要讓它成為結帳主視覺焦點。很多使用者看到優惠碼欄位會離站找折扣,這會拉高中段流失,卻不一定反映產品或價格本身有問題。

手機結帳

手機結帳若掉得比桌機深,先檢查欄位長度、鍵盤是否遮住 CTA、付款按鈕是否在首屏可見、超商門市選取是否容易返回。以台灣電商來看,手機問題常比折扣策略更早該修。不在這裡展開追回 EDM 或訊息腳本。

2026 常見限制與誤判風險

2026 做 GA4 棄單追蹤,正常差異主要來自 Consent Mode、跨網域與金流跳轉;不正常差異則多半是 purchase 重複、transaction_id 缺值或事件口徑混亂。GA4 是分析層,不是訂單後台。

這一步要避免的誤判,是把所有差異都當成設定錯誤,或反過來,把明顯異常當成平台限制。

Consent Mode

Consent Mode 是依使用者同意狀態調整追蹤行為的機制。若未同意分析追蹤,GA4 事件會變少,漏斗自然比後台小。這種差異是可預期的;但如果只有 purchase 特別少、其他事件正常,就要回頭查完成頁與金流流程。

跨網域與金流跳轉

結帳若會跳到第三方金流頁,再回到站內完成頁,跨網域設定不完整時,session 可能斷裂、來源可能被重設、purchase 可能漏記。正常現象是來源歸類偶爾有落差;不正常現象是 purchase 大量消失或集中重複。

何時才需要 BigQuery

BigQuery 是資料倉儲,適合裝超長歷史、複雜明細、跨來源對帳。若你現在的問題只是找出哪一步流失、哪個族群掉得深,GA4 漏斗探索通常已夠用。要等到你需要明細級事件留存、訂單與會員資料深度串接、或 GA4 介面抽樣與保存限制已影響判讀,再考慮延伸。這裡先守住實作邊界,不展開 SQL 與報表建模。

棄單率和結帳流失率差在哪裡?

棄單率通常看加入購物車或查看購物車後,有多少人最後沒買;結帳流失率則聚焦 begin_checkout 之後的流失。前者適合看整體購物意圖,後者適合找結帳流程問題。

GA4 棄單追蹤最少一定要追哪些事件?

最低建議追 add_to_cart、view_cart、begin_checkout、add_shipping_info、add_payment_info、purchase。若想更完整看加購前摩擦,可再補 view_item。

已經有平台原生 GA4,還需要用 GTM 嗎?

不一定。先盤點平台原生已送哪些事件、參數是否完整、purchase 是否可對帳;若只缺部分欄位或診斷事件,用 GTM 補強即可。最怕的是原生與 GTM 同時各送一份 purchase。

transaction_id 為什麼一定要有?

因為 transaction_id 是一筆訂單的唯一鍵,GA4 要靠它辨識 purchase 是否重複。沒有這個值,你很難穩定對帳,也無法有效排除重整完成頁造成的重送。

怎麼確認 purchase 沒有被重複送出?

先用 Tag Assistant 看同一流程是否只觸發一次 purchase 標籤,再用 DebugView 核對 transaction_id 是否只出現一次。最後拿後台訂單編號抽樣比對,確認同一訂單沒有多筆 purchase。

begin_checkout 有資料,但 add_payment_info 沒進來,先查哪裡?

先查結帳頁事件觸發條件,其次看頁面是否為單頁應用導致觸發失效,再看金流區塊是否延遲載入。很多情況不是使用者沒走到付款,而是事件根本沒在正確時機送出。

為什麼 GA4 的 purchase 和後台訂單數常常不同?

常見原因有三類:追蹤同意未開啟、跨網域與金流跳轉造成漏記、purchase 重複或缺值。GA4 是分析工具,後台才是訂單真值,所以要先判斷差異是正常邊界,還是設定異常。

棄單率分母該用 add_to_cart、view_cart 還是 begin_checkout?

看你要回答什麼問題。想看整體購物意圖流失,用 add_to_cart 或 view_cart;想看結帳流程本身,用 begin_checkout。重點不是哪個最好,而是同一份分析裡口徑要固定。

棄單漏斗先看裝置、流量來源,還是新舊客?

建議先看裝置,再看流量來源,最後看新舊客。裝置最容易先暴露手機結帳問題;來源能分出低意圖流量;新舊客則適合驗證註冊、信任與付款習慣差異。

add_to_cart 要不要標成 key event?

可以,但要先想清楚用途。若 add_to_cart 是你的重要經營節點,標成 key event 有助於快速觀察趨勢;若你只把它當漏斗中繼點,不一定要升成關鍵事件,避免報表重心跑掉。

Shopify / SHOPLINE / WooCommerce 的棄單追蹤差在哪裡?

差別主要在原生事件成熟度與可補強空間。Shopify 常見 app 或原生整合先送事件;SHOPLINE 常需補配送與付款細節;WooCommerce 多仰賴外掛,更新後更要重驗參數與 purchase 去重。

什麼情況才需要把棄單分析延伸到 BigQuery?

當你需要事件明細長期保存、跨系統對帳、會員與訂單深度串接,或 GA4 介面已不足以回答問題時,再延伸到 BigQuery。若現在只是要找出哪一步流失最嚴重,先把 GTM 與 GA4 的基本系統建穩更重要。

標籤
ga4GTM 事件追蹤電商漏斗分析結帳流失率棄單追蹤
Eric Chang
Eric Chang
SEO 數據分析與網站量測研究者

以官方文件、實際設定與量測結果整理 SEO 數據、網站追蹤與分析方法,並標示資料來源與判讀限制。