[GA4のイベントとキーイベントの違い完全ガイド【初心者向け】]でイベントとキーイベントの違いを学びました。
今回は、その次のステップとして「カスタムイベントの作り方」を解説します。
「特定のボタンのクリックを計測したいのに、GA4に出てこない…」
「カスタムイベントを作りたいけど、GTMが必須なのか分からない…」
GA4を使い始めて少し経つと、「標準のままでは足りない計測」をしたくなる場面が増えます。
この記事では、GA4の「イベント作成」機能で”既存イベントを条件で切り出す”カスタムイベントの作り方を初心者向けに解説します。
設定手順、よくある間違い、GTMとの使い分けまで、画面付きでまとめます。
この記事を読めば、GA4だけでカスタムイベントを作れるようになり、「GTMが必要なケース」と「GA4だけでOKなケース」の判断基準も分かります。
まずは「カスタムイベントとは何か?」から見ていきましょう。
カスタムイベントとは?【GA4の「イベント作成」機能を理解する】
結論から言うと、この記事で解説するカスタムイベント = 既存のイベントを条件で切り出して、別のイベント名で記録する機能です。
GA4の「イベント作成」機能の本質
GA4には「イベント作成」という機能があり、これを使ってカスタムイベントを作ります。
重要な前提:
- 既にGA4に入っているイベントに条件を付けて、新しいイベント名で記録する
- 「ゼロから新しいイベントを発火させる」機能ではない
つまり、「既存イベント + 条件 = 新しいイベント名」という仕組みです。

どんなケースで使う?
よくある使い方(3つ):
- 送信完了ページを成果として記録
page_viewのうち、/thanksだけをform_submit_completeとして記録- キーイベントに設定しやすい
- 定ページの閲覧を別イベントにする
page_viewのうち、/pricingをpricing_viewとして記録- 料金ページの閲覧を重要指標として追跡
- 特定の条件を満たすスクロールを記録
scrollのうち、特定ページだけをarticle_readとして記録- ※GA4標準のscrollは「90%到達」のサイン(読了と完全一致ではない)
重要な前提: 「既に入っているイベント」が必須
GA4の「イベント作成」は、既にGA4に入っているイベントを加工する機能です。
つまり:
- ✅
page_viewが入っている → /thanksだけを切り出せる - ❌
page_viewが入っていない → 何も作れない
「そもそもイベントが入っていない行動」(例: 特定ボタンのクリック)は、GA4だけでは作れません。
その場合は、GTM(または実装側)で先にイベントを発火させる必要があります。
GA4だけでできること / できないこと
| できること | できないこと |
|---|---|
| 既存イベントを条件で切り出す | ゼロから新しいイベントを発火させる |
| page_viewを条件で分ける | 特定ボタンのクリック(イベント未取得) |
| scrollを条件で分ける | フォーム入力開始(イベント未取得) |
まとめ:
- GA4だけでOK: 既存イベントの加工
- GTMが必要: そもそもイベントが入っていない行動
次は、GA4だけでできる範囲を詳しく見ていきましょう。
GA4だけでできる範囲【イベント作成の具体例】
GA4の「イベント作成」機能では、以下のような条件を使って新しいイベントを作れます。
条件に使えるパラメータ:
- イベント名(page_view, click など)
- page_location(URL全文)/ page_path(ドメイン以降)
- link_url(クリックしたリンクのURL)などのイベントパラメータ
基本ルール:
既存イベント + 条件(パラメータ) = 新しいイベント名
具体例1: 送信完了ページを成果として記録
やりたいこと:
お問い合わせ送信完了ページ(/thanks)を成果として記録したい
設定方法:
- 元のイベント:
page_view - 条件: page_location に「/thanks」を含む
- 新しいイベント名:
form_submit_complete
結果:
/thanks を閲覧すると form_submit_complete が記録され、これをキーイベントに設定できる
💡 ポイント:
送信完了ページがあるなら、これが最短ルート(GTM不要)。 GA4のイベントとキーイベントの違い完全ガイド【初心者向け】で解説した「送信完了を成果にする」方法の実装例です。
📊 分析のポイント:
- form_submit_complete をキーイベントに設定
- 流入元別の成果数を比較
具体例2: 特定ページの閲覧を別イベントにする
やりたいこと:
料金ページ(/pricing)の閲覧を重要指標として追跡したい
設定方法:
- 元のイベント:
page_view - 条件: page_location に「/pricing」を含む
- 新しいイベント名:
pricing_view
結果:
/pricing を閲覧すると pricing_view が記録され、ページ別の分析が容易になる
📊 分析のポイント:
- pricing_view 後のキーイベント発生割合を確認
- 料金ページ閲覧者の行動パターンを分析
具体例3: 外部リンククリックを別イベントにする
やりたいこと:
外部リンク(例: YouTube)のクリックを計測したい
設定方法:
- 元のイベント:
click - 条件: link_url に「youtube.com」を含む
- 新しいイベント名:
youtube_click
結果:
YouTubeリンクをクリックすると youtube_click が記録される
💡 前提:
※拡張計測の「外向きリンクのクリック」がON + click イベントが入っていることが前提。DebugViewで click と link_url を確認してください。
⚠️ ここまでが「GA4だけでできる」範囲です
できないこと(再確認):
GA4のイベント作成では、そもそもイベントが入っていない行動は作れません。
例:
- 特定ボタンのクリック(イベント未取得)
- フォーム入力開始(未実装)
- 埋め込み動画の再生(別途設定必要)
解決策:
GTMまたは実装側で先にイベントを発火させる必要があります。
カスタムイベントの設定手順【画面付きで解説】
設定前の前提確認
カスタムイベントを作る前に、以下を確認してください。
✅ チェックリスト
- 元となるイベントが既にGA4に入っている
- リアルタイムまたはDebugViewで確認済み
- 条件に使うパラメータ名(page_location等)を把握している
STEP1: GA4管理画面から「イベント作成」へ移動
操作手順
- GA4管理画面(管理 / Admin)を開く
- 左メニューから 「イベント」(Events) をクリック
- 右上の 「イベントを作成」(Create event) をクリック
💡 ボタンが見当たらない場合は、管理画面の検索で「イベント」と入力してください。

STEP2: カスタムイベント名と条件を設定
1) カスタムイベント名を入力
例:form_submit_complete、pricing_view など
ルール:英小文字 + アンダースコア(_) で統一
2) 一致する条件を設定(例:/thanksを成果にする)
| 項目 | 設定値 |
|---|---|
| パラメータ | event_name |
| 演算子 | equals(と等しい) |
| 値 | page_view |
| + 条件を追加 | |
| パラメータ | page_location |
| 演算子 | contains(を含む) |
| 値 | /thanks |

💡 条件の読み方
「event_name が page_view かつ page_location に /thanks を含む」
→ この条件を満たすと form_submit_complete が記録される
よく使う演算子
equals:完全一致contains:部分一致(まずはこれ。誤爆しそうなら equals / starts with)starts with:前方一致
STEP3: 保存してDebugViewで確認
保存手順
- 右上の 「作成」 をクリック
- イベント一覧に追加されたことを確認
⚠️ 保存だけでは完了ではありません
確認方法
- Tag Assistantでデバッグモードを有効化
- GA4の 「DebugView」 を開く
- サイトで該当の行動(/thanks にアクセス)を実行
- DebugViewで新しいイベント名が表示されるか確認
💡 ポイント
- DebugViewで見えれば設定成功 ✅
- 反映に数分かかることがあります。焦って削除せず、待って再確認してください
- 通常レポートへの反映は24〜48時間後

⚠️ 設定時の注意点
- イベント名は変更不可:間違えたら削除して作り直す
- 条件は「AND」で結合:すべての条件を満たす必要がある
- 反映は最大48時間:DebugViewで先に確認
よくある間違いと解決策【初心者がつまずく3つのポイント】
間違い1: page_location と page_path を混同してしまう
よくある例
「page_pathで条件を作ったのにイベントが発生しない」
問題点
- page_location:URL全文(
https://example.com/thanks?id=123) - page_path:パスのみ(
/thanks)
クエリ(?id=123 など)まで含めて判定したいのに page_path を使うと、条件が当たりません。
💡 UIに「page path + query string」など別項目がある場合は別物です。
解決策
- クエリも含めたい → page_location
- パスだけで十分 → page_path
- 迷ったらDebugViewで実際のパラメータ名と値を確認
間違い2: equals(完全一致)で指定してイベントが発生しない
よくある例
page_location を equals で https://example.com/thanks と指定したが、?id=123 付きでは発生しない
問題点equals は 1文字でも違うと一致しない
解決策
- 基本は
containsで動かす(例:/thanks) - 誤爆があるなら
starts withや、より具体的なパスで絞る - 完全一致が必要なときだけ
equalsを使う
間違い3: イベント名の表記ゆれ(後から直せず地味に痛い)
よくある例Form Submit Complete、formSubmitComplete、form-submit-complete
問題点
GA4のイベント名は 大文字・小文字を区別 します。表記が揺れると別イベントになり、集計が分裂します。
解決策
- 統一ルール:英小文字 + アンダースコア(_)
- 例:
form_submit_complete、pricing_view、youtube_click - 後から変更できないので、最初にルール固定が重要
✅ 間違いを避ける3つのチェックリスト
- パラメータ:クエリも見るなら
page_location、パスだけならpage_path - 演算子:まずは
contains、誤爆したらstarts withで絞る - イベント名:英小文字 + アンダースコア(_)で統一
💡 DebugViewで「実際のパラメータ名・値」を見てから設定すると、ミスが激減します。
まとめ: GA4のカスタムイベント作成をマスターしよう
この記事では、GA4の「イベント作成」機能で既存イベントを条件で切り出す方法を解説しました。
要点の振り返り:
- カスタムイベント = 既存イベント + 条件 = 新しいイベント名
- GA4だけでできる範囲: 送信完了ページ、特定ページ閲覧、(拡張計測ONで)外部リンククリック
- 設定の3ステップ: イベント作成 → 条件設定 → DebugView確認
今日からできる最初の一歩
送信完了ページ(/thanks)がある場合/thanks を form_submit_complete として記録する設定から始めてください(最短で成果計測ができます)。
送信完了ページがない場合
まずは 重要ページの閲覧(例:/contact、/pricing、/service)を切り出して、ユーザー行動を追える状態にしましょう。
実行手順(最短)
DebugViewで「元イベントとパラメータ」を確認 → イベント作成 → DebugViewで新イベントを確認
次に読むべき記事
GA4の基礎を学ぶ
→ GA4を0から学ぶ30日ロードマップ
イベント設定でつまずいたら
→ イベントとキーイベントの違い
質問・相談はXで受付中
「狙ったイベントがDebugViewに出ない」など詰まったら、DebugViewのスクショ+やりたい計測(例:/thanksを成果にしたい)を添えて送ってください。
コメントを残す