文章目錄
更新時間:2025年12月11日
這一篇介紹的是GTM裡的Consent Mode v2(意見徵求模式進階版)。
意見徵求模式共有基本版(v1)與進階版(v2),以下內容提到的「意見徵求模式」均指 v2。
什麼是意見徵求模式?
Cookie Consent Mode,也稱為Cookie Consent、Consent Mode,中文稱意見徵求模式。
它本質上是一套機制,加入Consent Mode的CMP(Consent Management Platform,同意管理平台) 可以將「使用者授權狀態」傳遞給Consent Mode,再由Consent Mode 轉換成「意見徵求參數」,供Google或GTM上的第三方追蹤碼使用。
Cookie Consent 和 CMP 的差別
許多人會把Cookie Banner誤以為是Consent Mode做的,但其實不是。
兩者關係如下:
CMP(同意管理平台)
- 顯示Cookie Banner,告知使用者會蒐集什麼、用途為何,讓使用者做出同意或拒絕
- 若CMP有加入Consent Mode機制 → 才能將授權資訊傳給Consent Mode
Consent Mode(意見徵求模式)
延伸閱讀:从GDPR、TCF、CMP到Cookie Consent
為什麼推出意見徵求模式?
合規需求(法律要求)
各國隱私法規要求在「儲存或分享使用者資訊」前,必須先取得同意,例如:
- GDPR(針對各個網站)
- DMA(針對大型平台,如 Google,從源頭要求)
協助GTM上第三方追蹤碼合規
不同 CMP 回傳授權資訊的方式不同,造成 GTM 难以統一處理。因此 Google 推出 Consent Mode 讓 CMP 透過一致格式回傳授權資訊,讓:
- Google 代碼
- GTM 內的第三方追蹤碼
都能以同一種參數格式判斷是否可以執行。
資料建模補回資料遺失(v2)
使用者拒絕追蹤會造成資料缺口,v2 可以透過模型補回約 60–70%。
使用者意見徵求參數(Consent Signals)
Consent Mode 的參數包含兩大類:
- 意見徵求參數(廣告/分析)
- 隱私權參數(功能/個人化/安全)
| 意見徵求參數 | 說明 |
|---|---|
| ad_storage | 是否可收集廣告相關資料(再行銷需此項) |
| ad_user_data | 是否可收集第一方使用者資料用於廣告(如 User ID) |
| ad_personalization | 是否可用於廣告個人化(再行銷需此項) |
| analytics_storage | 是否可收集分析相關資料(GA4 即需此項) |
| 隱私權參數 | 說明 |
|---|---|
| functionality_storage | 是否可啟用網站功能型儲存(如語言偏好) |
| personalization_storage | 是否可啟用內容個人化儲存(如推薦影片) |
| security_storage | 是否可啟用安全性儲存(如登入驗證、防欺詐) |
具體的邏輯是:CMP向Consent Mode傳遞授權訊息,Consent Mode會轉化為意見徵求模式參數’analytics_storage’: ‘granted’,可以直接被Google及GTM上第三方追蹤程式碼使用。
意見徵求模式的優點
- 統一第三方追蹤碼的合規機制:CMP 只要加入 Consent Mode → 即可統一回傳參數。
- 使用者拒絕時仍會送 non-cookie ping( v2 的關鍵差異):GA4 可用模型補回資料,可恢復約 60–70% 的資料量。
支援意見徵求模式的 CMP
目前常見的支援廠商包含:
Commanders Act、Consentmanager、Cookie Information、Cookiebot、Didomi、iubenda、LiveRamp、OneTrust、Osano、Sourcepoint、Usercentrics 等。
GA4 的「使用者意見徵求設定」自檢功能
GA4 裡有「意見徵求自檢工具」,在管理 → 媒體資源設定 → 資料收集與修改 →同意聲明設定
工具包含兩區:問題總覽和具體問題說明
問題總覽
可以看到“未在這項資源偵測到任何問題”

具體問題說明
依照清單修正即可。
在 GTM 設定意見徵求模式
Step 1:啟用意見徵求
GTM中管理 → 容器設定 → 勾選「啟用使用者意見徵求概覽」:

Step 2:在追蹤碼中設定意見徵求
每個代碼裡的 進階設定 → 同意聲明設定裡:

是否能執行追蹤碼,取決於這些參數是「granted」還是「denied」。
是否需要額外的使用者同意?
三個選項:
| 選項 | 說明 |
|---|---|
| 未設定(預設) | 不額外要求使用者同意 |
| 不需更多意見徵求 | 只依照現有 Consent Mode 資訊判斷 |
| 必須獲得更多意見徵求 | Tag 執行前必須再取得額外同意 |
一般建議使用 「不需更多意見徵求」。
如何查看授權狀態?
可以透過網路請求中的 gcs(v1) 與 gcd(v2) 參數查看授權情況:
gcs(v1)= Google Consent Status
格式:G1xy
- x = ad_storage
- y = analytics_storage
範例:
| 值 | 代表 |
|---|---|
| G100 | 尚未取得同意 |
| G110 | Ads 同意、Analytics 不同意 |
| G101 | Analytics 同意、Ads 不同意 |
| G111 | 全部同意 |
gcd(v2)= Google Consent Default
格式:1*<ad_storage>*<analytics_storage>*<ad_user_data>*<ad_personalization>* 其中*表示數字,意義未知,可能出現1或3,ad_storage、analytics_storage、ad_user_data和ad_personalization分別會有不同的值,表示不同的意思:
每個位置可能是:
| 值 | 說明 |
|---|---|
| l | 尚未設定 |
| p | 預設拒絕 |
| q | 預設拒絕,且使用者更新後仍拒絕 |
| t | 預設同意 |
| r | 預設拒絕,但使用者更新後同意 |
| m | 使用者拒絕後才設定 |
| n | 使用者同意後才設定 |
| u | 預設同意,但使用者撤回 |
| v | 預設同意且再次確認 |
常見問題FAQ
GA4與BigQuery資料不一致
因為:
- GA4 = 實際 ping + 模型補回
- BigQuery = 純 ping(真實資料)
所以一定不同。
GA4沒有資料
可能因 CMP 預設為「拒絕」,或使用者拒絕導致:
常見狀態:
- G100
- G110
代表不允許追蹤。



