Google広告でお問い合わせフォームのコンバージョンを計測している場合、
拡張コンバージョンを設定すると、メールアドレスなどのユーザー提供データを利用してコンバージョン計測の精度を補強できます。
今回まとめるのは、以下のような構成です。
- お問い合わせ入力ページ
- 内容確認ページ
- サンクスページ
- Googleタグマネージャー(GTM)を使用
- 通常のGoogle広告コンバージョンはサンクスページで計測済み
- 確認ページにはメールアドレスが表示される
- サンクスページにはメールアドレスが表示されない
結論としては、確認ページでメールアドレスを取得する「Google Ads User-Provided Data Event」を発火させ、サンクスページでは今まで通り通常のコンバージョンタグを発火させる構成にします。
お問い合わせ入力
↓
確認ページ
↓
Google Ads User-Provided Data Event
メールアドレスを取得
↓
送信
↓
サンクスページ
↓
既存のGoogle広告コンバージョンタグ
既存のコンバージョンタグは変更しないため、現在のCV計測に影響を与えにくい方法です。
拡張コンバージョンとは?
Google広告の拡張コンバージョンは、フォームに入力されたメールアドレスや電話番号などのファーストパーティデータを利用して、コンバージョン計測を補強する仕組みです。
例えば、ユーザーがGoogle広告をクリックしたあとにお問い合わせをした場合、
Google広告クリック
↓
お問い合わせ
↓
フォームに入力されたメールアドレス
↓
Google側で照合
という形で、広告クリックとコンバージョンの紐付け精度を高めるために利用されます。
メールアドレスなどのデータは、そのまま広告管理画面に表示されるわけではありません。
今回設定するフォームの構成
今回のフォームは次の構成を想定しています。
/contact/
お問い合わせ入力
↓
/contact/confirm.php
入力内容確認
↓
/contact/thanks/
送信完了
ポイントは、メールアドレスが確認ページには存在するものの、サンクスページには存在しないことです。
通常のコンバージョンはサンクスページで発火させますが、サンクスページではメールアドレスを取得できません。
そのため、
確認ページ
→ メールアドレスを取得
サンクスページ
→ 通常CVを計測
と役割を分けます。
既存のコンバージョンタグは変更しない
すでにGoogle広告の通常コンバージョンをGTMで設定している場合、基本的には変更しません。
例えば、
タグ:
Google Ads コンバージョントラッキング
トリガー:
サンクスページ
というタグが動いているなら、そのまま残します。
今回新しく追加するのは、
Google Ads User-Provided Data Event
です。
つまり、
既存
Google Ads コンバージョントラッキング
→ そのまま
新規
Google Ads User-Provided Data Event
→ 追加
という構成です。
手順
最初に手順を簡単に説明してから、後で補足していきたいと思います。
① Google Ads User-Provided Data Eventタグを作成する
(1)Googleタグマネージャーを開き、「タグ」→「新規」を選択します。
(2)左上には任意の名前を入れます。
(3)タグタイプから、Google Ads User-Provided Data Event を選択します。
(4)コンバージョンIDには、Google広告のコンバージョンIDを設定します。
例えばGoogle広告側で、
AW-123456789
となっている場合、GTMの入力欄によっては、
123456789
のように数字だけ入力・表示される場合があります。
新しいコンバージョンアクションを作成するわけではなく、現在使用しているGoogle広告のコンバージョンIDを利用します。
私はすでにサンクスページにコンバージョン設定をGTMでしており、そのときに入力した数字を使いました。
すでに設定してあるコンバージョンID確認方法
手動で登録してある場合の確認方法です👇
① Google広告の左側「目標」→「コンバージョン」→「すべてのコンバージョン」
② サンクスページのコンバージョンアクションをクリック(すでに作成している任意のもので)
③ 下の方のデータソース/イベントのところの「管理」
④ Googleタグマネージャーを使用する の上タブをクリック
⑤ ここに コンバージョンラベル と コンバージョンID が書いてある
② ユーザー提供データ変数を作成する
次に、メールアドレスをGoogle Ads User-Provided Data Eventへ渡します。
(1)「ユーザー提供データ」のプルダウンから「新しい変数」をクリックします。

(2)左上に任意の変数名を入力します。
(3)Manual configuration(手動設定)を選択します。

(4)メールのプルダウンの一番下の「新しい変数」
(5)左上に任意の変数名を入力します。
(6)変数のタイプは「DOM要素」(※1後述します)
(7)選択方法は「CSSセレクタ」を選択します。(IDで指定できる場合はそれを使用)
(8)要素セレクタにはCSSクラスを入れます。属性名は空欄。

(9)保存
③ トリガー
今回のトリガーには確認ページのURLを入れたいと思います。(※2後述します)
(1)トリガータイプ「DOM Ready」
(2)このトリガーの発生場所「一部のDOM Readyイベント」
(3)イベント発生時にこれらすべての条件が true の場合にこのトリガーを配信します
のところには
「{{Page Path}}」「含む」「確認ページURLパス」
(4)保存
④ コンバージョンリンカーも設置する
GTMでは、Google広告用のコンバージョンリンカーも設置します。
タグタイプから、
コンバージョン リンカー
を選択します。
基本的には、
トリガー:
All Pages
で設定します。
すでにコンバージョンリンカーを使用している場合、新しく重複して作る必要はありません。
⑤ 公開 ※3
(1)プレビューで発火確認
(2)メールアドレスが表示されていることを確認(後述)
(3)コンバージョン発火も確認
(4)全てOKなら公開
※1 確認ページからメールアドレスを取得する
今回一番つまずいたのがここでした。
入力ページでは、
<input id="email" type="email">
のようにメールアドレス入力欄があっても、確認ページでは同じHTMLになっているとは限りません。
例えば確認ページがPHPで、
<dl class="contact-table">
<div class="contact-row">
<dt>お名前</dt>
<dd>山田太郎</dd>
</div>
<div class="contact-row">
<dt>メールアドレス</dt>
<dd>sample@example.com</dd>
</div>
</dl>
のように生成されている場合、
#email
という要素は存在しません。
この状態でGTMから #email を指定しても、
null
になります。
PHPを変更せずCSSセレクタでメールアドレスを取得する
確認ページのPHPを変更したくない場合は、CSSセレクタでメールアドレスの <dd> を指定できます。
例えばメールアドレスが2番目の行なら、
.contact-table:nth-child(2) dd
と指定します。
GTMで、
「変数」→「新規」→「DOM要素」
を選択します。
設定例はこちらです。
変数タイプ:
DOM 要素
選択方法:
CSS セレクタ
要素セレクタ:
.contact-table:nth-child(2) dd
属性名:
空欄
これで、
<dd>sample@example.com</dd>
の中にある、
sample@example.com
を取得できます。
nth-childの番号には注意
メールアドレスが3番目なら、
.contact-table:nth-child(3) dd
になります。
ブラウザで確認ページを開き、メールアドレス部分を右クリックして、
「検証」
を選択するとHTML構造を確認できます。
フォーム項目の順番を変更すると nth-child() の番号も変わるため、フォームを修正した場合はGTM側も確認しておく必要があります。
※2 確認ページだけでタグを発火させる
Google Ads User-Provided Data Eventは、メールアドレスが表示されている確認ページで発火させます。
例えば確認ページが、
/contact/confirm.php
なら、GTMで確認ページだけを対象にしたトリガーを作成します。
設定例です。
トリガータイプ:
ページビュー
一部のページビュー
Page Path
含む
/contact/confirm.php
サイトの構成によっては、
Page Path
等しい
/contact/confirm.php
でも構いません。
今回の場合、Page URL ではなく Page Pathを条件にしたことで正常に発火するようになりました。
サンクスページをトリガーにすると、そのページにはすでにメールアドレスが存在しないため注意が必要です。
※3 GTMプレビューモードで確認する
設定が終わったら、いきなり公開せずにGTMのプレビューで確認します。
お問い合わせフォームからテスト用メールアドレスを入力して、確認ページまで進みます。
例えば、
sample@example.com
と入力します。
左の概要のところの確認ページのところの「DOM Ready」をクリックして、主に「値」のところを確認します。

ここに、作成した変数名とメールアドレスが表示されればOK!
失敗している場合は、
null
undefined
などになります。
User-Provided Data Eventの発火も確認する
確認ページで、
Google Ads User-Provided Data Event
が Fired になっていることも確認します。
理想的な状態は、
確認ページ
Google Ads User-Provided Data Event
→ Fired
確認画面メールアドレス
→ sample@example.com
です。
タグが発火していても、メールアドレス変数が null になっている場合は正常にデータを渡せていないため、タグの発火と変数の値の両方を確認することが重要です。
サンクスページでは既存のコンバージョンタグを確認する
確認画面で問題がなければ、そのままフォームを送信します。
サンクスページでは、
Google Ads コンバージョントラッキング
という既存の通常コンバージョンタグが発火することを確認します。
全体として、
入力ページ
↓
確認ページ
Google Ads User-Provided Data Event
→ メールアドレス取得
↓
送信
サンクスページ
既存のGoogle Adsコンバージョンタグ
→ CV計測
となっていればOKです。
User-Provided Data Eventが発火するとCVが増える?
Google Ads User-Provided Data Eventが発火しただけで、通常のコンバージョンが1件追加されるわけではありません。
役割が違います。
Google Ads User-Provided Data Event
→ ユーザー提供データを送る
Google Ads コンバージョントラッキング
→ CVを計測する
そのため、既存のCVタグを変更せずに追加設定することで、現在のコンバージョン計測を維持したまま拡張コンバージョンを導入できます。
Google広告側で拡張コンバージョンの状態を確認する
GTMを公開したあと、Google広告側でも状態を確認します。
Google広告から、
目標
↓
コンバージョン
↓
概要
↓
対象のコンバージョンアクション
を開きます。
「診断」などの項目から、拡張コンバージョンのデータを受信できているか確認できます。
GTMを公開してすぐに状態が反映されるとは限りません。
数日程度待ってから確認すると、診断結果が表示されることがあります。
そのため、
GTMで公開
↓
すぐGoogle広告を確認
↓
表示されない
となっても、すぐに設定ミスと判断しない方がよいです。
メールアドレスだけでも拡張コンバージョンを設定できる?
メールアドレスだけでも利用できます。
フォームで、
- メールアドレス
- 電話番号
の両方を取得している場合は、両方を設定することもできます。
ただし、必ずすべての情報を設定しなければならないわけではありません。
今回のように、まずメールアドレスを確実に取得できるようにしておく方法でも拡張コンバージョンを導入できます。
CSVで成約データをアップロードする方法とは別物
以前、
- 名前
- 電話番号
- 成約日時
- メールアドレス
などをCSVにしてGoogle広告へアップロードしたことがある場合、それは今回の設定とは少し役割が違います。
今回設定した拡張コンバージョンは、
広告
↓
お問い合わせ
の計測精度を補強するものです。
一方、成約データのアップロードは、
広告
↓
お問い合わせ
↓
電話・見積もり
↓
実際に成約
↓
成約データをGoogle広告へ戻す
という使い方です。
例えば問い合わせ後に必ずしも成約するとは限らないサービスでは、
お問い合わせCV
と、
実際の成約
を分けて計測できます。
つまり、この2つは競合する設定ではなく、目的が異なります。
今回の設定内容まとめ
今回設定した内容をまとめると、次のようになります。
【お問い合わせ入力ページ】
ユーザーがメールアドレスなどを入力
↓
【確認ページ】
Google Ads User-Provided Data Event
→ 発火
DOM要素変数
→ メールアドレスを取得
ユーザー提供データ変数
→ メールアドレスをGoogle Adsタグへ渡す
↓
【サンクスページ】
既存の
Google Ads コンバージョントラッキング
→ 発火
↓
通常CVを計測
さらに、
コンバージョンリンカー
→ All Pages
も設置します。
今回のように「確認ページにはメールアドレスがあるが、サンクスページにはない」というフォームでも、確認ページでユーザー提供データを取得することで拡張コンバージョンを設定できます。
まとめ
Google広告の拡張コンバージョンをGTMで設定するときは、通常のコンバージョンタグとユーザー提供データ用タグを分けて考えると分かりやすいです。
今回のポイントは次の通りです。
- 既存の通常CVタグは変更しない
- Google Ads User-Provided Data Eventを追加する
- メールアドレスが存在する確認ページで発火させる
- DOM要素変数でメールアドレスを取得する
- PHPを変更したくない場合はCSSセレクタでも取得できる
- GTMプレビューで実際のメールアドレスが変数に入っていることを確認する
- サンクスページでは従来通り通常CVを発火させる
- コンバージョンリンカーも設置する
- 公開後はGoogle広告の診断画面で状態を確認する
特に注意したいのは、「タグが発火している=メールアドレスも正常に取得できている」ではないことです。
GTMのプレビューモードで、
Google Ads User-Provided Data Event
→ Fired
メールアドレス変数
→ sample@example.com
の両方を確認してから公開すると安心です。


