ウェブサイトのコンテンツをページングするのはユーザビリティを損なう事が多いと僕は思ってます。ユーザビリティの定義は知りませんが、読むこと以外に”意識”を取られると嫌な感じがします。 提供側の論理は知りません。ユーザビリティですから。
次のページへのリンクをクリックという行為は、
- そのアンカーテキストに目の焦点を併せる
- マウスを叩く
- リンク先のページがloadされる。
という順番で進むと思います。
速読の練習をした人はよく分かると思いますが、1の行為は、文字を探し・焦点を合わせるという、非常にコストのかかる行為です。読むという作業においては。。文脈を追う作業は超短期記憶のつなぎ合わせで、意識のallocation作業は天敵です。
一方で、アクセス数字を見たい人に取っては、ページ単位の計測が基本である以上、ページとコンテンツの粒度は一致してる方がいいと思ったりします。<h2> <h3>といった見出し単位での閲覧率を知りたいと思ったりすると思います。閲覧時間の方が知りたいかも、、、 とにかく、ページ閲覧量と滞在時間ではなくて、コンテンツ消費量とコンテンツ消化速度を知りたいとか思うと思います。
ヒートマップ使ったり、細かく計測タグを作れば、データは得られそうですが、面倒です。
で、とりあえずの一歩として、ページ全体でどの割合までページが表示されたかを、google analyticsで計測してみたので、その経過を書きます。
EventTrackで、表示領域割合をアクションとして送る。
当初、表示割合を計測するのに カスタム変数のページスコープ変数を使えばいいのかと思いました。上手く説明できないのですが、ページスコープは使いにくい機能(*)なので、前に使った手法(ページ別閲覧時間分布の作成)と同じような手法のtrackEventを利用する方法でやりました。
* ページスコープのカスタム変数を設定してtrackPageviewで送ったら、それは新規のページビューになってしまう。動的な行動記録をアトヅケで送れない。
それで、方針としは、
- 一秒毎に、画面の表示位置(割合)を取得。
- それが、そのページ閲覧中で最大値を超えていたら、trackEventする。
- 10%単位で区切る。google analyticsでは集計値しか取れないので、値は積み上げで送る。
- 30%まで閲覧されたというデータを送る場合には、0, 10, 20, 30 と送る。
- なんとなくだけど、データの連続送信制限があった気がしたので、少しsleepを入れておく。
- このサイトのrs.jsという奴です。データを送る順番をコントロールするために、jsdeferred.jquery.js をいれました。このサイトの説明を参考にした。
データを見る : totalEventsとpageviews
eventの数字を見るときは、totalEvents(イベント数)と uniqueEvents(ユニークイベント数)の二つを見ますが、uniqueEventは、セッション内の同一カテゴリ・アクション・ラベルを一つ(distinct)にします。
自作のDataViewerで見たところ。labelにページURL(path)を入れていたのですが、ディメンジョンとして pathPathも有効なので、labelは他の用途に振り向けてもいいかもしれません。
ちなみに、ABテスト別に見たい時は、カスタム変数を出してフィルタリングします。
ちなみにこの自作ツール、チョコチョコ改良してます。、カスタムレポートを組むより、操作時間は短いはずです。 日別のデータ作成には便利です。 GAのレポート画面だと、日別のデータをグラフにしてくれますが、数字で出すには、カスタムレポート組まないといけない。
レポート化
アクセス解析サミットで清水さんの講演を見て、スクロール計測のレポートの形式を真似ました。
画像にパーセントで線を入れるのにbookmarkletを実行、画像を撮って、エクセルでrept関数。
javascript:hg=document.height;wd=document.width;for(var i=1; i<10; i++){dv=document.createElement("div");dv.innerHTML= "<hr style=’color:#f00; background-color:#f00; height:5px;’/><strong>"+(i*10).toString()+"Percent==></strong>";dv.style.position="absolute";dv.style.top=parseInt((i/10)*hg).toString()+"px";dv.style.left="0";dv.style.width=wd+"px";dv.style.zIndex="1000";document.body.appendChild(dv.cloneNode(true));}
このbookmarkletは適当に作ったもの。 ページ全体画像撮りは、このchromeのextensionを使った。
このレポートを自動化するには、
bookmarklet実行 + 画像収集 + データ抽出 + どこかで画像オブジェクトにする
という作業が必要。
Google Analtyicsで、trackEventを使って、ページのスクロールの割合を見て、レポートにするまで、でした。 アクションは知らない。