GA4と旧アナリティクスタグでのイベント送信方法の差異について調べてみた

GA4で特定のリンククリックをイベントとして認識するための送信コードは、あまり例示されていません。
そこで、旧アナリティクスタグとの違いをお伝えします。

なお、GA4はコードを記述しなくても特定のリンククリックをイベントとして認識できます。
その方法もお伝えします。

送信コードの記述方法

特定のリンククリックでイベントを送信するには、Webページのリンクタグにonclick属性を追加します。

リンクタグにonclick属性設置したひな型パターン
<a href="遷移先URL" onclick="送信コード">リンクテキスト</a>

今回の主題となっているのが、上のコード中の送信コードがユニバーサルアナリティクスタグ(旧タグ)とGA4でどのような違いがあるかです。
そこで各タグの送信コードを挙げてみます。

なお挙げたコード内の青文字は、任意の文字を指定することを意味しています。
また、onclick内に記述するときは改行は必要ありません。

ユニバーサルアナリティクスタグの送信コード

gtag( 'event' , アクション名, {
    'event_category' : カテゴリー名,
    'event_label' : ラベル,
    'value' : 
});

'event_label''value'の行は省略できます。

GA4タグの送信コード

gtag( 'event' , イベント名, {
    パラメーター1 : パラメーター値1,
    パラメーター2 : パラメーター値2,
    パラメーター3 : パラメーター値3,
});

ここではパラメータを3つ定義していますが、実際は任意の数を指定できます。

どこが異なるのか?

どちらもgtag関数を使用してアナリティクスにイベントを送信しています。
各引数の配置も同じです。
旧タグ用に作成した送信コードは、そのままGA4でも機能します。

異なるのはアナリティクスに送った後、アナリティクスが受け取ったデータをどのように使用するかの違いでしかありません。

GA4でコードを記述せずにイベント定義する

GA4はコードをWebサイトに組み込まなくても、アナリティクス上で特定のクリックをイベントとして認識できます。

Webサイトへのコード組み込みはプロのプログラマでもミスをすることがあります。
アナリティクス上だけで設定できるなら、そちらを使用したほうがいいですね。

手順

(1) メニューからイベントを選択し、「イベントを作成」ボタンを押す。

(2) カスタムイベント名に自分が割りやすい名前を入力します。

(3) 一致する条件の一行目(①)に次の値を選択または入力します。

パラメータ:event_name
演算子:等しい
値:click

(4) 「条件を追加」を押して、一致する条件の行を増やします。

(5) 増やした行にリンクタグの情報を入力します。

次のリンクタグを例として、各パラメーターを解説します。

<a id="" class="" href="">リンクテキスト</a>

解説中の位置は次のようになっています。

<a id="abc" class="aaa bbb ccc" href="https://affi-sapo.com/3216/">リンクテキスト</a>

■GA4の特定リンククリックイベント設定
パラメータ 演算子 値の例 解説
link_id 等しい abc の値が一致します
link_classes 含む bbb の値と一致します。どれか一つのクラスが含まれているか確認したい場合は演算子に「含む」を指定します
link_url 等しい https://affi-sapo.com/3216/ の値と一致します
link_domain 等しい affi-sapo.com のドメインと一致します
page_location 等しいまたは含む リンクがある対象ページ クリックしたページのURLです

上の表の一つまたは複数のパラメータを使用して、クリックされたリンクタグを特定されます。

(6) 保存します。

イベントの確認

GA4ではメニューのイベントで、既存のイベントとして確認できます。
しかしWebページ上の対象となるリンクをクリックした後、イベントページの参照日付を"今日"にしても、一覧に表示されません。

タイトル

リアルタイムを見ることでイベントを捕捉できますが、捕捉できるようになるまで時間がかかります。

そのため、設定がうまくできているのかをすぐに確認できません。

しばらく(一時間くらい)たってから、リンクをクリックして確認してみてください。

各自にclickイベントが発生している保証は不明

Webページでリンクがクリックされると、アナリティクスがWebページに組み込んだスクリプトが動作して、アナリティクスのデータベースに送信されます。
しかしスクリプトの処理中にページが切り替わってしまうと、送信されずに終わってしまいます。

GA4でこの問題に対する対処がされているのかは不明です。
そのため、全ての画面遷移でclickイベントが送信されているかも不明です。

GTMでのイベント定義

すぐに確認できないことは時は大きなデメリットとなります。
後でチェックしようと思っていてほかの作業をしていたら、完全に忘れてたというケースが意外と多いものです。

その場合は、GTMでイベントを定義することをお勧めします。

GTMはイベントが発生しているかを、プレビューを使用して事前に確認できます。
また、イベントが送信されるまで待ってからページを遷移することが可能です。

GTMでもクリックイベント設定は、次の記事を読んでみてください。

GTMで特定のリンククリックを検知するトリガーの設定方法