同じドメイン内に別サイトがある場合のGoogleアナリティクス設定方法

Google Analytics
スポンサーリンク

同一ドメインにディレクトリで分けた複数サイトが存在したとします。

サイトA http://www.sample.com

サイトB http://www.sample.com/directory/

両方のサイトを別々に計測するために、Googleアナリティクスのプロパティを分けて管理する場合の注意点です。

Googleアナリティクスはクッキーで管理されていて、そのクッキーはデフォルトでは以下のようになっています。

ドメイン:.sample.com
パス: /

スポンサーリンク

プロパティが別であっても、同じクッキーがつかわれてしまう

上記の何が問題かというと、プロパティが別であっても同じクッキーが使われてしまうところです。

デフォルトでは最上位のパスを指定しているので、仮に「http://www.sample.com/directory/」に「http://www.sample.com/」に設置したものと違うGoogleアナリティクスを設置しても、同じクッキーが使われてしまいます。

同じクッキーが使われると困ること

同じクッキーが使われると困ることは以下の2点です。

参照元が正しくでない

「サイトA http://www.sample.com」に検索で飛んできたユーザーが、「サイトB http://www.sample.com/directory/」に移動した場合、サイトBに設置したGoogleアナリティクスで希望する処理としては、「参照元A」のはずです。

しかしながら「参照A」とはならず、「検索からの流入」と表示されてしまいます。

新規ユーザーなのに、リピーターになる

サイトAに訪れたユーザーが日をおいて、サイトBに初めて来たとします。サイトBはサイトAと別サイトなので、新規ユーザーとしてカウントしたいところです。

しかしながら、この場合も「新規ユーザー」とはならず、「再訪問者」として扱われます。

Googleアナリティクスコードをカスタムして、正しく計測する

従来のGoogleアナリティクスですと、_setCookiePath()という関数が用意されており以下のような記載で正しく計測することができました。

<!-- Google Analytics -->
<script type="text/javascript">
 var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXX-Y']);
_gaq.push(['_setCookiePath', '/directory/']);
_gaq.push(['_trackPageview']);
 
(function() {
 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
 })();
</script>
<!-- End Google Analytics -->

現行の、新しいGoogleアナリティクス(ユニーバーサルアナリティクス)の場合は以下のような記載方法になります。

Googleアナリティクスの種類とかに関しては、Google Analytics初心者が覚えておくきべき用語とか。に詳しく書いてあります。

<!-- Google Analytics -->
<script>
(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-XXXX-Y', 'auto', {'cookiePath': '/directory/'});
ga('send', 'pageview');

</script>
<!-- End Google Analytics -->

ga(‘create’, ‘UA-XXXX-Y’, ‘auto’); となっている部分を、ga(‘create’, ‘UA-XXXX-Y’, ‘auto’, {‘cookiePath’: ‘/directory/’}); と書き換えるだけです。

これで、クッキー共通問題が解決されるはずです。

タイトルとURLをコピーしました