← → 翻页 · ESC 索引
Vol.04 · Part Four
01 / 22
GTM 實務演練 · Part 4 · 資料管理與品質控制

資料治理 × 品管紅線

讓追蹤從「會送資料」進化到
「送對、送準、合規不出包」的最後一哩。

Keyword·Data Layer ·Lookup Table ·Consent v2 ·Debug
Scope·5 章 + 2 演練 ·~3 小時
弄一下工作室 GTM 實務演練 · 資料管理與品質控制 Part 4 of 4
Opening · Manifesto
02 / 22
Why this part opens here
會「埋上」的人很多,
會「埋準埋穩」的人很少。
前者灌髒資料,後者給得起報表
—— Part 4 · 把追蹤交給能負責的人

GA4 的數據無法刪除、無法修改
送錯一次就是一輩子的雜訊。

Part 4 · Opening GTM 實務演練
This Part · Outcomes
03 / 22
Learning Outcomes · 三小時帶走

三件事,離開教室就能交付

不只把代碼埋好,更要說得出怎麼證明它對

Outcome 01
01
看懂 Data Layer 與 Lookup Table,把「網址」翻成業務語言
Outcome 02
02
建立預覽 → 發布 → 還原的 SOP,並補齊 Consent v2 合規底線。
Outcome 03
03
5 層 Debug 與 GA4 DebugView,把「事件沒進」三分鐘定位
Part 4 · 5 章 + 2 演練 4-1 / 4-2 / 4-3 / 4-4 / 4-5 / PRAC
Act I · Unit 4-1
04 / 22
Chapter 4.1 · The Data Layer

網頁的地下通道

分水嶺的一節 ——
學會這個,才追得到訂單金額會員等級商品分類

3 Slides·Concept + Hands-on ·~30 min
Act I · Data Layer Unit 4-1
4-1 · The Restaurant Metaphor
05 / 22 講義 · 4-1
Step 01 · 一句話搞懂 Data Layer

GTM 是櫃檯,網頁是外場

沒有 Data Layer · 偷看模式
GTM 跑去客人桌上看吃了什麼
只追得到看得見的:按鈕文字、頁面網址、Click ID。金額會員等級商品分類—— 通通看不到。
Result·表面點擊
有 Data Layer · 點餐單模式
外場主動寫一張單送到櫃檯
網頁把 price: 1500item_name: "T-shirt"user_tier 這些業務欄位一次推給 GTM,櫃檯讀就好。
Result·業務欄位

外場寫得越完整,櫃檯越不用猜—— 報表也就越乾淨。

Unit 4-1 · The Metaphor Push · Don't Peek
4-1 · Real Data Layer Sample
06 / 22 講義 · 4-1
Step 02 · 預覽模式打開來看

GTM4WP 已經幫你寫好一大堆

到測試站文章頁(不是首頁)→ Tag Assistant → Data Layer 分頁

// Data Layer 分頁裡,你會看到:
{
  "pagePostType": "post",
  "pagePostCategory": "行銷科技",
  "pagePostAuthor": "admin"
}
常見地雷:在首頁看不到 pagePostCategory—— 因為首頁是 WordPress 的 page 而不是 post,沒有分類欄位。請進文章頁
Unit 4-1 · Inspect Preview → Data Layer 分頁
4-1 · Build a DLV
07 / 22 講義 · 4-1
Step 03 · 接收暗號 · 建立資料層變數

DLV 五步驟,一次寫對

Pipeline · 變數 → 對應欄位
01
新增變數
變數 → 使用者定義 → 新增
02
選類型
變數類型選 資料層變數(Data Layer Variable)。
03
填名稱
pagePostCategory —— 大小寫一字不差
04
版本 2
Data Layer 版本保持 v2,支援巢狀結構。
05
命名儲存
命名慣例 DLV - 文章分類,方便事後辨識。

建好 DLV 後,所有 GA4 事件參數都能直接引用 {{DLV - 文章分類}}

Unit 4-1 · DLV Recipe 名稱 · 大小寫 · 版本
Act II · Unit 4-2
08 / 22
Chapter 4.2 · The Lookup Table

把網址翻成人話

同一份 GA4 報表,
讀得懂的人 30 秒抓到重點,讀不懂的人翻半小時。

3 Slides·Naming + Setup ·~25 min
Act II · Lookup Table Unit 4-2
4-2 · Messy vs Clean Report
09 / 22 講義 · 4-2
Step 01 · 一份報表 · 兩種命運

網址送進去 vs 名稱送進去

Bad · 直接丟 Page Path
/contact-us-2026-v2/
/request-quote-main/
/support-center/
難讀、難對齊;網址一改歷史報表立刻斷。
Result·看不懂的雜訊
Good · 用 Lookup 翻譯
一般聯絡表單
報價申請
售後服務維修
老闆打開即懂;網址改了只要回 GTM 改對照表,不動代碼
Result·業務語言報表

乾不乾淨,差在一個變數

Unit 4-2 · Naming Matters Translate · Don't Dump
4-2 · Lookup Mapping
10 / 22 講義 · 4-2
Step 02 · 對照表長這樣

左邊填網址,右邊填名字

Input · 當 Page Path 是
Output · 就把這個變數的值變成
說明
/contact/
一般聯絡表單
主聯絡頁
/request-quote/
報價申請
前期客
/support/
售後服務維修
既有客
Default Value
其他表單
兜底值
必勾「設定預設值」:不勾的話,遇到不在清單上的頁面就送空字串,GA4 報表會多一列空白,難看又難解。
Unit 4-2 · Mapping Table Default · 兜底是基本功
4-2 · Setup Recipe
11 / 22 講義 · 4-2
Step 03 · 三步建立查表變數

Lookup Table 三步設定

Pipeline · Input → Mapping → Plug-in
01
選 Input
變數類型 → 對照表(Lookup Table),Input Variable 選 {{Page Path}}
02
填對照
逐列「新增列」,左欄填網址、右欄填可讀名稱。勾預設值
03
接 GA4
回 GA4 事件代碼,新增參數 form_name = {{Lookup - 表單名稱}}
命名慣例:所有 Lookup Table 一律以 Lookup - 開頭,跟 DLV、CSS Selector 區隔。未來找變數不用猜。
Unit 4-2 · Setup Pipeline Input · Map · Plug-in
Act III · Unit 4-3 · 4-4
12 / 22
Chapter 4.3–4.4 · Governance & Compliance

治理紅線

發布前的 SOP、寫得清楚的 Release Note、
還有 2024/3 後跨境一定要的 Consent Mode v2。

4 Slides·SOP + Compliance ·~50 min
Act III · Governance Unit 4-3 · 4-4
4-3 · Preview Triage
13 / 22 講義 · 4-3
4-3 · 沒觸發時,三步排查

Tags Not Fired,看紅叉叉

Preview 是你的沙盒—— 任何修改先回沙盒跑一次。

Pipeline · Event → Tag → Trigger
01
點 Event
在左側時間軸點下你剛剛操作的事件(Click / Form / Page View)。
02
展 Tags
右側切到 Tags 分頁,往下找 Tags Not Fired,點開可疑代碼。
03
看紅叉叉
展開 Firing Triggers,紅色叉叉直接告訴你哪一條過濾條件沒滿足。
最常見原因:Click Text 設「馬上購買」,但網頁實際寫「立即購買」—— 一字之差就不 fire。
Unit 4-3 · Triage Event · Tag · Trigger
4-3 · Release Note Template
14 / 22 講義 · 4-3
4-3 · 發布前最後一關

版本說明,絕對不要空白

「還原」這個救命按鈕,建立在版本名稱上—— 沒寫名稱,明天炸了你也找不到回家的路。

Release Note · 範本
版本名稱:v1.2 - 新增 SureForms 追蹤與對照表
說明
  1. 新增 generate_lead 事件
  2. 加入 Lookup Table 處理表單網址
  3. 影響範圍:聯絡頁、報價頁、維修頁
三段式
動詞 + 對象 + 範圍—— 半年後自己看也讀得懂。
Why · What · Where
Unit 4-3 · Release Note Future-self readable
4-4 · Consent Mode v2
15 / 22 講義 · 4-4
4-4 · 2024/3 之後跨境必補

Advanced vs Basic,差在哪

歐盟 GDPR 要求主動同意才追蹤。沒做 Consent v2,廣告再行銷清單不再累積

模式 · 階段
Tag 行為
適用
Advanced · 同意前
Tag 仍載入,只送 cookieless ping—— 給 Google 模型估算流量。
主流選擇
Advanced · 同意後
完整 Tag 行為,帶 cookie 識別 —— 行銷再行銷清單正常累積
同 Tag · 兩階段
Basic · 同意前
Tag 根本不載入,最保守、但拒絕者完全無數據。
合規優先
v2 新旗標
ad_user_data + ad_personalization—— 兩個都 granted,再行銷才累積。
EEA 強制
Unit 4-4 · Consent States v1 ≠ v2 · 跨境必補
4-4 · GTM Setup & CMP
16 / 22 講義 · 4-4
4-4 · GTM 設定三步曲

Default → Init → Update

Pipeline · 三步上線
01
開 Overview
容器設定 → 啟用同意設定覆寫,每個 Tag 多出 Consent Settings 分頁。
02
Init Tag
Custom HTML,類型 Consent Initialization,預設全部 denied。觸發 All Pages(特殊)。
03
Update
使用者按「接受」時,gtag('consent','update',...) 把四個旗標改 granted
不想自己寫
CookieYes(中文友善)/ Cookiebot(Google 認證)/ OneTrust(企業級)—— 都有 GTM 範本,貼上就行。
CMP
⚠ 常見漏洞
只設 GA4/Google Ads,忘了 Meta Pixel—— 拒絕者照樣被 Pixel 抓,最高罰營業額 4%。
Pixel 也要管
Unit 4-4 · Setup & CMP v2 三旗標 · 別漏 Pixel
Act IV · Unit 4-5 · PRAC
17 / 22
Chapter 4.5 + PRAC · Debug & Acceptance

除錯 ×驗收

事件沒進,三分鐘定位是哪一層出問題。
從本機沙盒到 GA4 報表,整段交付給客戶。

4 Slides·Debug + Workflow + GA4 ·~50 min
Act IV · Debug & Hand-off Unit 4-5 · PRAC4-1 · PRAC4-2
4-5 · 5-Layer Debug
18 / 22 講義 · 4-5
4-5 · 從瀏覽器逐層往後

五層排查順序,不要亂跳

單靠 GTM Preview 不夠 —— 沒收到?trigger、Tag、平台、Request、後端,一層一層剝

L1 · dataLayer
Console 打 dataLayer—— 事件 push 進來了嗎?欄位名對嗎?
DevTools
L2 · GTM
Preview / Tag Assistant —— Trigger 觸發?Tag fire?Variable 取值對嗎
GTM
L3 · 平台接收
GA4 DebugView · Meta Pixel Helper · TikTok Events Manager —— 平台真的收到了嗎
Platform
L4 · Request
DevTools Network 過濾 collect / tr—— HTTP payload 對嗎
Network
L5 · CAPI
Server log · Meta Test Events —— 後端 API 接到嗎?dedup 配對成功?
Server

原則:L1 沒事就往 L2 找,L3 沒收到就回 L4 看 request—— 不要跳。

Unit 4-5 · 5 Layers 由近到遠 · 逐層往後
4-5 · Platform & Network Tools
19 / 22 講義 · 4-5
4-5 · 平台層 · Network 過濾速查

L3 / L4 工具,對症下藥

L3 · GA4 DebugView
debug_mode
Preview 模式自動加 debug flag —— Preview 期間的事件幾秒內會出現在 DebugView。
L3 · Meta Pixel Helper
red / yellow / green
紅 = 錯,黃 = 警告(常見 AEM 未設定),綠 = OK。match quality 一眼看完。
L4 · DevTools Network
collect · tr?
GA4 過濾 collecten / ep.xxx / tid;Meta 過濾 tr?ev / cd[value] / eid
疑難雜症四連:(1) GA4 沒進 → 對 tid;(2) Meta value=0 → DLV 取不到值;(3) Pixel fire 兩次 → 重複 Tag;(4) CAPI 跟 Pixel dedup 失敗event_id 必須完全一樣(含空白大小寫)。
Unit 4-5 · Tools Cheatsheet 對 tid · 比 eid · 看 ep
PRAC4-1 · Workflow Checklist
20 / 22 講義 · PRAC4-1
演練 1 · 從需求到上線 · 5 步驟

今日情境:預約課程體驗表單追蹤

客戶需求:表單送出後出現「感謝你,我們將盡快與你聯繫。」每週幾人送出?兩兩一組,照清單跑完。

01 · 定義轉換
感謝字樣出現(元素可見度)還是表單 ID?本情境用元素可見度
Define
02 · 開變數
變數 → 內建變數,確認 Element Visibility 全部開啟。
Variables
03 · 建觸發
元素可見度,CSS 選擇器指感謝訊息,勾「DOM 變更時觀察」
Trigger
04 · 預覽驗
Tag Assistant 預覽 → 送表單 → 確認 generate_lead Fire。沒 fire 回頭調 selector。
Preview
05 · 寫版本
版本名稱:「新增:預約表單轉換追蹤(generate_lead)」,發布後到 PRAC4-2 驗收。
Publish
PRAC4-1 · Hands-on Define · Var · Trigger · Preview · Publish
PRAC4-2 · GA4 Acceptance
21 / 22 講義 · PRAC4-2
演練 2 · GA4 報表驗收 · 兩種時機

即時驗收 vs 標準驗收

即時 · DebugView
發布後幾秒看到
管理 → 資源欄位 → DebugView。Preview 開著就有 debug flag,第一道驗收用這個。
等待·秒級
標準 · 事件報表
24–48 小時後驗
報表 → 互動 → 事件。新事件首次延遲 24 小時,之後 4–8 小時。對量、確認觸發合理。
等待·次日 / 隔日

交付給客戶前,兩種都跑一次—— 才算完整收尾。

PRAC4-2 · Acceptance DebugView · 事件報表
Part 4 · Wrap
22 / 22
End of Part 4 · Course Complete

主導權留在你手上

你已經走過 LocalWP 沙盒、GTM 容器、
事件追蹤、資料層、Lookup、Consent v2、五層 Debug——
整段流程都能自己跑

Part 4 Done·4-1 / 4-2 / 4-3 / 4-4 / 4-5 ·PRAC4-1 / PRAC4-2
Next Step·真實專案 · 真實流量 · 真實報表