先日、某サービスを展開する企業のWebサイトでアナリティクスのコンバージョンを確認する機会がったが、なぜかお問い合わせのサンクスページではなく、入力フォームでコンバージョンが設定されていた。

これでは、お問い合わせフォームを見ただけで、コンバージョンがカウントされてしまうのだが、よくよく見るとサンクスページも入力フォームも同じパスであった。アナリティクスの目標設定、目標詳細のパスには /contact/index.php と設定されている。このパスは入力フォームであり、更にサンクスページをも指している。

contact

つまり、この設定においては、入力フォームだけを見たセッションと入力フォームからサンクスページまで見たセッションをそれぞれコンバージョンとしてカウントしてしまう可能性がある

このような設定は珍しいものではなく、時々目にすることがあり、たいていお問い合わせフォームはコンタクトフォーム7(contact form7)が使われている。

コンタクトフォームのサンクスページというのは、実際には、入力フォームの下に1行程度のサンクスメッセージが表示されているのみだ。下のイメージ緑枠がそれだ。

ありがとうございました

どうすればよいのだろうか?

答えは2つ。

1.イベント設定を行う

サンクスページのコンバージョン設定ではなく、ボタンのクリック(イベント)によるコンバージョン設定だ。このリンクは コンタクトフォーム7 作者によるアナリティクスのイベント設定( analytics.js )である。
https://contactform7.com/ja/tracking-form-submissions-with-google-analytics/

注意点として、イベント設定はアナリティクスのバージョン(analytics.js or gtag.js)によって異なるので確認が必要だ。

analytics.js の場合。 全ての analytics.js タグの下に設置。
カテゴリ(例):linkclick
アクション(例):click1
ラベル(例):label

<pre class="lang:default decode:true ">
<script>
document.addEventListener( 'wpcf7mailsent', function( event ) {
    ga('send','event','linkclick','click1','label');
}, false );
</script>
</pre>


gtag.js の場合。全てのgtag.js タグの下に設置。
カテゴリ(例):linkclick
アクション(例):click1
ラベル(例):label

<pre class="lang:default decode:true "><script>
document.addEventListener( 'wpcf7mailsent', function( event ) {
    gtag('event', 'click1', {'event_category': 'linkclick','event_label': 'label'});
}, false );
</script>
</pre>


タグマネージャーで設定したい場合は GTMによるコンタクトフォーム7 設定完全版GA4対応


2.コンタクトフォーム7以外のプラグインを使う

MW WP FORM を使うことだ。このプラグインはサンクスページの専用のパス設定できるようになっているから、入力フォームとサンクスページのパスが同じになってしまうことが無い。よって、サンクスページのパスを アナリティクスの目標設定、目標詳細のパスに入力すればよい。

thanks

以上である。