現在、独自のアクセス集計ツールでクリックカウントを取得していますが、Google Analytics(以下、アナリティクス)でもクリックカウントが取得できるので、全てのアクセス情報をアナリティクスに集約することにしました。
しかし、クリックカウントを取得するまでに少々手こずってしまったので、今後のためにも方法をメモメモ。
クリックカウントが計測されない
ネット上でクリックカウントの取得方法を調べてみると、ほとんどのサイトで、aタグに以下のようなコードを追記することで取得できるよ、と紹介されていました。
onclick="ga( 'send', 'event', 'カテゴリ名', 'アクション名', 'ラベル名', 1 );
でも、いくらクリックしてみてもカウントされなかったのです。
アナリティクス上で、サイトのアクセス情報などは計測されているので、トラッキングコードに問題はないはず。
となると、「analytics.js」と「gtag.js」で、もしかしたら取得方法が違うんじゃないか、という疑問。
ga()はanalytics.jsでの方法だった
結論から言うと、ga()を使用してクリックカウントを取得する方法は、トラッキングコードにanalytics.jsを使用している場合の方法でした。
トラッキングコードにgtag.jsを使用している場合は、以下の方法を使用するようです。
onclick="gtag('event', 'イベントアクション名', {['event_category': 'イベントカテゴリ名'], ['event_label': 'イベントラベル名'], ['value': '1']})
パラメータの指定方法は以下の通り。
- 'event'
必須項目:イベントをトリガーにするので、'event'で固定。 - 'イベントアクション名'
必須項目:アナリティクスのイベントアクションに表示される名称です。 - event_categoryの値
必須項目:アナリティクスのイベントカテゴリに表示される名称です。 - event_labelの値
任意項目:アナリティクスのイベントラベルに表示される名称です。 - valueの値
任意項目:1回のイベントが発生した際に増加するカウンタの値。通常、1クリックで1カウントさせることが多いので、'1'を指定します。
アナリティクスでは、イベントカテゴリ > イベントアクション > イベントラベル の順に階層を辿るので、それを意識して名称を設定しましょう。
今回の作業環境では、画像のクリック数を取得するため、それぞれのaタグに以下のような指定をしました。
onclick="gtag('event', 'image_click', {['event_category': 'click_event'], ['event_label': 'img0001.jpg'], ['value': '1']})
onclick="gtag('event', 'image_click', {['event_category': 'click_event'], ['event_label': 'img0002.jpg'], ['value': '1']})
onclick="gtag('event', 'image_click', {['event_category': 'click_event'], ['event_label': 'img0003.jpg'], ['value': '1']})
若干のタイムラグが発生しますが、概ねクリックから数分程度でカウント結果がアナリティクスに反映されるため、テストをしながら実装してみるといいかも。
初稿:2020年10月13日
コメント