[対象: 上級]

今日はやや高度なトピックになります。

Googleアナリティクスで、スクロールしたかしないかを判断材料にして直帰率を測定する設定です。

Googleアナリティクスの直帰は、そのページを訪問して他のページを訪れることなく帰ったセッションがカウントされます。

しかし、たとえば僕のこのブログの場合は毎日1記事の更新が基本で、リピータさんはその日の記事だけを読んでそのまま「さようなら、また明日」のパターンになることがほとんどです。

たしかに直帰には定義上含まれますが、これは悪い直帰ではありません。
普通に起こりうる、極端に言えば健全な直帰です。

そこで、スクロールしたかしないかをもとにして直帰を判断する方法を、Googleのデジタル・マーケティング・エヴァンジェリストのAvinash Kaushik(アヴィナッシュ・カウシック)氏がGoogle+で共有しました。
※正確にはNick Mihailovski氏が共有した投稿の再共有

次のGoogleアナリティクスのコードをウェブページに挿入します。

<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-12345-1']);

window.addEventListener ?
window.addEventListener('scroll', testScroll, false) :
window.attachEvent('onscroll', testScroll);

var scrollCount = 0;
function testScroll() {
++scrollCount;
if (scrollCount == 2) {
_gaq.push(['_trackEvent', 'window', 'scrolled']);
}
};

</script>

これはイベントトラッキングを利用して、ユーザーがスクロールしたことを計測する設定になります。
※太文字の部分を標準のGAコードに僕は挿入しました。

スクロールが発生すると、指定したイベントカテゴリ(window)とイベントアクション(scrolled)でイベントが記録されます。

スクロールしたことを計測するイベントトラッキングのレポート

「スクロールした」=「記事を読んだ」=「直帰じゃない」と定義してデータを参照します。

ブログなど“読ませる”系のコンテンツサイトに適していそうです。

ただしこの方法も完璧ではありません。

スクロールしてざっと見して数秒で戻ってしまうユーザーが必ずいるはずです。
これはスクロールした、イコール直帰ではないとは言え、中身をしっかり読んでもらっているわけではありませんね。
良いアクセスではありません。

ただ完全な直帰を調べることは不可能です。

そもそも何をもって「直帰」を定義するかによっても計測方法は変わってきますね。

滞在時間を指定して直帰率を調べる方法を以前に紹介しました。

でもページを開いた直後に電話がかかってきて、数分話した後に「この記事つまんね」と思ってすぐに戻ったとしても直帰には含まれません。

複数のページをタブで何個も同時に表示させておいて順に見ていけば、後に見られたページは滞在時間が長くなります。

さらには直帰率が高いことは悪いことなのかとか直帰率を下げるべき対策を練るべきなのかかという議論も存在します。

したがって1つの判断材料として利用するのがいいでしょう。

この計測はイベントトラッキングを利用しているので、Googleアナリティクス本来の直帰率およびその他のにデータには影響を与えません。

滞在時間をもとにした設定はGoogleアナリティクスの直帰率の計測をいじるものでした。

非同期トラッキングコード用を導入したところ僕は不具合が起こりページビューの数値がおかしくなりました。

他のデータに影響しないという点では今回の方法は安心です。

【UPDATE】
Googleアナリティクスの直帰率に影響します。
このイベントが発生した場合は直帰とみなされなくなります。
結果としてレポートに出てくる直帰率は下がるでしょう。

下がった直帰率

スクロールした場合は直帰に含まれなくなり「直帰率」レポートに自動的に反映されます。
「イベント」レポートを調べる必要はありません。
間違った情報を伝えてしまい申しわけございませんでした。
「直帰率」レポートに反映させたくない場合は、“opt_noninteraction”に“true”をセットしなければならないようです。
Nishi Masahiroさんからいただいたコメントも参照してください。

スクロールしたイベントが発生したことを「目標」に設定してコンバージョン測定するのも面白そうです。

P.S.
Googleアナリティクスに詳しい方に質問です。

このイベントトラッキングはページビューごとに発生しますよね?
ということは1ページだけの訪問である直帰を知りたければ、ランディングページでセグメントしなければならないと思うのですがどうですか?
それともユニークイベント数を見ればいいのかな?

このエントリーが役に立ったらシェアしてください

[Ads & Featured Articles]

次のエントリも読むとSEOにさらに強くなります。

海外SEO情報ブログTOPGoogleアナリティクス › スクロールしたかしないかによってGoogleアナリティクスで直帰率を調べる方法

Comments

  1. By on

    有益な情報ありがとうございます。採用します。
    PSに関してですが、おそらくページビューごとに発生するので
    1ページだけの訪問である直帰を見る場合
    アドバンスセグメントで「(ランディングページ 完全一致 ページURI)AND(閲覧ページ数 等しい 1)」で
    良いと思います。

    あと、文中で本来の直帰率に影響を与えないとありますが、
    通常どおりイベントトラッキングを走らせると直帰ではなくなってしまうため、
    ノン・インタラクションをセットする必要があります。
    http://gaforum.jp/basic/spec/1846

    したがって、サンプルコードの
    _gaq.push([‘_trackEvent’, ‘window’, ‘scrolled’]);

    _gaq.push([‘_trackEvent’, ‘window’, ‘scrolled’, true]);
    にしないといけないのではと思います。(未実験です、すみません。)

    *** Reply from Suzuki Kenichi ***
    opt_noninteractionの件、そのとおりです。
    Googleアナリティクスのレポートに影響してます。
    ご指摘ありがとうございました。
    記事は訂正しました。

  2. By on

    はじめまして。
    毎日GoogleReaderで更新されるたびに読ませていただいています。
    黒澤千裕と申します。

    アナリティクスが得意な方という部分で、負けられないと思ってしまい、

    「直帰をいかにして正確に測定するか?」

    をなぞなぞを解く感覚で考えてみました。

    結論から言うと、アドバンスセグメントを利用して、
    サイト滞在時間が0のセッションでセグメントすればいいと思います。

    アナリティクスの滞在時間は、ランディングページAから、2ページ目のBに移動した時間の差分で計測しているので、直帰のセッションは滞在時間が0になります。

    この法則を利用して、滞在時間0のセッションでセグメントし、
    目的のページのデータをみれば、直帰したユーザーだけのデータになっていると思います。

    いかがでしょうか?

    *** Reply from Suzuki Kenichi ***
    ユニークな手段ですね。
    実際にこの設定でやられていかがですか?

▲ページの一番上に戻る