Google Analyticsで曜日別のデータを取得する
2010-02-02 コメント(4)
Google Analyticsの「マルチカスタム変数」を使って、曜日別のデータを取ってみました。
2009年10月にGoogle Analyticsに追加された機能「マルチカスタム変数」は、多くの場合そのサイトのゴールやKPIからゴニョゴニョと引っぱってきて「じゃあどういったデータをどのように取得すればいいのか」となって、なかなか汎用的に使えるようなサンプルって少ないんじゃないかと思います。その中で、何かないかなとぼんやり考えていたら、ありました。「曜日」。
いまのGoogle Analyticsは、曜日別に分析するのがむずかしいんですね。ひとつまえのGoogle Analyticsはできたように記憶していますが。いまのものでもたぶんできなくはないんでしょうけれど(アドバンスセグメントで細かく指定した上でCSVでダウンロードとか?)、できなくてもそんなに困らないというか(えーと)、たいていの場合はマストではないでしょうね。曜日別のデータを見ても、たいていの場合は「ふーん」で終わってしまうでしょうし。
とはいえ、ECやコミュニティやたとえばメールマーケティングに力を入れているサイトなどでは、曜日別の分析も必要なケースがあると思います。Visionalistでは普通に取れますし、SiteCatalystもプラグインで取得できるので、ここはひとつGoogle Analyticsでも、ということで。
トラッキングコード
前置きが長くなりましたが、トラッキングコードに3行追加。
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-XXXXXX-XX");
var d = new Date();
var dow = ["1.Sunday","2.Monday","3.Tuesday","4.Wednesday","5.Thursday","6.Friday","7.Saturday"];
pageTracker._setCustomVar(1,"dayofweek",dow[d.getDay()],2);
pageTracker._trackPageview();
} catch(err) {}
</script>
なんだかすごくあっけないですね。基本的にはJavaScriptでユーザーのパソコンの時間から曜日を取得して、セッションレベルで値に放り込んでいます。
Google Analyticsのマルチカスタム変数については、公式ブログやカグアさんのエントリーを参照のこと。
注意点
- ユーザーのパソコンの時計をベースに曜日を取得しているため、実際の曜日と異なる場合があり、誤差が必ず出ます
- マルチカスタム変数のスロット番号は上記では1にしていますが、すでに何か利用している場合は空いているスロットに格納すること
曜日の値に「1.Sunday」などと数字をつけたのは、レポート上でソートした際に日曜日から順番に並べられるようにするためです。
レポートサンプル

▲カスタムレポートの例。1週間分のデータがまだたまっていないので、全部の曜日がそろっていません
「カスタム変数」のレポートでも確認できますが、並べて見たい指標があればカスタムレポートの方が便利です。
活用例
カスタム変数の値は「アドバンスセグメント」や「カスタムレポート」(上のレポートサンプルのように)でも利用できるので、以下のようなことができます。
- 平日、土日別の分析
- 曜日別のある特定の流入の効果(CVR、直帰率など)の分析

▲アドバンスセグメントでの「土日のトラフィック」の設定内容例。同様にして「平日のトラフィック」というセグメントも設定できる
平日と土日別の行動を分析するのであれば、たとえばセッション数などの実数はボリュームが異なるのでちゃんと日数で割るか、%で出す指標の数値の差を見るといったことになります。
マルチカスタム変数は、結構サイトごとに独自な設定になるケースが多いと思うのでイメージしにくいと思いますが、このような「曜日」の取得であればイメージしやすいのではないでしょうか。他にも、ビジターレベルで会員/非会員やユーザー属性などを取ることもできますが、そこまでいくと要件ごとの設計になってしまいますし。
とはいえ、上記サンプルもすいませんが自己責任にてご利用ください。
追記。カグアさんでも、イベントトラッキングで曜日のデータを取得していたようですね。やり方自体はよく似たものではないでしょうか。カグアさんの方は、eコマース機能とイベントトラッキングで、「商品購入時の曜日を取得する」方法かと思います。
イベントトラッキングによる曜日毎の売上げ集計 | カグア!Google Analytics 活用塾:事例や使い方







コメント
ご紹介、ありがとうございます!曜日の前に数字付けるところ、とても嬉しくなりました。「そうそう!」って。すごいスマートな記述で参考になります。ありがとうございます。
いえいえこちらこそ。曜日の前に数字付けるところは、そういう配慮は情報提供する側が意識していかないといけないですね。
アナリティクスをここまで使いこなすとは凄いの一言です。
僕なんてつい最近「アドバンスセグメント」を知ったところです(笑)
色々と勉強になります。
しかし、機能が豊富すぎて、逆にgoogleに対して距離を置く
初心者WEBマスターがまた増えるのではないかという一抹の不安があります。
たしかに機能面で見ればもはやGoogle Analyticsはハイエンドレベルのアクセス解析ツールになってしまっているので、「機能が多すぎてどこをどう見ればいいのかわからない」という人は多いと思いますね。そこを何とか解消したいのですが。