WordPressのお問い合わせ数をGA4で把握したいとき、最初から独自コードを追加する必要はありません。Contact Form 7(CF7)とGoogle Site Kitを使っているなら、まず送信成功時にcontactイベントが届いていないか確認しましょう。
この記事では、実サイトで「テスト送信1件、contactイベント1件、重複0件」まで確認した手順を紹介します。個別サイトの内部IDやテスト入力内容は掲載しません。
結論:標準連携を確認してから追加実装を考える
確認の順序は次のとおりです。
- 独自コードを追加せず、GA4のリアルタイムを開く
- 個人情報を使わず、フォームを1回だけ送信する
contactが1件だけ届くか確認する- 通常のイベント一覧へ反映された後、キーイベントに指定する
- 公開前のチェックリストで、独自スニペットやGTMとの重複がないか確認する
標準連携で計測できているのに、同じ問い合わせをgenerate_leadなどでも成果として集計すると、数字が二重になるおそれがあります。
ボタンクリックではなく「送信成功」を見る理由
送信ボタンは、入力漏れや通信エラーがあってもクリックできます。クリック数を問い合わせ数として扱うと、成果を多く見積もる原因になります。
Contact Form 7は、Ajax送信が成功してメール送信まで完了した後にwpcf7mailsentというDOMイベントを発生させます。CF7公式サイトも、このイベントを使ったGoogle Analytics連携例を案内しています。問い合わせ成果を数えるなら、クリックより送信成功を基準にする方が実態に近くなります。

Site Kitのcontactイベントを確認する
Site Kitの公開情報によると、Contact Form 7の送信成功を検知し、GA4へcontactイベントを送る連携が実装されています。ただし、プラグインのバージョン、接続設定、同意管理などによって動作条件は変わり得ます。「Site Kitを入れれば必ず計測される」と決めつけず、実際のサイトでテストしてください。
テスト前に、次を確認します。
- Site Kitが対象のGA4プロパティとウェブストリームへ接続されている
- 問い合わせフォームが正常にメール送信できる
- テーマや子テーマに古い計測コードが残っていない
- Code Snippetsなどの関連スニペットがない、または停止している
- GTMでCF7送信を計測するタグを併用していない
今回の検証環境では、独自のgenerate_leadスニペットは非アクティブで、Code Snippetsプラグインも停止していました。
個人情報を使わず1件だけテストする
GA4のリアルタイムレポートを開き、問い合わせフォームを1回だけ送信します。実在する顧客の情報や、本物の相談内容は使いません。サイトの運用ルールに沿ったテスト用データを使い、その内容自体は記事や作業記録へ残さないようにします。
送信後、リアルタイムにcontactが1件表示されれば、送信成功がGA4へ届いたと判断できます。今回の実測では、送信成功1回に対してcontactは1件で、重複はありませんでした。
二重計測が疑われる場合の切り分け
1回しか送信していないのにイベントが複数届く場合は、次の組み合わせを点検します。
- Site Kit標準連携と独自JavaScript
- Site Kit標準連携とCode Snippets
- Site Kit標準連携とGTM
- テーマ内コードとプラグイン内コード
contactとgenerate_leadを両方「問い合わせ成果」として集計する設定
イベント名が違っても、同じ送信を2つの成果として扱えば実質的な二重計測です。コードだけでなく、GA4のレポート側も確認します。

通常イベント一覧への反映を待つ
リアルタイムで見えたイベントが、管理画面の「最近のイベント」へ直ちに現れるとは限りません。今回も、リアルタイム確認の後、時間を置いて通常一覧への反映を確認しました。
この待ち時間に「計測できていない」と判断して別のコードを追加すると、後で二重計測になることがあります。リアルタイムで1件を確認できたら、同じテストを短時間に繰り返さず、通常一覧への反映を待ちましょう。

contactをキーイベントに指定する
通常のイベント一覧にcontactが表示されたら、GA4管理画面でキーイベントとしてマークします。GA4の画面表示は更新されることがあるため、名称や配置は実際の管理画面で確認してください。
操作後は次の2点を読み戻します。
contactのキーイベント指定が有効になっている- キーイベント一覧に
contactが表示されている
設定操作だけで終えず、反映後の状態を確認するのがポイントです。
二重計測を防ぐ公開前チェックリスト
計測テストやキーイベント指定を終えたら、次を確認します。
- 1回のテスト送信に対し、問い合わせ成果は1件だけか
- Site Kit標準連携と同じ送信を拾う独自JavaScriptがないか
- Code Snippetsやテーマ内に過去の計測コードが残っていないか
- GTMで同じ
wpcf7mailsentをトリガーにしていないか contactとgenerate_leadを同じ問い合わせ成果として二重集計していないか- テスト入力内容や個人情報を記事・管理資料・GA4パラメータへ保存していないか
ここで問題があれば、前章「二重計測が疑われる場合の切り分け」に戻って経路を確認します。
contactが届かないときの確認順
- CF7の送信自体が成功し、メールが届いているか
- Site Kitが意図したGA4プロパティとストリームへ接続されているか
- Cookie同意の状態やブラウザ拡張が計測を妨げていないか
- キャッシュや最適化処理がJavaScriptへ影響していないか
- 必要に応じ、開発者ツールでGA4への通信が発生しているか
原因を特定する前に独自スニペットを足すのは避けます。標準連携がない、または要件を満たさないと確認できた場合に限り、GTMや独自実装を検討します。
まとめ
Contact Form 7の問い合わせ計測では、次の流れが安全です。
- 送信クリックではなく送信成功を数える
- Site Kitの
contactイベントを最初に確認する - 1回のテストで1件だけ届くことを確かめる
- 通常イベント一覧への反映を待つ
contactをキーイベントに指定し、設定結果を読み戻す- 同じ問い合わせを複数経路で成果にしない
独自コードは便利ですが、すでに動いている標準機能へ重ねると集計の信頼性を落とします。まず現状を一度だけテストし、足りないものだけを追加することが、保守しやすい計測環境への近道です。
コメント