アナリティクスのコンバージョン設計攻略ガイド:フォーム・予約・LINE・決済まで

アナリティクスのコンバージョン設計攻略ガイド プロのノウハウ提供
この記事の監修者・著者

株式会社アルクコト 代表取締役
Web制作29年・Web運用29年・Web指導6年、会社経営19年
10のWebサービス・21のホームページを運用中!

インコンフォルメは攻めのホームページ運用代行サービスです。あなたの会社の最高マーケティング責任者(CMO)として、ホームページを“経営に効く資産”へ育て上げます。Web担当者も育てます。

小南邦雄 (インコンフォルメ代表 )をフォローする
  1. はじめに
    1. この記事でわかること
  2. 1. コンバージョン設計はなぜ重要?——「経営設計」としての視点
    1. コンバージョン設計は経営設計である
  3. 2. GA4の基本思想を知ろう——「ページ」から「イベント」へ
    1. ページビューではなく「イベント」を測る
    2. 2024年の重要アップデート:「キーイベント」と「コンバージョン」
    3. GA4での「キーイベント」指定手順
  4. 3. 【判断フロー】あなたのサイトはどのパターン?
  5. 4. コンバージョン計測の「5つの型」と設定方法
    1. 5つのパターン比較表
    2. ① サンクスページ型
    3. ② Ajax(アジャックス)型
    4. ③ 外部遷移型
    5. ④ iframe(アイフレーム)埋め込み型
    6. ⑤ クロスドメイン型
  6. 5. 人気ツールの具体的な実装テクニック
    1. Amelia(予約システム)
    2. Stripe(決済完了)
    3. Contact Form 7
  7. 6. 設定後の確認方法——「ちゃんと動いているか」をテストする
    1. 方法①:GTMのプレビューモード(最も確実)
    2. 方法②:GA4のリアルタイムレポート
    3. 方法③:GA4のDebugView(デバッグビュー)
  8. 7. よくあるミスと対処法
    1. ミス① 社内アクセスがCVとしてカウントされている
    2. ミス② サンクスページに直接アクセスできてしまう
    3. ミス③ GTMタグが二重に発火している
    4. ミス④ Ajax型フォームでGA4の「拡張計測機能」と競合している
    5. ミス⑤ クロスドメイン設定で参照元除外が漏れている
  9. 8. 測れないケースとその限界を知る
    1. データ誤差への対処法
  10. 9. 上級編:計測の「精度」を極限まで高める
    1. サーバーサイドGTM(sGTM)
    2. dataLayer(データレイヤー)の活用
    3. GA4 Measurement Protocol(サーバーからGA4に直接送信)
    4. BigQuery(ビッグクエリ)連携
  11. まとめ:データは「共通言語」になります
    1. ステップアップのロードマップ

はじめに

ウェブサイトの運営において、「どこで成果が発生しているか」を正しく把握することは、地図を持って航海に出るのと同じくらい重要なことです。

Googleアナリティクス(GA4)を中心としたコンバージョン設計は、単なるツールの設定作業ではありません。コンバージョン設計は、ビジネスの成功に向けた「経営の設計図」そのものと言えるのです。

本記事では、初心者の方から上級者の方まで、これさえ見ればどんなCVパターンでも計測できるように、具体的なコード例・手順つきで丁寧に解説していきます。

この記事でわかること

  • アナリティクス:GA4でコンバージョン(CV)を正しく計測するための考え方
  • フォーム・予約・LINE・決済など、あらゆるCVパターンの設定方法
  • GTM(Googleタグマネージャー)を使った実装手順とコード例
  • 設定後に「本当に動いているか」を確認するテスト方法
  • よくあるミスとその解決策
  • より精度を高めるための上級テクニック

1. コンバージョン設計はなぜ重要?——「経営設計」としての視点

そもそも、なぜ手間をかけてコンバージョン(CV)を測るのでしょうか。その理由は、サイトの「改善点」を科学的に見つけるためです。

データに基づかない改善は、どうしても「担当者の勘」に頼ってしまいがちです。しかし、正しくCVが設計されていれば、以下のようなことがはっきりと見えてきます。

  • どの広告から来た人が最も予約してくれているか
  • フォームのどの項目でユーザーが入力を諦めているか
  • どのページを見た人がLINEに友だち追加してくれているか
  • スマホとPCで、どちらがより多く問い合わせに至るか

コンバージョン設計は経営設計である

ウェブ上のゴールをどこに置くかは、その企業が何を価値と見なし、どう成長したいかを決める経営判断そのものです。

例えば、中小企業のサイトでよくあるのが「社内のアクセスを除外し忘れて、自分たちのクリックを成果として数えてしまう」といったミスです。不正確なデータで判断を下すと、せっかくの投資を無駄にしてしまいます。

GA4を戦略的に設計することは、会社の限られたリソース(時間やお金)をどこに集中させるかを決める、非常に重要な経営アクションなのです。

2. GA4の基本思想を知ろう——「ページ」から「イベント」へ

GA4を使いこなす第一歩は、これまでのアナリティクス(UA)との違いを理解することです。

ページビューではなく「イベント」を測る

以前のアナリティクス(UA)は「ページが何回見られたか」が基準でした。しかしGA4は、ユーザーの「行動(イベント)」を追跡するツールです。

イベント名発生タイミング自動計測
page_viewページが表示された✅ 自動
scrollページを90%以上スクロールした✅ 自動
click外部リンクをクリックした✅ 自動(拡張計測)
file_downloadファイルをダウンロードした✅ 自動(拡張計測)
form_submitフォームを送信した✅ 自動(拡張計測・不安定)
generate_leadリード獲得(問い合わせ完了)❌ 手動設定が必要
purchase購入・決済完了❌ 手動設定が必要

ポイントform_submit は自動で計測されますが、Ajax型フォームやiframe内のフォームでは正しく動かないことが多いです。重要なCVは必ず手動で設定することを強くお勧めします。

2024年の重要アップデート:「キーイベント」と「コンバージョン」

2024年3月、名称に関する大きな変更がありました。

名称意味
イベントサイト上でのあらゆる行動
キーイベント(旧「コンバージョン」)ビジネスにとって特に重要なイベント。GA4管理画面でスイッチをONにしたもの
コンバージョンキーイベントのうち、Google広告の成果としてインポートされたもの

基本的には、GA4で「成果」として計測したいものを「キーイベント」に指定すると覚えておけば大丈夫です。

GA4での「キーイベント」指定手順

  1. GA4管理画面 → 左下の「管理(歯車アイコン)」をクリック
  2. 「データの表示」→「イベント」を選択
  3. 計測済みのイベントの一覧が表示される
  4. 成果として扱いたいイベントの「キーイベントとしてマーク」をONにする

3. 【判断フロー】あなたのサイトはどのパターン?

設定の前に、まず「自分のサイトのCVがどの仕組みで動いているか」を特定することが最重要です。以下のフローで確認してください。

自サイト内のフォームを使っている

送信後に「送信完了ページ(URL)」が表示されるなら
①サンクスページ型

ページが切り替わらず「完了メッセージ」が出るなら
②Ajax型

ボタンをクリックすると外部サービスへ飛ぶ

そのままLINE・電話・外部サービスへ移動(戻ってこない)なら
③外部遷移型

Stripe・ペイパルなどの決済後、自サイトに戻ってくるなら
⑤クロスドメイン型

ページ内に外部システムが「埋め込まれて」いる

④ iframe埋め込み型

見分け方のコツ:ブラウザの開発者ツール(F12)を開き、「要素」タブで問い合わせフォームや予約ウィジェットのHTMLを確認します。<iframe src="..."> というタグがあればiframe型です。

4. コンバージョン計測の「5つの型」と設定方法

5つのパターン比較表

パターン代表的な事例設定難易度必要なツール
① サンクスページ型独自フォーム、WPforms等★☆☆ 簡単GA4のみ
② Ajax型Contact Form 7、HubSpotフォーム★★☆ 中級GA4 + GTM
③ 外部遷移型LINE友だち追加、電話タップ★★☆ 中級GTM
④ iframe埋め込み型Amelia、Googleフォーム埋め込み★★★ 上級GTM + JS
⑤ クロスドメイン型Stripe、PayPal決済★★☆ 中級GA4設定

① サンクスページ型

フォーム送信後に「送信完了ページ(例:/thanks.html)」が表示される、最も確実で信頼性の高いパターンです。

仕組み
フォーム送信 → 別のURLのページに遷移 → そのページの page_view イベントをCVとして計測します。

GA4のみで設定する方法(推奨)

ステップ1:GA4でイベントを作成する
  • GA4管理画面 → 「管理」→「データの表示」→「イベント」
  • 右上の「イベントを作成」ボタンをクリック
  • 以下の条件を入力する
項目入力値
イベント名generate_lead(問い合わせ完了の場合)
条件①:パラメータevent_name
条件①:演算子等しい
条件①:値page_view
条件②:パラメータpage_location
条件②:演算子含む
条件②:値/thanks(サンクスページのURL)
  • 「保存」をクリック
ステップ2:キーイベントに指定する
  • 作成したイベント一覧から generate_lead を探す
  • 「キーイベントとしてマーク」をONにする

注意:GA4でのイベント作成後、実際にデータが反映されるまで最大48時間かかることがあります。テストはGTM・デバッグモードや「リアルタイム」レポートで確認しましょう。

よくある間違い

page_location には完全なURLが入るため、contains /thanks のように「含む」で指定するのが安全です。https://example.com/thanks/ のようにスラッシュで終わることも多いため。

サンクスページにダイレクトアクセスできてしまう場合は、CV数が水増しされます。フォームを経由しないとサンクスページに行けないようにサーバー側でリダイレクト制限をかけることを推奨します。

② Ajax(アジャックス)型

Contact Form 7などのように、ページが切り替わらずに「送信完了メッセージ」が表示されるタイプです。URLが変わらないため、サンクスページ型の設定では計測できません。

仕組み
JavaScriptがフォーム送信の成功を検知 → GTMの「データレイヤー」に合図を送る → GTMがGA4にイベントを送信します。

GTMを使った設定手順(Contact Form 7の場合)

ステップ1:GTMにカスタムHTMLタグを追加する

GTM管理画面 → 「タグ」→「新規」→「カスタムHTML」を選び、以下のコードを貼り付けます。

<script>
document.addEventListener('wpcf7mailsent', function(event) {
  window.dataLayer = window.dataLayer || [];
  window.dataLayer.push({
    'event': 'cf7_form_sent',
    'formId': event.detail.contactFormId
  });
}, false);
</script>

このコードの意味
Contact Form 7が送信成功時に発火する wpcf7mailsent というイベントを監視し、GTMのデータレイヤーに cf7_form_sent というイベントを送ります。

ステップ2:GTMでトリガーを作成する
  • 「トリガー」→「新規」→「カスタムイベント」を選択
  • イベント名:cf7_form_sent
  • このトリガーの名前:「CF7 送信完了」
ステップ3:GTMでGA4イベントタグを作成する
  • 「タグ」→「新規」→「Googleアナリティクス: GA4イベント」を選択
  • 測定ID:G-XXXXXXXXXX(あなたのGA4測定ID)
  • イベント名:generate_lead
  • トリガー:先ほど作った「CF7 送信完了」を選択
  • 保存してプレビューでテスト
ステップ4:GTMをプレビューして確認する
  • GTM管理画面右上の「プレビュー」をクリック
  • テストしたいサイトのURLを入力して接続
  • フォームをテスト送信する
  • GTMのプレビュー画面で「cf7_form_sent」イベントが発火しているか確認

wpcf7mailsent とは:Contact Form 7が正式に用意しているJavaScriptイベントです。「メールが送信された」タイミングで発火します。wpcf7invalid(バリデーションエラー)、wpcf7spam(スパム判定)など他のイベントも利用できます。

HubSpotフォームの場合

HubSpotは独自のイベントを発火します。

<script>
window.addEventListener('message', function(event) {
  if (event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormSubmitted') {
    window.dataLayer = window.dataLayer || [];
    window.dataLayer.push({
      'event': 'hubspot_form_sent',
      'formId': event.data.id
    });
  }
});
</script>

③ 外部遷移型

「LINE友だち追加ボタン」「電話番号タップ」「外部サービスへのリンク」など、自分のサイトの外へユーザーを送り出すパターンです。

重要な前提
あくまで「ボタンを押したこと」の計測です。その後LINEを追加したかどうか、実際に電話がつながったかはGA4では追えません

GTMでLINE友だち追加ボタンを計測する手順

ステップ1:GTMでトリガーを作成する
  • 「トリガー」→「新規」→「クリック – リンクのみ」を選択
  • 「一部のクリック」を選択
  • 条件:「Click URL」→「含む」→line.me
  • トリガー名:「LINE 友だち追加クリック」
ステップ2:GA4イベントタグを作成する
  • 「タグ」→「新規」→「Googleアナリティクス: GA4イベント」
  • イベント名:line_add_friend
  • イベントパラメータを追加する(任意)
パラメータ名
link_url{{Click URL}}
link_text{{Click Text}}
  • トリガー:「LINE 友だち追加クリック」を選択

電話番号タップを計測する場合

電話番号リンクは tel: で始まるURLです。

  • トリガー条件:「Click URL」→「含む」→tel:
  • イベント名:phone_call_click

スマホのみで計測したい場合の追加条件:「Device Category」→「等しい」→mobile

注意:GTMの「リンククリック」変数を有効にする

GTMでリンクURLやリンクテキストを取得するには、事前に「組み込み変数」を有効にする必要があります。

  • GTM → 「変数」→「組み込み変数の設定」
  • 「クリック」セクションの以下にチェックを入れる
  1. ✅ Click Element
  2. ✅ Click Classes
  3. ✅ Click ID
  4. ✅ Click Target
  5. ✅ Click URL
  6. ✅ Click Text

④ iframe(アイフレーム)埋め込み型

予約システム(Ameliaなど)や外部フォームを、自分のページの中に「埋め込み」で表示している場合です。

なぜ難しいか
ブラウザのセキュリティ上、異なるドメインのiframe内の動きは外側のJavaScriptから直接見ることができません(クロスオリジン制限)。

解決策
postMessage という技術を使って、子ウィンドウ(iframe内)から親ウィンドウへ「完了した」というメッセージを送り、それを親側のGTMで受け取ります。

パターンA:iframeの中身が自社管理の場合

自分でiframe内のページも編集できる場合は、完了時に以下のコードを実行します。

// iframe内(子ページ)に記述するコード
// 予約完了・フォーム送信完了のタイミングで実行する
window.parent.postMessage({
  event: 'booking_complete',
  serviceId: '001',    // 任意のパラメータを追加できる
  amount: 5000
}, '*');
// 第2引数の '*' は送信先のオリジン。自社ドメインを指定するとより安全
// 例:'https://example.com'

親ページ(GTM)側でこのメッセージを受け取るカスタムHTMLタグ:

<script>
window.addEventListener('message', function(event) {
  // セキュリティのため送信元を確認(任意だが推奨)
  // if (event.origin !== 'https://booking.example.com') return;

  if (event.data && event.data.event === 'booking_complete') {
    window.dataLayer = window.dataLayer || [];
    window.dataLayer.push({
      'event': 'iframe_booking_complete',
      'serviceId': event.data.serviceId,
      'amount': event.data.amount
    });
  }
});
</script>

トリガー:「カスタムイベント」→iframe_booking_complete

パターンB:iframeの中身が他社サービスの場合(Googleフォームなど)

中身を編集できない場合は、URL変化やiframeのロードイベントを監視する方法もあります。ただし信頼性が低いため、可能であればサービス提供会社のWebhook機能やAPIを使うことを検討してください。

Googleフォームを使っている場合の代替手段:

  • Googleフォームの「回答」→「Googleスプレッドシートにリンク」を設定
  • スプレッドシートのAppScriptで回答時にGA4 Measurement Protocol経由でイベントを送信する(上級)

⑤ クロスドメイン型

自分のサイトからStripeなどの外部決済ページへ移動し、支払い後に自サイトに戻ってくるパターンです。

なぜ問題になるか
GA4はデフォルトで「別のドメインから来たユーザー」を「新規ユーザー」として扱います。Stripeから戻ってきたユーザーは「Stripeからの参照」として記録され、元々どの広告から来たかという情報が失われてしまいます。

設定手順

ステップ1:GA4でクロスドメイン計測を設定する
  • GA4管理画面 → 「管理」→「データの収集と修正」→「データストリーム」
  • 対象のデータストリームをクリック
  • 「タグの設定を行う」→「その他のタグ付けの設定」を開く
  • 「クロスドメイン計測の設定」をクリック
  • 「条件を追加」→ドメインとして stripe.com を追加(ホスト名含むstripe.com
  • 保存
ステップ2:参照元除外リストに登録する
  • 同じ「その他のタグ付けの設定」内の「望ましくない参照情報リスト」をクリック
  • stripe.com を追加する
  • 保存
ステップ3:Stripe側でサンクスページへのリダイレクトを設定する

Stripe Payment Linksの場合:

  • Stripe管理画面 → 「Payment Links」→ 対象のリンクを選択
  • 「確認後のリダイレクト」を有効にする
  • リダイレクト先:https://example.com/thanks/?purchased=true のように設定
  • サンクスページで通常のGA4サンクスページ型計測を行う

確認方法:GA4の「リアルタイム」レポートで決済フローを手動でテストし、流入元が「Stripe」ではなく元の広告媒体(例:google / cpc)として記録されているかを確認します。

5. 人気ツールの具体的な実装テクニック

Amelia(予約システム)

AmeliaはWordPress向けの高機能予約プラグインです。

有料版のGA4直接連携(最も簡単)

  1. WordPress管理画面 → 「Amelia」→「Settings」→「Integrations」
  2. 「Google Analytics」の項目にGA4測定ID(G-XXXXXXXXXX)を入力
  3. 保存

これだけで以下のイベントが自動送信されます:

イベント名タイミング
amelia_booking_initiated予約フォームを開いた
amelia_booking_step_completed各ステップを完了した
amelia_booking_confirmed予約完了(キーイベントに設定推奨)

無料版の場合(GTM + postMessage)

Ameliaは無料版でもiframe内から親画面へメッセージを送ることができます。④のiframe型の設定を参考に、event: 'amelia_booking_confirmed' を待ち受けるカスタムHTMLタグをGTMに追加します。

Stripe(決済完了)

Stripe Payment Linksを使う場合

  • Stripe管理画面 → 「Payment Links」→「作成」または既存のリンクを編集
  • 「確認後のページ」→「カスタムページへリダイレクト」を選択
  • URL:https://example.com/purchase-thanks/
  • GA4でサンクスページ型(①)の設定を行う
  • 必ず参照元除外リストに stripe.com を登録する(⑤クロスドメイン型の手順を参照)

Stripe Elements / Stripe.js を使う場合(開発者向け)

決済完了のコールバック関数内でdataLayerを直接発火させます。

// 決済完了ハンドラ内
const { paymentIntent, error } = await stripe.confirmPayment({...});

if (paymentIntent && paymentIntent.status === 'succeeded') {
  window.dataLayer = window.dataLayer || [];
  window.dataLayer.push({
    event: 'purchase',
    ecommerce: {
      transaction_id: paymentIntent.id,
      value: paymentIntent.amount / 100,  // Stripeは金額をセント単位で返す
      currency: paymentIntent.currency.toUpperCase()
    }
  });
}

Contact Form 7

WordPressで最も広く使われているこのフォームプラグインは、GTMとの相性が抜群です。②Ajax型の設定(wpcf7mailsent)をそのまま利用できます。

フォームが複数ある場合の識別

複数のフォームを区別して計測したい場合、formId パラメータを活用します。

<script>
document.addEventListener('wpcf7mailsent', function(event) {
  window.dataLayer = window.dataLayer || [];
  window.dataLayer.push({
    'event': 'cf7_form_sent',
    'formId': event.detail.contactFormId,
    'formTitle': event.detail.inputs.reduce(function(acc, input) {
      return acc; // 必要に応じてフォームタイトルを追加
    }, '')
  });
}, false);
</script>

GA4側でイベントパラメータ formId を「カスタムディメンション」に登録しておくと、どのフォームからの問い合わせが多いかをレポートで確認できます。

6. 設定後の確認方法——「ちゃんと動いているか」をテストする

設定しただけで安心してはいけません。必ず動作確認を行いましょう

方法①:GTMのプレビューモード(最も確実)

  • GTM管理画面 → 右上「プレビュー」をクリック
  • テストしたいサイトのURLを入力 → 「Connect」
  • 別タブでサイトが開き、画面下部にGTMのデバッグパネルが表示される
  • CVとなる操作(フォーム送信など)を実行する
  • デバッグパネルで発火したタグとイベントを確認する

確認ポイント

  • 意図したタグが「Fired Tags」に表示されているか
  • データレイヤーに正しい値が渡っているか
  • GA4タグが正しいイベント名で発火しているか

方法②:GA4のリアルタイムレポート

  • GA4管理画面 → 左メニュー「レポート」→「リアルタイム」
  • テストとなる操作を実行する
  • 数秒後に「過去30分のイベント」に該当イベントが表示されるか確認

方法③:GA4のDebugView(デバッグビュー)

ブラウザ拡張機能「Google Analytics Debugger」を使うことでより詳細な確認が可能です。

  • Chrome拡張機能「Google Analytics Debugger」をインストールしてONにする
  • GA4管理画面 → 「管理」→「DebugView」を開く
  • サイト上でテスト操作を行う
  • DebugViewにリアルタイムでイベントが流れてくる

注意:本番公開前に必ずGTMプレビューでテストし、問題がなければGTMを「公開」してから本番サイトに反映させましょう。プレビューモード中は自分のブラウザにしか変更が適用されません。

7. よくあるミスと対処法

ミス① 社内アクセスがCVとしてカウントされている

症状:CVが異常に多い、または定期的にCVが発生している
原因:制作会社や自社スタッフのアクセスが計測されている

対策

  • GA4管理画面 → 「データの収集と修正」→「データフィルタ」
  • 「内部トラフィック」を有効にしてオフィスのIPアドレスを除外する
フィルタの種類:内部トラフィック
条件:traffic_type が内部と等しい

ミス② サンクスページに直接アクセスできてしまう

症状:フォームを送信していないのにCVが発生している
原因:検索エンジンのクローラーやユーザーが直接URLにアクセスできる

対策(いずれか)

  • サーバー側でRefererチェックを行い、フォームページ以外からのアクセスをリダイレクトする
  • サンクスページのURLをランダムな文字列にしてGoogleにインデックスされないようにする(noindex設定)
  • WordPressの場合:フォームプラグインの「リダイレクト」機能を使い、フォーム送信後のみサンクスページへ遷移するようにする

ミス③ GTMタグが二重に発火している

症状:CVが実際の2倍になっている
原因:GTMのトリガー条件が広すぎる、または同じGA4タグが複数設定されている

対策

  1. GTMプレビューモードでCV操作を実行し、同じタグが2回「Fired」に表示されていないか確認
  2. ページに直書きのGA4タグとGTM経由のGA4タグが両方設定されていないか確認(二重計測の典型)

ミス④ Ajax型フォームでGA4の「拡張計測機能」と競合している

症状form_submit イベントが発火しているが、CVが正確でない
原因:GA4の拡張計測機能の「フォームの操作」が半端に計測してしまっている

対策

  1. GA4 → 「管理」→「データストリーム」→「拡張計測機能」
  2. 「フォームの操作」のみOFFにして、手動設定のイベントと重複させない

ミス⑤ クロスドメイン設定で参照元除外が漏れている

症状:広告の成果がすべて「stripe.com(参照)」になっている
原因:クロスドメイン計測は設定したが、参照元除外リストへの追加を忘れた

対策

「⑤クロスドメイン型」の設定手順を再確認し、参照元除外リストに外部決済ドメインを追加する。

8. 測れないケースとその限界を知る

どんなに完璧に設定しても、100%の計測は不可能です。データの「誤差」を理解しておくことも、プロの視点では重要です。

制約内容おおよその影響度
ITP(Cookie規制)iPhoneのSafariなどがCookieの有効期限を制限する。数日後の再訪が「新規ユーザー」に見えてしまう中〜大(モバイルが多いサイトで顕著)
アドブロッカー広告ブロック拡張機能を使っているユーザーのGTMやGA4タグがブロックされる小〜中(技術系サイトは大きい)
しきい値適用ユーザー数が少なすぎる場合、GA4がプライバシー保護でデータを隠す小規模サイトで顕著
Same-Site Cookieブラウザのデフォルト設定変更により、サードパーティCookieの追跡精度が落ちている
JavaScriptエラーGTMタグが動く前にJSエラーが発生すると計測されないサイト品質次第

データ誤差への対処法

  • GA4の数値は「傾向」として見る習慣をつける( 数字の絶対値より前月比や前年比を重視)
  • 重要なCVについては、CRM(顧客管理システム)やサーバーログなど別の数値と照合して実態を把握する
  • サーバーサイドGTM(後述)を導入することで、ITPやアドブロッカーの影響を大幅に軽減できる

9. 上級編:計測の「精度」を極限まで高める

サーバーサイドGTM(sGTM)

通常はユーザーのブラウザ上で動かすタグを、自社のサーバー(Google Cloudなど)側で動かす方法です。

主なメリット

  • ITPの影響を受けない(ファーストパーティCookieとして処理できる)
  • アドブロッカーに検知されにくい
  • ページの読み込み速度が向上する(ブラウザに複数タグを読み込ませる必要がなくなる)

費用感

Google Cloud Runを使う場合、月数百〜数千円程度が目安(トラフィック次第)

dataLayer(データレイヤー)の活用

「どの物件に興味を持ったか」「予約の金額はいくらか」といった情報を、個人情報を除いた状態でGA4に送れます。

// フォームの入力内容(金額・カテゴリなど)を送信する例
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  event: 'generate_lead',
  lead_category: '住宅リフォーム',    // 問い合わせカテゴリ
  estimated_budget: '100万〜200万円', // 予算帯
  form_id: 'contact_main'             // フォームID
});

これをGA4の「カスタムディメンション」に登録すると、「高単価な見込み客がどの広告から来たか」「どのカテゴリの問い合わせが多いか」といった深い分析が可能になります。

GA4でカスタムディメンションを登録する手順

  • GA4管理画面 → 「管理」→「カスタム定義」→「カスタムディメンションを作成」
  • ディメンション名:問い合わせカテゴリ
  • スコープ:イベント
  • イベントパラメータ:lead_category
  • 保存

GA4 Measurement Protocol(サーバーからGA4に直接送信)

Googleフォームの回答やCRM登録など、ブラウザを介さない成果もGA4に記録できます。

サーバー側(Node.js例):

// GA4 Measurement Protocol v2
const measurementId = 'G-XXXXXXXXXX';
const apiSecret = 'YOUR_API_SECRET'; // GA4管理画面で取得

async function sendEvent(clientId, eventName, params = {}) {
  await fetch(
    `https://www.google-analytics.com/mp/collect?measurement_id=${measurementId}&api_secret=${apiSecret}`,
    {
      method: 'POST',
      body: JSON.stringify({
        client_id: clientId,
        events: [{ name: eventName, params }]
      })
    }
  );
}

// 使用例
sendEvent('user_123', 'generate_lead', {
  source: 'crm_import',
  value: 50000
});

APIシークレットの取得方法

GA4 → 「管理」→「データストリーム」→「Measurement Protocol API secrets」→「作成」

BigQuery(ビッグクエリ)連携

GA4の生データをGoogleのデータウェアハウスへエクスポートし、SQLで自由に分析する方法です。

できるようになること(例)

  • 「2回以上訪問して問い合わせた人の、最初の流入元」
  • 「問い合わせに至ったユーザーが、直前に見ていたページの一覧」
  • 「月・曜日・時間帯別のCV率の変化」

連携手順

  • GA4管理画面 → 「管理」→「プロダクトリンク」→「BigQueryのリンク」
  • 「リンク」をクリック
  • BigQueryプロジェクトを選択(Googleアカウントでプロジェクトを事前に作成)
  • エクスポート設定(毎日 or ストリーミング)を選択
  • 完了後、BigQueryのコンソールでSQLクエリを実行できる

費用

BigQueryの最初の1TB/月のクエリ処理は無料。GA4の連携自体に費用はかかりません。

まとめ:データは「共通言語」になります

コンバージョン設計をマスターすることは、サイトの成功だけでなく、チームや会社全体に「事実に基づいた共通言語」をもたらすことでもあります。

広告担当者、制作者、そして経営者。全員が同じデータを見て、「ここを直そう」と話し合える環境こそが、変化の激しい現代において最大の強みになります。

ステップアップのロードマップ

ステップやること難易度
STEP 1サンクスページ型のGA4設定(①)でまず1つCVを計測する★☆☆
STEP 2GTMを導入し、Ajax型(②)や外部遷移型(③)にも対応する★★☆
STEP 3設定後の確認方法(GTMプレビュー・DebugView)を習得する★★☆
STEP 4dataLayerでイベントパラメータを活用し、CVの質を分析する★★★
STEP 5サーバーサイドGTMでデータ精度を高める★★★

まずは基本のサンクスページ設定から始めて、徐々に高度な計測へとステップアップしていきましょう。あなたのサイトが、より価値のある「経営の武器」になることを応援しています。

“ホームページ運用の悩み”を抱えていませんか?

ホームページの運用は、単に更新するだけでは成果が出ません。戦略がなければ、どれだけ手を動かしても 「やっているつもり」で終わります。

インコンフォルメは、あなたの会社の最高マーケティング責任者(CMO)として、ホームページを運用します。

あなたの会社の「ビジネスモデル」「利益構造」「強みと弱み」「競合環境」などをしっかりと理解した上で、「売上を伸ばす」「採用を成功させる」といった経営目標から逆算した運用戦略で成果を出します。

まずは無料相談でホームページの現状を聞かせてください。

Web投資のROIがわかる 経営ROI意思決定シミュレーター もご用意しています。
現状の課題を正確に把握するための Webサイト現状診断 もご用意しています。

プロのノウハウ提供
シェアする