プログラミング雑記

Google Analytics (GA4) でカスタムイベントがダブルカウントされる原因

楠 剛毅(goke)

個人開発から世界を変えるようなプロダクトづくりを目指しています

この記事はGTMを利用しないケースの記事です。

GA4で特定のクリックやユーザーのなんらかのアクションをトラックしたい場合にカスタムイベントを設定してイベントの発生件数をカウントしたいことがありますが、2重でカウントされてしまうことがあり少しハマったので原因をまとめます。

GA上のカスタムイベントを設定し、かつ、JavaScriptからも送ってしまっているパターン

ハマっていたのはこのパターンなのですが、単純に「2重で設定しているから2重でカウントされてしまっていた」というパターンです。

例えば「いいねボタン」が押された数をカウントしたいとします。
その場合、

<button onclick="like();">いいね</button>

<script>
function like(){
 gtag('event', 'like_button_click');
 // いいねする処理
 // hogehoge
}
</script>

のように実装すれば、いいねが押された数をカウントすることができます。
一方で、Google Analyticsの「管理」から「カスタムイベント」を作成してカウントする方法もあります。
例えば

パラメータ: event_name
条件: 次と等しい
値:like_button_click

などとすると、同じようにクリックがカウントされることになります。
どちらか一方でいいのに、両方セットしてしまうとダブルカウントされてしまうことになります。

特に久しぶりに設定しようとして「GAでイベントのカウントってどうやるんだっけな?」と検索したりすると、必ずGAのカスタムイベント設定の方法の記事に行き当たります。
これを参考しつつ、コードの方でも設定していたりするとどちらの設定も正しいがゆえにダブルカウントされてしまうという状況に陥ってしまいます。

  • この記事を書いた人

楠 剛毅(goke)

個人開発から世界を変えるようなプロダクトづくりを目指しています

-プログラミング雑記