GTM 表單追蹤是什麼?先釐清 GTM、GA4 與表單事件的關係
GTM 表單追蹤是用 Google Tag Manager 判斷表單完成,再把表單送出事件送到 GA4。GTM 管理追蹤碼與觸發條件,GA4 負責接收與分析。
很多人搜尋 gtm,是想知道 Google Tag Manager 能不能幫網站記錄表單送出。答案是可以,但要先分清楚兩個工具的角色:GTM 是追蹤碼管理工具,GA4 是資料分析工具。GTM 負責在正確的時機送出事件,GA4 負責把事件整理成報表、受眾、重要事件或轉換資料。
如果把 GTM 當成報表工具,後面很容易設定錯方向。例如在 GTM Preview 看到代碼觸發,只代表網站端有把事件送出去;真正要確認表單送出事件有沒有進 GA4,還要看 DebugView、即時報表與事件名稱是否一致。
| 項目 | GTM 的角色 | GA4 的角色 |
|---|---|---|
| 主要用途 | 管理追蹤碼、代碼、觸發條件與變數 | 接收事件資料,整理成報表與分析維度 |
| 表單追蹤 | 判斷何時發生表單送出 | 記錄表單事件名稱、參數與來源頁面 |
| 除錯重點 | Preview 中代碼是否觸發 | DebugView 是否收到事件 |
GTM 負責什麼?
GTM 負責把追蹤邏輯集中管理。你可以在 GTM 裡建立代碼,設定觸發條件,使用變數判斷表單 ID、頁面 URL、按鈕文字或 dataLayer 傳來的事件。這讓行銷與網站管理者不用每次都直接改網站程式碼。
但 GTM 只是負責觸發與送出,它本身不會產生 GA4 報表。Eric Chang 在檢查表單追蹤時,通常會先確認「完成表單」這件事在網站上到底會留下什麼訊號,再決定該用成功頁、Form Submission,還是 dataLayer。
GA4 負責什麼?
GA4 負責接收 GTM 送出的事件資料。表單送出可以被記成 generate_lead、form_submit 或其他全站一致的事件名稱,再搭配 form_id、form_name、page_location 等事件參數。
如果網站還沒有 GA4 基礎安裝,應先處理 GA4 安裝教學。表單追蹤建立在資料串流與 Measurement ID 正確的前提上,否則 GTM 端設定再完整,GA4 也可能收不到事件。
表單送出為什麼要做事件追蹤?
表單送出通常代表詢問、預約、註冊、下載或名單取得。只看頁面瀏覽,無法判斷使用者是否真的完成表單;只看廣告點擊,也無法知道流量是否產生有效互動。
表單送出事件能回答三個實務問題:哪個頁面帶來表單、哪張表單被送出、事件能不能作為 GA4 重要事件或 Google Ads 轉換基礎。表單追蹤做得好,後面的 SEO、廣告、內容頁成效判讀才有資料可用。
開始前先判斷:你的表單適合用哪一種追蹤方式?
表單追蹤方式取決於送出後會不會跳到成功頁、GTM 是否抓得到 submit,以及網站是否使用 AJAX、SPA 或第三方嵌入表單。
不要一開始就進 GTM 建代碼。表單追蹤最常出錯的地方,不是少勾了某個選項,而是方法選錯。能用成功頁判斷完成時,通常比按鈕點擊穩定;原生表單可以測 Form Submission;AJAX 或 SPA 表單則常需要工程師推送 dataLayer 自訂事件。
| 表單情境 | 建議方法 | 成功判斷 | 主要風險 |
|---|---|---|---|
| 送出後跳到 thank you page | 成功頁 URL 追蹤 | 使用者進入指定成功頁 | 成功頁可被直接訪問,可能誤記 |
| 原生 HTML 表單送出 | Form Submission 觸發條件 | GTM 偵測到表單 submit | 不是每種表單都能被原生偵測 |
| AJAX、SPA、彈窗或第三方嵌入表單 | dataLayer 自訂事件 | 前端在成功回應後推送事件 | 需要工程協作與事件規格 |
| 只能抓送出按鈕 | 按鈕點擊備案 | 使用者點擊指定按鈕 | 點擊不等於表單成功 |
有成功頁時,優先用成功頁追蹤
如果表單送出後會跳到固定成功頁,例如 /thank-you 或 /contact-success,可以用 Page View 觸發條件判斷完成。這種方式容易理解,也比較不受表單外掛或 JavaScript 架構影響。
成功頁追蹤的關鍵是「只有真的完成表單的人會看到這個頁面」。如果成功頁可以從網址列直接開啟,或多張表單都導到同一個成功頁,事件資料會變得不乾淨。
沒有成功頁時,檢查 GTM Form Submission 是否可用
沒有成功頁,但表單是傳統 HTML form submit,可以測試 GTM 的 Form Submission 觸發條件。這個方法會在表單送出時觸發代碼,並可使用 Form ID、Form Classes、Form URL 等內建變數限縮條件。
判斷方式很直接:進入 GTM Preview,實際填表送出後,事件時間軸要看到 Form Submit,且 GA4 Event 代碼要在該事件下觸發。
AJAX 或 SPA 表單,優先用 dataLayer 自訂事件
AJAX 表單常見於 WordPress 表單外掛、React、Vue、Next.js、單頁活動頁與彈窗表單。這類表單送出後頁面不一定重新載入,GTM 的原生 Form Submission 也不一定偵測得到。
比較穩定的做法,是請工程師在表單真正送出成功後推送 dataLayer.push()。GTM 再用 Custom Event 觸發 GA4 事件,資料會比單純抓按鈕更接近真實完成。
按鈕點擊只能當備案,不能直接等同表單成功
只追蹤送出按鈕點擊,最多只能代表使用者嘗試送出。欄位驗證失敗、Email 格式錯誤、必填欄位漏填、後端回傳失敗,都可能發生在點擊之後。
只靠按鈕點擊回報表單成效,通常會把表單錯誤、重複點擊和真正名單混在一起。只有在網站沒有成功頁、無法偵測 submit、也暫時無法請工程師加 dataLayer 時,才把按鈕點擊當短期備案。
GTM 表單追蹤的三個核心物件:代碼、觸發條件、變數
GTM 表單追蹤由代碼、觸發條件、變數組成:代碼送事件到 GA4,觸發條件決定何時送出,變數補上表單與頁面細節。
在 GTM 介面裡,代碼是 Tag,觸發條件是 Trigger,變數是 Variable。表單追蹤不是只建一個 GA4 Event 代碼就結束,還要讓 GTM 知道什麼情況算完成,以及送到 GA4 的事件要帶哪些資訊。
| GTM 物件 | 表單追蹤中的作用 | 常見設定範例 |
|---|---|---|
| 代碼 | 把表單送出記成 GA4 事件 | GA4 Event,事件名稱為 generate_lead |
| 觸發條件 | 判斷何時送出事件 | Page View 包含 /thank-you,或 Form Submission |
| 變數 | 補上是哪張表單、哪個頁面、哪個位置 | Form ID、Page URL、form_name |
代碼:把表單送出記成 GA4 事件
代碼負責把事件送到 GA4。常見做法是在 GTM 建立 GA4 Event 代碼,選擇既有的 Google tag 或填入 GA4 Measurement ID,再設定事件名稱,例如 generate_lead 或 form_submit。
如果事件代表詢問單、預約單、報名單,generate_lead 比較符合 GA4 推薦事件語意。若只是記錄一般表單互動,form_submit 也可行,重點是全站不要混用多套命名。
觸發條件:決定什麼情況算送出
觸發條件是表單追蹤準不準的核心。成功頁追蹤會用 Page View 條件,例如 Page URL 包含 /thank-you;原生表單會用 Form Submission;dataLayer 方法會用 Custom Event,例如事件名稱等於 form_submit。
觸發條件太寬會重複記錄,太窄會漏資料。實務上應先用 Preview 看事件時間軸,再調整條件,不要只靠想像設定。
變數:記錄是哪一張表單、哪個頁面、哪個按鈕
變數讓 GA4 事件不只知道「有人送出表單」,還能知道是哪一張表單。常用變數包含 Page URL、Page Path、Form ID、Form Classes、Click ID、Click Text 與 dataLayer 變數。
如果網站有多張表單,至少要傳 form_id 或 form_name。少了這些參數,GA4 報表會只剩一個表單送出總數,無法分辨聯絡我們、活動報名、電子報訂閱或下載表單。
方法一:用成功頁 URL 追蹤表單送出
有 thank you page 時,成功頁 URL 通常是最穩定的表單追蹤方法。GTM 偵測使用者進入成功頁,再送出 GA4 表單事件。
成功頁方法適合表單送出後會換頁的網站,例如聯絡我們送出後進入 /contact-thank-you。這種做法不需要偵測表單本身,只要完成後的 URL 清楚,就能把頁面瀏覽轉成表單送出事件。
建立 GA4 Event 代碼
在 GTM 新增 GA4 Event 代碼,事件名稱可用 generate_lead 或 form_submit。如果表單是詢問、預約、註冊或報價需求,建議優先考慮 generate_lead,因為它符合 GA4 推薦事件中「送出表單或資訊請求」的語意。
事件參數建議至少加入 form_name、form_id、page_location 與 method。成功頁追蹤的 method 可以填 thank_you_page,之後排查時能知道事件來源邏輯。
設定 Page View 觸發條件
觸發條件選 Page View,篩選條件設定為成功頁 URL。例如 Page Path 等於 /reports/contact-thank-you,或 Page URL 包含特定成功頁路徑。條件越明確,誤觸發風險越低。
設定後進入 Preview,送出表單並確認瀏覽器跳到成功頁。成功狀態是:事件時間軸出現成功頁 Page View,GA4 Event 代碼在該 Page View 下觸發,GA4 DebugView 看到對應事件名稱。
避免所有成功頁都被算成同一個事件
如果多張表單共用同一個 /thank-you,GA4 會很難判斷是哪張表單完成。較好的做法是讓不同表單導到不同成功頁,或在成功頁 URL 帶上可識別的路徑或參數,例如 /thank-you?form=contact。
如果成功頁沒有權限控管,資料看起來漂亮,可信度卻不高。使用者直接開成功頁、重新整理成功頁、客服把成功頁連結貼給使用者,都可能造成額外事件。
用事件參數區分表單名稱與頁面來源
成功頁追蹤不應只送事件名稱。建議在 GA4 Event 代碼加上事件參數,讓日後報表可以按表單與來源頁面拆解。
form_name:例如contact_us、demo_request、newsletter_signupform_location:例如header、footer、article_bodysource_page:送出前的頁面,能記就記,不能記時至少保留成功頁路徑tracking_method:例如thank_you_page
方法二:用 GTM Form Submission 觸發條件追蹤表單
GTM Form Submission 可偵測表單 submit,適合原生表單或能被 GTM 抓到送出行為的網站,但不適用所有 AJAX 或第三方表單。
這個方法的優點是不用依賴成功頁,缺點是表單架構影響很大。WordPress、SHOPLINE、Shopify 或客製網站都可能有不同限制,所以一定要用 Preview 實測,而不是只看設定畫面判斷。
啟用 Form 相關內建變數
進入 GTM 的 Variables,啟用 Form 相關內建變數,例如 Form Element、Form Classes、Form ID、Form Target、Form URL、Form Text。這些變數能幫你限縮哪一張表單會觸發事件。
如果沒有啟用變數,Preview 裡可能仍然看得到事件,但你會少掉判斷依據。對網站管理者來說,Form ID 與 Page URL 是最常用的安全條件。
建立 Form Submission 觸發條件
新增 Trigger,選擇 Form Submission。GTM 官方說明指出,Form Submission trigger 可在表單送出時觸發代碼,並可搭配 Wait for Tags 與 Check Validation 等選項;需要技術細節時可參考 Google Tag Manager Form Submission trigger 說明。
建立後先不要急著發布。把觸發範圍設定為 Some Forms,搭配 Page URL、Form ID 或 Form Classes。若選 All Forms,網站上的搜尋框、訂閱欄、登入表單也可能被算進同一個 GA4 表單事件。
用 Form ID 或 Page URL 限縮觸發範圍
限縮條件可以從頁面與表單兩層處理。頁面條件例如 Page Path contains /contact,表單條件例如 Form ID equals contact-form。兩者並用時,誤觸發機率會低很多。
如果 Form ID 不穩定,改版後可能變動,就不要把它當唯一條件。可以改用頁面路徑、表單 class、dataLayer 參數,或請工程師補上穩定的表單識別值。
為什麼要勾選 Check Validation
Check Validation 的用途是避免使用者只是嘗試送出,就被 GTM 記成完成。若未勾選,欄位驗證失敗的送出嘗試也可能觸發代碼,表單送出事件會偏高。
勾選後仍要測試。部分網站的驗證邏輯由 JavaScript 或第三方外掛處理,GTM 不一定能完整理解。成功標準不是「選項有勾」,而是 Preview 裡只有真正成功送出的情境會觸發 GA4 Event。
Preview 中確認 Form Submit 是否真的發生
進入 GTM Preview,連到測試頁,填寫表單並送出。成功時,你應該在左側事件時間軸看到 Form Submit,點進該事件後,GA4 Event 代碼要顯示 Fired。
如果按了送出但沒有 Form Submit,代表這張表單可能不是 GTM 原生 Form Submission 能抓到的類型。這時不要硬調 Click trigger,先判斷是否應改用 dataLayer 自訂事件。
方法三:AJAX、SPA 或第三方表單用 dataLayer 自訂事件追蹤
AJAX、SPA 或第三方表單沒有可靠換頁訊號時,應在表單成功後推送 dataLayer 自訂事件,再由 GTM 送出 GA4 表單事件。
這是行銷與工程最需要對齊的一種方法。工程師不需要理解完整 GA4 報表,只要在「表單真的成功」的時間點推送一致的事件名稱與參數;行銷或分析者再在 GTM 裡接收事件。
什麼情況需要 dataLayer?
表單送出後頁面不重新整理、成功訊息只在原頁顯示、表單在彈窗裡、使用 React 或 Vue 等 SPA 架構、第三方表單嵌入 iframe,這些情境都可能需要 dataLayer。
Google 官方 dataLayer 文件說明,GTM 可透過 dataLayer.push() 接收事件與變數,並用 Custom Event trigger 觸發代碼;可參考 Google Tag Manager dataLayer 說明。實務上,事件應該在後端或第三方服務回應成功後才送出,不要放在按鈕被點擊的當下。
建議事件名稱與參數格式
事件名稱建議固定用 form_submit 作為 dataLayer event,GA4 事件名稱則可依需求送成 generate_lead 或 form_submit。這樣 GTM 端容易辨識,GA4 端也能維持命名治理。
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'form_submit',
form_id: 'contact_us',
form_name: '聯絡我們表單',
form_location: 'article_body',
source_page: window.location.pathname,
lead_type: 'consultation'
});
這段格式可直接交給工程師作為協作規格。表單名稱用中文沒問題,但 form_id 建議使用穩定英文代碼,避免不同語系、不同頁面或不同活動命名混亂。
GTM Custom Event 觸發條件設定
在 GTM 新增 Custom Event trigger,Event name 填 form_submit。接著建立 dataLayer 變數,例如 form_id、form_name、form_location、lead_type,再把這些變數放進 GA4 Event 代碼的事件參數。
Preview 測試時,左側事件時間軸應出現 form_submit。點進該事件後,Variables 要看得到剛才推送的表單參數,Tags 要看到 GA4 Event fired。DebugView 再確認 GA4 有收到同名事件或轉換用事件。
避免只追蹤按鈕點擊造成假轉換
AJAX 表單常見錯誤是把送出按鈕 Click trigger 當成完成。這種資料很容易偏高,尤其是表單欄位很多、驗證嚴格、網路回應慢,或使用者連點按鈕的情境。
比較乾淨的事件點是「成功訊息出現」或「API 回傳成功」。如果工程端無法立即配合,短期可以先用按鈕點擊觀察互動,但事件名稱不要取成 generate_lead,也不要直接設成 GA4 重要事件。
把表單事件送進 GA4:事件名稱、參數與轉換設定
GA4 表單事件要有一致事件名稱與可分析參數。名單型表單可用 generate_lead,一般表單可用 form_submit。
事件命名最怕每個活動各取一次名字,短期方便,長期報表會很難收斂。好的事件結構應讓人一眼看出事件類型,也能用參數拆出表單、頁面、位置與用途。
事件名稱用 generate_lead 還是 form_submit?
若表單送出代表詢問、預約、註冊、試用申請、報價需求,建議用 generate_lead。Google 的 GA4 推薦事件把 generate_lead 對應到送出表單或資訊請求,可參考 GA4 recommended events。
若表單只是一般站內互動,例如意見回饋、電子報訂閱、內容評分,form_submit 也可以。重點是不要在同一種表單上有時用 lead_submit,有時用 contact_sent,又有時用 form_success。
| 情境 | 建議事件名稱 | 理由 |
|---|---|---|
| 詢問單、預約單、報價單 | generate_lead |
符合名單取得與商業目標語意 |
| 一般表單送出 | form_submit |
清楚記錄表單互動,不過度視為名單 |
| 按鈕點擊備案 | form_submit_attempt |
避免把嘗試送出誤當完成 |
建議加入哪些事件參數?
事件參數是日後分析的關鍵。至少要讓 GA4 知道表單名稱、表單 ID、來源頁面與追蹤方法。若需要更細,可以再加表單位置、語系、活動代碼或名單類型。
| 事件參數 | 用途 | 範例值 |
|---|---|---|
form_id |
穩定識別表單 | contact_us |
form_name |
報表中易讀的表單名稱 | 聯絡我們表單 |
form_location |
判斷表單出現位置 | article_body |
source_page |
判斷哪個頁面帶來送出 | /reports/gtm |
tracking_method |
除錯時辨識方法 | data_layer |
什麼時候把表單送出設為 GA4 轉換?
在 2026 年的 GA4 操作語境中,站內重要行為通常會先被標記為 Key Event,中文介面常見為重要事件;與 Google Ads 串接後,才進一步作為廣告轉換使用。Google 對 key events 的說明可參考 GA4 key events 說明。
不是所有表單都要設成重要事件。聯絡、預約、試用、註冊這類代表商業目標的表單可以設;頁面意見回饋、內部搜尋、一般訂閱欄位則要看業務定義。需要完整設定流程時,應接到 GA4 轉換設定教學。
多張表單如何避免資料混在一起?
多張表單共用同一個事件名稱沒問題,前提是參數要一致。例如所有名單型表單都送 generate_lead,再用 form_id 區分 contact_us、demo_request、download_whitepaper。
如果每張表單都建一個事件名稱,短期看起來好懂,長期會讓 GA4 事件清單變得凌亂。更好的做法是事件名稱管類型,事件參數管細節。需要理解 GA4 事件架構,可延伸看 GA4 事件追蹤設定。
如何確認 GTM 表單追蹤成功?Preview、Tag Assistant、GA4 DebugView 檢查流程
確認 GTM 表單追蹤成功,要依序看 GTM Preview 是否觸發、Tag Assistant 是否連線、GA4 DebugView 是否收到事件,發布後再看即時報表。
只看其中一個畫面不夠。GTM Preview 有觸發,代表容器端條件成立;DebugView 有事件,才代表 GA4 收到。正式發布後,還要用即時報表複查,避免只測到工作區草稿,網站正式版卻沒有更新。
GTM Preview 看到觸發條件啟動
在 GTM 工作區點 Preview,輸入測試頁 URL 並連線。Google 官方 Preview 說明提到,Preview 會讓你在發布前測試容器草稿,並透過 Tag Assistant 檢查哪些代碼觸發;可參考 Preview and debug containers。
成功標準是:送出表單後,事件時間軸出現正確事件,例如 Page View、Form Submit 或 form_submit Custom Event;GA4 Event 代碼在 Tags 區塊顯示 Fired;Variables 區塊看得到表單相關值。
Tag Assistant 確認容器載入
Tag Assistant 要顯示網站已 Connected,並能看到正確的 GTM 容器 ID。若網站沒有連上,先檢查 GTM 容器是否正確安裝在網站管理後台、主題模板或平台提供的追蹤碼欄位。
SHOPLINE、Shopify 這類平台通常要透過後台指定位置安裝,不要假設可以直接修改所有 HTML。WordPress 則要注意是否主題、外掛與快取系統重複插入 GTM。
GA4 DebugView 確認事件送達
進入 GA4 DebugView,送出測試表單後,應看到 generate_lead 或 form_submit 出現在事件時間軸。點開事件後,檢查 form_id、form_name、source_page 等參數是否存在。
DebugView 看不到,就先別急著怪 GA4 報表延遲;多半是事件沒有被正確送出去。常見原因包含 GA4 Measurement ID 錯誤、GA4 Event 代碼未觸發、Google tag 未載入、Consent Mode 限制,或瀏覽器外掛阻擋測試流量。
正式發布後再用即時報表複查
Preview 成功後,要回到 GTM 工作區送出並發布版本。發布時建議填寫版本名稱與描述,例如「新增 contact_us 表單 generate_lead 事件」,日後回查才知道這個版本改了什麼。
發布後開無痕視窗或另一個瀏覽器重新測一次,再看 GA4 即時報表。成功標準是正式網站送出表單後,GA4 即時報表或 DebugView 有對應事件,而不是只有 GTM 草稿環境有反應。
常見錯誤:為什麼表單送出沒有被追蹤?
表單送出沒有被追蹤,通常來自容器未發布、觸發條件錯誤、GA4 沒收到事件、表單架構不支援,或同意設定限制。
排查時不要一次改很多設定。先確認 GTM 是否觸發,再確認 GA4 是否收到,最後才看報表延遲與轉換設定。這樣可以把問題切開,不會在 GTM、GA4、網站平台之間來回猜。
| 問題 | 可能原因 | 修正方向 |
|---|---|---|
| Preview 有事件,但 GA4 沒收到 | Measurement ID 錯誤、GA4 Event 代碼設定錯、Google tag 未載入 | 檢查資料串流 ID、代碼設定與 DebugView |
| GA4 收到事件,但不是每次都有 | 表單架構不穩、AJAX 成功點未推送、同意狀態不同 | 改用 dataLayer 成功事件,並測不同瀏覽器狀態 |
| 事件重複觸發 | 成功頁重新整理、GTM 重複安裝、觸發條件太寬 | 限縮 URL 與 Form ID,檢查容器是否重複載入 |
| 正式網站沒有資料 | 只在 Preview 成功,GTM 容器未發布 | 送出並發布版本,再用即時報表複查 |
| 部分使用者沒有被記錄 | Consent Mode 或隱私設定影響 | 檢查同意管理邏輯與 GA4 隱私設定 |
Preview 有事件,但 GA4 沒收到
先確認 GTM 的 GA4 Event 代碼是否真的 Fired,而不是只有觸發條件出現在時間軸。接著檢查 Measurement ID 是否屬於正確 GA4 資料串流,事件名稱是否拼錯,Google tag 是否在同一個容器內正常載入。
如果 GTM 端代碼有 fired,但 DebugView 沒事件,可以檢查瀏覽器是否阻擋追蹤、網站是否有 Consent Mode 預設拒絕、或事件是否送到另一個 GA4 資源。需要進一步排查資料未進報表,可看 GA4 資料排查教學。
GA4 收到事件,但不是每次都有
這通常代表追蹤點不穩。成功頁可能不是每次都會跳轉,Form Submission 可能抓不到某些 AJAX 狀態,或使用者在不同同意狀態下事件送出結果不同。
建議用三種測試情境比對:欄位完整送出、欄位錯誤送出、重新整理或返回上一頁。只有第一種應被記成表單成功;如果三種都進 GA4,追蹤條件就太寬。
事件重複觸發
重複觸發常見於 GTM 容器安裝兩次、成功頁重整再次觸發、同一張表單同時有 Click trigger 與 Form Submission trigger,或 dataLayer 成功事件被推送多次。
修正時先看 Tag Assistant 是否出現重複容器,再看 Preview 時間軸是否有兩個相同事件。若是成功頁重整造成,可以改用更嚴格的成功頁流程;若是 dataLayer 多次推送,請工程師在成功回應處只推送一次。
容器沒有發布
GTM Preview 測到的是工作區草稿,不代表正式網站已上線。很多表單追蹤設定失敗,其實只是忘了 Submit 並 Publish。正式網站使用者不會看到你的草稿設定。
發布後應建立版本名稱與描述,保留變更紀錄。網站流量較高或有廣告投放時,建議先在低風險時段發布,再立即用即時報表複查。
同意管理導致事件被限制
若網站有 Cookie 同意橫幅、Consent Mode 或隱私設定,使用者拒絕分析追蹤時,GA4 事件可能不會完整送出,或部分資料會被限制。這不是 GTM 表單追蹤設定本身錯誤,但會影響資料完整性。
涉及台灣個資與同意管理時,不要只從追蹤便利性判斷。可把表單追蹤與 GA4 隱私設定與 PDPA 一起檢查,確保事件需求、告知內容與同意狀態一致。
哪些內容不應該塞進這篇 GTM 表單追蹤教學?
GTM 表單追蹤教學應聚焦 Google Tag Manager、表單送出事件與 GA4 驗證,不應擴寫成所有 GTM、CRM 或廣告追蹤總覽。
搜尋 gtm 的意圖很廣,但這一頁的主題應保持乾淨。讀者要解決的是「表單送出到底有沒有被記到」,不是一次學完所有網站分析架構。
- 不展開 Go-To-Market 策略,本文中的 GTM 只代表 Google Tag Manager。
- 不討論 CRM 銷售流程、自動化行銷全流程或名單培育系統。
- 不介紹 GTM AI 工具、GeTheMall 或其他非 Google Tag Manager 實體。
- 不寫完整 Google Ads 投放教學,只在轉換需求上簡短說明。
- 不深入伺服器端 GTM,避免偏離表單追蹤初稿範圍。
- 不把 GA4 完整課程塞進來;需要基礎安裝、事件架構、轉換與資料排查時,用內部連結分流。
GTM 是 Google Analytics 嗎?
不是。GTM 是 Google Tag Manager,負責管理追蹤碼、代碼、觸發條件與變數;Google Analytics 目前常用的是 GA4,負責接收與分析事件資料。表單追蹤通常是由 GTM 判斷送出,再把事件送到 GA4。
GTM 可以追蹤表單送出嗎?
可以,但方法要看表單類型。有成功頁時可用成功頁追蹤;原生表單可測 Form Submission;AJAX、SPA 或第三方嵌入表單,通常要用 dataLayer 自訂事件。
表單追蹤應該用 form_submit 還是 generate_lead?
如果表單代表詢問、預約、註冊或報價需求,建議用 generate_lead。如果只是一般表單互動,用 form_submit 也可以。真正重要的是全站命名一致,並用事件參數區分表單名稱與來源頁面。
為什麼我按了送出按鈕,GA4 沒有事件?
可能原因包含 GTM 觸發條件沒有啟動、GA4 Measurement ID 錯誤、容器尚未發布、表單是 AJAX 架構,或同意管理限制事件送出。先用 GTM Preview 看代碼是否觸發,再用 GA4 DebugView 看事件是否送達。
只追蹤送出按鈕點擊可以嗎?
可以當備案,但不建議直接當成表單成功。使用者點擊送出後,可能因欄位錯誤、驗證失敗或後端回應失敗而沒有完成表單。若只能追蹤按鈕,事件名稱應標成嘗試送出,不要直接設成轉換。
WordPress 表單可以用 GTM 追蹤嗎?
可以。常見做法包含成功頁 URL 追蹤、Form Submission 觸發條件,或依表單外掛提供的事件推送 dataLayer。不同外掛行為不同,設定前應用 Preview 實際測送出流程。
SHOPLINE、Shopify 這類平台也能裝 GTM 嗎?
通常可以,但要依平台後台提供的追蹤碼安裝位置與權限限制操作。這類平台不一定允許你修改所有 HTML 或表單程式碼,所以表單追蹤方法要以實際可控範圍判斷。
GTM Preview 有觸發,為什麼正式 GA4 報表看不到?
先確認 GTM 容器是否已發布,並用 GA4 DebugView 或即時報表檢查正式網站事件。標準報表可能有延遲,也要確認事件名稱、資料串流、Measurement ID 與目前發布版本是否正確。
表單送出事件要設成 GA4 轉換嗎?
如果表單送出代表商業目標,例如詢問、預約、註冊、試用申請,就適合標記為 GA4 重要事件,並視 Google Ads 串接需求作為轉換使用。一般回饋表單或低價值互動,不一定要設成轉換。
表單追蹤需要工程師嗎?
簡單成功頁或原生表單不一定需要工程師。AJAX、SPA、彈窗表單、第三方嵌入表單,通常需要工程師在表單成功後推送 dataLayer 自訂事件,才能讓資料更接近真實送出。
以官方文件、實際設定與量測結果整理 SEO 數據、網站追蹤與分析方法,並標示資料來源與判讀限制。