Googleアナリティクスで直帰率を正確に計測する方法の備忘録。
ブログは1ページしか読まずに離脱する訪問者が多く直帰率が高めになりがち。2ページ目に遷移しなかったけど読んでくれた人の判定を優先したデータを取りたいという場合は、Googleアナリティクスで当カスタマイズを行う。
Googleアナリティクスの「直帰率」の仕様おさらい
2ページ目へ遷移しなかったサイト訪問者のアクセスは、全て「直帰」としてカウントされてしまう。
例1:検索から記事Aにアクセス→記事を最後まで読み、そのままタブを閉じた→「直帰」
例2:検索から記事Aにアクセス→関連記事のリンクから記事Bへ遷移→ 直帰ではない
アナリティクスの初期設定では、2ページ目へ遷移しなければ1ページ目に何分滞在しようが「直帰」扱いになる。
初期設定で何か不都合はあるのか
細かい測定をしないのであれば、不都合はない。気持ちの問題。
ブログは平均的に直帰率が70~80%台だと言われているが、1ページだけ読んで去っていくユーザーが多いためであって、読まれていない=直帰率が高いというわけではなかったりする。
ちゃんと読まれているのに「私のブログ全然読まれていない……」と勘違いして悲しい気持ちになるくらいなら、見える数字の部分で調整したほうがいいのではないかと思う次第。
「直帰率」の判定を変更する方法
Googleアナリティクスのコードに下記コードを追加する。
setTimeout("ga('send', 'event', 'read', '30sec');",30000);
30秒滞在したら直帰にはカウントしない設定方法
アナリティクスのコードに追加する場所は以下の通り。
<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','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-※自分のアカウントの数字※-1', 'auto');
ga('send', 'pageview');
setTimeout("ga('send', 'event', 'read', '30sec');",30000); //ここに追加する
</script>
30秒なので30secで30000としたが、指定したい秒数に応じて数字の部分を変更可能。
もとの直帰率は計測できなくなるので注意
このカスタマイズを行うと、1ページで離脱したけど指定の時間滞在して読んでくれた訪問者が直帰にカウントされなくなるため、直帰率は間違いなく改善される。
ただし、デフォルトの設定では一目瞭然だった「2ページ目に遷移しなかったユーザーの割合」はわからなくなる。
Googleアナリティクスの管理画面からそのままコピペしたデフォルトのコードでは、2ページ目に遷移したユーザーの割合は100%から直帰率を引き算するだけでわかるようになっている。先述した直帰率の判定をカスタマイズする方法を使ってしまうと、この単純計算が成り立たなくなってしまう。
例えば1ページ目を30秒読んだ人を直帰としない設定にした時、直帰率が20%なら約80%の人は30秒以上サイトに留まったことはわかる。が、その80%の訪問者のうち何%が2ページ目に遷移したのかまでは計測できなくなるということ。
ガチでブログに取り組む人は回遊率を上げる施策も重要かと思うので、2ページ目に遷移した正確なユーザーの割合をひと目で判断したいのであれば直帰率の数字をいじるカスタマイズはやめておいたほうがいい。
別の方法として、Googleタグマネージャーを使って直帰率自体は変えないけど指定の時間読んだユーザーを測定する手段もある。これは直帰率の数字自体は変わらないから玄人向けのカスタマイズ。
どんなクソブログであっても、更新頻度が高いサイトはどういうわけか居着いてくれる読者様が現れるもの。細かいことを気にする暇があったら新しい記事を書いたほうがいい。