【完全版】GTMで完了画面をKPI計測する方法
DOM Readyでハマる罠まで徹底解説
目次
安達 奨(Susumu Adachi)
ITコンサルタント/Knowledge marketing合同会社 代表
IT業界で15年以上の経験を持ち、システム開発の上流工程から下流工程に至るまで幅広く精通。(企画、要件定義、設計、プログラミング、テスト)
現在ではシステム開発のみならず、ツール選定、ベンダー選定など、大手~中小企業向けのIT支援を多数手がける。
本サービスでは、特に事業会社時代から "システム開発会社の見積"
に疑問を感じており、これを是正すべきと考え監修を行っている。
前回の記事では「GA4リアルタイムが0になる問題」の解決方法を解説しました。 今回はその続きとして、実際のKPI(予約完了)を正しく計測する方法を解説します。
特に今回のポイントは
・GTMでイベントを送っているつもりでも、実は送れていない問題
・DOM Readyにしないと発火しないケース
ここを理解できると、GA4の実装はかなり安定します。
今回やりたいこと
予約完了ページ(xxxはドメインです)
https://xxx/reservation/success
このページが表示されたら
・GA4に reservation_complete を送る
・KPIとしてカウントする
手順①:GTM(タグマネージャー)設定
① GA4イベントタグを作成
GTM → 「タグ」→ 新規
▼ タグタイプ
Googleアナリティクス:GA4イベント
▼ 設定内容
測定ID
G-XXXXXXXX(既存のAll Pagesと同じでOK)
※同じ測定IDで問題なし(むしろ正解)
イベント名(今回はお客様の予約完了をイベント計測したいためこの名称。適宜分かりやすい名前をつけてください。)
reservation_complete
② トリガー作成
GTM → 「トリガー」→ 新規
▼ トリガータイプ
DOM Ready(ここが超重要)
▼ 発火条件
Page URL contains /reservation/success
ポイント
- 完全一致(equals)はNGになりやすい
- containsが安全
③ タグにトリガーを紐付け
- 作成したトリガーを設定
- 保存
④ プレビューで確認
GTM → 「プレビュー」
⑤ Networkで最終確認(最重要)
Chrome DevTools → Network → g/collect
▼ 正しい状態
en: reservation_complete
※これが出ていれば100%成功
手順②:GA4(アナリティクス)設定
① イベントが送信されるのを待つ
- 数分〜数時間
- 「設定」→「イベント」に表示される
② KPI化(キーイベント設定)
reservation_complete の左側にある ★ をON
③ 完了
予約完了数がKPIとして計測される
重要:今回ハマったポイント(超重要)
問題①:イベント送ってるつもりで送れてない
Networkで確認した結果
en: page_view
これの場合、全ページのイベントが発火しているだけで、設定したイベントが送れていない (ただのページビュー)
原因
イベントタグが発火していない
問題②:Page Viewトリガーでは発火しない
最初の設定
トリガー:ページビュー
これだと発火しないケースあり
なぜか
ページの流れ
- ページ読み込み開始
- GTM発火
- page_view送信
- URL確定
条件判定に間に合っていない
解決方法
DOM Readyに変更
結果
en: reservation_complete
正しく送信されるようになる
最強の確認方法
DebugViewではなく
Network → g/collect
で常に確認する方が良い。
理由
- DebugView → 出ないことある
- GA4イベント一覧 → 反映遅い
- g/collect → リアルタイム & 確実
最終判断は必ずここです。
補足(実務で役立つ)
✔ 測定IDは同じでOK
- All Pagesタグと同じで問題なし
✔ 過去データはカウントされない
KPIは設定後からカウント
✔ リロード対策(上級)
- 完了ページは再訪で二重計測される
- 必要なら制御(セッションなど)
まとめ
インターネットの他サイトだと、いらない話や手順が古いことが多々あり、改めて2026年の最新版として掲載させていただくことにしました。
サイト分析を行うためには、絶対に避けて通れないポイントになるので、是非皆さんもチャレンジしてみてくださいね。
GTMでイベント送信
- GA4イベントタグ
- トリガーはDOM Ready
GA4でKPI化
- イベント一覧 → ★にON
最大の落とし穴
Page Viewでは発火しないことがある
DOM Readyで解決
最強チェック方法
g/collect → en: reservation_complete
今回のポイントは以上になります。では、またの更新をお楽しみに!