Googleアナリティクスの導入から、運用、活用まで、正式なサポートがない初めての人でもゼロから学んでいけるように、丁寧に解説していく。
Googleアナリティクスとは/衣袋教授のGoogleアナリティクス入門講座「初回訪問日」と「参照元」をGAのカスタム変数にセットしてコーホート分析をするには?(第71回)
カスタム変数で会員と非会員に分けてアクセス状況を調べる方法について、前々回に解説した。今回はカスタム変数を利用する別の具体例として、初回訪問時の訪問日と参照元を、カスタム変数にセットする手法と分析例について解説する。
徐々にリリースされている新しいセグメントの機能を利用すると、このカスタム変数を使ったややこしい方法を利用しなくても、さまざまなユーザーベースのセグメントを簡単に作成できるようになっている。ただ、Googleアナリティクスを理解して使いこなすうえで、トラッキングコードのカスタマイズでどのような応用ができるのかを知っていただきたいので、その例として紹介する。
じつはこのカスタマイズは、筆者がアユダンテ株式会社にお願いして作成していただいたものである。トラッキングコードについては彼らのコラム「初回訪問ユーザーへ『参照元/メディア』と『初回訪問の年月日』をカスタム変数にセットする方法」ですでに紹介されているので、そちらもご覧になっていただきたい。
このカスタマイズの問題意識としてあるのは、次のものがある。
初回訪問のきっかけや初回訪問の日時も、分析軸として重要ではないか
その情報を軸にした分析をしてみたい
特に広告・キャンペーンによる集客が中心のeコマースサイトであれば、
いつ実施したキャンペーンで集客したユーザーが、結局、後日コンバージョンしたのか
購入者はその後リピータになったのか
累計購入金額に差はあるのか
のように「人」を軸に追跡して、成果を長期的に見て評価したいはずだ。このような、同時期に同じ体験をした人の集団のことを「コーホート」という。そして、コーホートを対象に、その後時間が経過するに連れて、個々の対象者に思考や行動にどのような違いや変化が生じるのかを分析する分析手法を「コーホート分析」という。
Webマーケティングでもよく使う方法なので、知っておいて損はない。
実装するトラッキングコード
それではさっそくトラッキングコードを紹介しよう。アユダンテさん作のトラッキングコードをコメント部分含めてそのまま掲載したのが下(黒字部分)だ。青文字部分はもともとのトラッキングコードである。
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxxx-x']);
_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);
})();
if(document.cookie.indexOf('__utma') < 0){
//初回訪問のページロード時はGoogleアナリティクスのcookieがないので、
//Googleアナリティクスタグが実行されcookieが生成されるまで若干ウェイト
window.setTimeout("setReffererCustomVar()", "1500")
}
function setReffererCustomVar() {
if(document.cookie.indexOf('__utma') >= 0){
//---- 初期化
var sendValue;
var sendDate = new Date();
//---- cookieの取得
if (document.cookie) {
var cookies = document.cookie.split("; ");
for (var i = 0; i < cookies.length; i++) {
var str = cookies[i].split("=");
var utmgclidFlag = false;
if (str[0] == '__utmz') {
for (var l = 1; l < str.length; l++) {
if(str[l].indexOf('utmcsr') >= 0){
var utmcsr_value = unescape(str[l+1]).split('|');
}
if(str[l].indexOf('utmgclid') >= 0){ //アドワーズ自動連携
var utmcsr_value = unescape(str[l+1]).split('|');
utmgclidFlag = true;
utmcsr_value[0] = 'google';
}
if(str[l].indexOf('utmcmd') >= 0){
var utmcmd_value = unescape(str[l+1]).split('|');
if(utmgclidFlag){
utmcmd_value[0] = 'cpc';
}
}
}
break;
}
}
}
//---- 送信データの取得
//日付(現在年月日)
yy = sendDate.getYear();
mm = sendDate.getMonth() + 1;
dd = sendDate.getDate();
if (yy < 2000) { yy += 1900; }
if (mm < 10) { mm = "0" + mm; }
if (dd < 10) { dd = "0" + dd; }
sendDate = yy + '/' + mm + '/' + dd;
//参照元(utmcsr)
sendValue = utmcsr_value[0];
//メディア(utmcmd)
sendValue += ' / ' + utmcmd_value[0];
//文字数削減
sendValue = sendValue.substr(0, 100);
//---- データ送信
_gaq.push(['_setCustomVar', 5, sendValue, sendDate, 1]);
_gaq.push(['_trackEvent', 'setCustomVar5', '初回訪問時の参照元取得', '', 0, true]);
}
}
</script>
1行ずつ内容を説明することはしないが、おおよそこのJavaScriptで行っていることは次のようなことだ。
Google アナリティクスのCookieがあるかどうかの判別
Cookieがなかった場合は初回訪問と判定し、初回訪問時の年月日をsendDateという変数に格納
同時に初回訪問時の参照元とメディアのディメンション情報をsendValueという変数に格納
カスタム変数のキーにsendDateを代入、カスタム変数の値にsendValueを代入
5番目のカスタム変数を利用し、イベントトラッキングと一緒にしてデータを送信
まずは、このトラッキングコードを、サイトに実装しよう。トラッキングコードの黒字部分を、従来のトラッキングコードの下に挿入すれば、実装は完了だ。
実装したら、実装して以降の訪問について、カスタム変数が付与されていく。過去の訪問にさかのぼって付与することはできない。
筆者の『ユニバーサルアナリティクス版Googleアナリティクス完全マニュアル(PDF)』が発行されました。
筆者が講義を行うGoogle アナリティクス徹底講座も、定期的に開催しています。 → Google アナリティクス ゼミナール
ソーシャルもやってます!