どうやらGoogle Analyticsのイベントトラッキングコードが新しくなっていたようだ。
「ん?全然イベントトラッキングが反応しないな…」
と先日Google Analyticsのイベントトラッキングがなぜかアナリティクスに全然反映されないという事態が起きました。
「おかしいな、書き方は間違ってないはずなんだけど…」
プログラマとしてはこういう無駄な時間は極力避けたいですよね。
しかしながらこの問題の解決に1時間近くかかってしまったのは、気のせいということにしておきます。
皆さんにはこんな無駄な時間を過ごして頂きたくないので、投稿しておきます。
プログラミングやWordPressを習得するのに一番近道な方法とは?
目次
ユニバーサルアナリティクスという新しいアナリティクスVersionは知っていますよね?
もちろんご存じの方が多いと思いますが、昨年の3月に一般公開され、「間もなくすべてのアカウントでユニバーサル アナリティクスのご利用が必須となります」とかGoogleのサポートページに書かれているやつですね。
「今までとなにがどう違うの?」という方はこちらのページが参考になりますので、ご覧くださいませ。
ざっくり説明すると、
主な変更点① セッション方式 → ユーザー方式に
今までは例えば朝にあなたのサイトを訪れた人がその日の夜に再訪したら、セッションが切れているので訪れたのは同じ人なのにその日のユーザー数は「2」とカウントされていました。
しかし新しいユニバーサルアナリティクスではユーザーに一意のIDを付与することによって朝と夜に訪れても同一ユーザーなので「1」とカウントされるようになります。
ユーザー数の考え方が今までのセッション毎ではなく、しっかりユーザーを識別し本当の意味でのユーザー数になるということですね。
主な変更点② アプリ・Webサイト間の横断的計測が可能に
ユニバーサルアナリティクスの新しいコードにはログインユーザーIDを入れられるようになっており、これを使用することによりログインユーザーを特定し、Webサイト・アプリ間で同一人物かどうか判定出来るようになるということですね。
ユニバーサルアナリティクスを使っているかどうかの判断
ちなみに自分のサイトが旧アナリティクスなのかユニバーサルアナリティクスかの違いはコードを見れば分かります。
ユニバーサルアナリティクスのコード例
(function(i,s,o,g,r,a,m){i[‘GoogleAnalyticsObject’]=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,’script’,’//www.google-analytics.com/analytics.js’,’ga’);
ga(‘create’, ‘UA-XXXXXXXXX-Y’, ‘example.com’);
ga(‘send’, ‘pageview’);
</script>
最初の方に「function(i,s,o,g,r,a,m)」とか書いてれば新しいユニバーサルアナリティクスの方です。
ユニバーサルアナリティクスではイベントトラッキングの書き方も新しい!
イベントトラッキングを取りたくてググってみると、
■ 形式
■ 設置例
“_gaq.push([‘_trackEvent’, ‘Click’, ‘hogeAction’, ‘hogeLabel’, 1, true]);”>
ここをクリック
「_gaq.push」から始まる形式のコードが紹介されているページがほとんどでした。
しかし…
「これじゃ取れないじゃん…」
そうです、ユニバーサルアナリティクスだとこの旧式のイベントトラッキングコードは取れないのです。
ユニバーサルアナリティクスの場合はこのイベントトラッキングコードを使おう!
ユニバーサルアナリティクスにはイベントトラッキングも新しいコードにしなければいけません。
■ 形式
■ 設置例
“ga(‘send’, ‘event’, ‘Click’, ‘hogeAction’, ‘hogeLabel’, 1, true);”>
ここをクリック
この形式にしてやっと取れるようになりました。
ユニバーサルアナリティクスに変更する場合は、イベントトラッキングもしっかり変更するようにしましょうね。