Analytics:イベントトラッキングで「要素の表示数」を拾う

まずGoogleAnalyticsのイベントトラッキングの基本はコチラ。

イベント トラッキング – ウェブ トラッキング

通常であればイベントトラッキングは下記のようなHTMLタグで「要素のクリック数」を拾うためのものです。

<a href="~" onclick="ga('send','event','link','click','eventID')">リンク</a>

これまた通常は「クリック数/PV」でクリック率を出せます。

しかしJavaScriptを利用した「ある状況で表示される要素」の場合、単純にURLのPVでなく「表示回数」を母数にする必要があります。表示していない時のPVまで含めてしまうと正しい解析になりませんからね。

イベントトラッキングの標準のコードはonclickでしか動かせず「表示されている時」を拾えないので、能動的にanalytics.jsに返してやる必要があります。

実は簡単で、クリック率を取りたい要素が表示されている時にJavaScript側からga関数をイベントトラッキングと同様に呼び出すだけ。

ga('send','event','link','click','eventID_view');

Analytics側のイベント解析としてはあくまでクリック数としかカウントできませんが、「eventID_view」のように分かりやすいイベント名にすることで見分けを付けることが可能です。

追記

「クリック数としかカウントできません」と書いてすぐですが、

ga('send','event','link','view','eventID');

上記のようにイベントを勝手に「view」と付けてもAnalytics側はイベントアクションを「view」として分けて認識してくれました。

ただし公式には無い値なので保証はしません。

onclickで呼び出す時に「view」と付けても反応してくれません。