Googleアナリティクスは、非常に高度な分析ができる無料のアクセス解析ツールだが、正式なサポートがない。本連載では、その導入から、運用、活用まで、初めての人でもゼロから学んでいけるように、丁寧に解説していく。
外部サイトへのリンクのクリックやPDFなどのダウンロードを、ページビューとして計測したい場合がある。その場合には、Googleアナリティクスの、バーチャル(仮想)ページビューという機能を使う。
バーチャル(仮想)ページビューとは、その名のとおり、実際にはページビューでないものを、ページビューとしてカウントするための機能である。
バーチャル(仮想)ページビューには、大きく次の2つの使い方がある。
実際のURL情報を使うと不都合が生じる場合
実際のページ(HTMLファイル)のリクエストとは別の行為を計測したい場合
前者の例としては、異なる内容のページなのにURLが同じようなケースが挙げられる。たとえばカートのシステムなどで、表示しているページの内容が変化しているのに、URLの表示が変化なくまったく同じ場合を体験したことはないだろうか。これはPOSTメソッドという方法を利用してWebサイトとのやり取りをしている場合などで生じる。
Google アナリティクスのトラッキングコードは通常、アドレスバーに表示したURL情報を取得する仕組みなので、このようなケースでは、内容が異なるページに移動していても、同じURLを複数回見たことになってしまう。しかし、計測をする側の視点からは、できれば内容に応じて別のページとして認識してほしいはずだ。
もう1つの利用パターンである後者、すなわち実際のページ(HTMLファイル)のリクエストとは別の行為を計測したい場合の例としては、
- 外部サイトへのリンクのクリック
- ファイルのダウンロード
- Flashコンテンツに対するインタラクティブな動作
などの「行為」を、実際にはページ閲覧ではないけれども何らかのURLにアクセスしたページビューだとみなしてカウントする場合などに利用する。ただ、この手法を使うと、通常のページビュー数などに上乗せになってしまう。ページビュー数にカウントしたくない場合は、「イベントトラッキング」という手法を利用し、イベントとして計測しよう。このイベントトラッキングについては、回を改めて別途解説するので、今回は取り上げない。
計測コードの意味
GoogleアナリティクスでトラッキングするJavaScript命令の基本が_trackPageviewメソッドだ。
_trackPageviewメソッドは、通常は現在のページ情報(表示されたURL)が利用されるが、ここにURL(のディレクトリやファイル名の部分)を指定して実行すると実際のURLの代わりに指定したURLが閲覧ページ名としてレポートに表示されることになる。
仮想ページビューを利用したい場合は、レポートで表示させたい仮想ページの文字列を_trackPageviewで指定するようにカスタマイズする。
具体的に見ていこう。
_trackPageviewメソッドの通常の記述パターンは次のとおりだ。
_gaq.push(['_trackPageview']);
これに対して、実際に閲覧されたページの代わりに、「/click/1.pdf」というPDFを閲覧ページ名としてレポートに表示したい場合は、_trackPageviewメソッドを指定する部分で、カンマに続いて引用符で囲んで「/click/1.pdf」を追記する(赤字部分)。
_gaq.push(['_trackPageview', '/click/1.pdf']);
この例では、赤字部分を追記することで「/click/1.pdf」が1ページビューとカウントされることになる。トラッキングコード全体は、以下のようになる。
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-Y']);
_gaq.push(['_trackPageview', '/click/1.pdf']);
(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);
})();
</script>
以下では、(1)同じURLでページ遷移する場合と、(2)PDFファイルをダウンロードするためのクリック行為をページビューとしてカウントするケースの2つの実装例を紹介する。
実装例1:同じURLでページ遷移するケース
先にも言及したが、カート投入から購入完了ページまでの間でURLが変わらない場合がある。たとえば、URLが次のような対応だったとしよう。
順番 | ページの内容 | URL |
---|---|---|
1 | カートページ | /cart.php |
2 | フォーム入力ページ | /cart.php |
3 | 入力情報確認ページ | /cart.php |
4 | 購入完了ページ | /thanks.php |
この場合は「カートページ」「フォーム入力ページ」「入力情報確認ページ」が同じURLのために区別がつかない(赤字部分)。そこで2番目と3番目のページには次のような仮想ページビューを割り当てて、この3ページを区別できるようにしてみよう。
順番 | ページの内容 | URL | 仮想ページの割り当て |
---|---|---|---|
1 | カートページ | /cart.php | - |
2 | フォーム入力ページ | /cart.php | /cartinput1 |
3 | 入力情報確認ページ | /cart.php | /cartinput2 |
4 | 購入完了ページ | /thanks.php | - |
トラッキングコードへの実装例は以下のとおりだ。
「フォーム入力ページ」のトラッキングコードのカスタマイズ
カスタマイズ前 | _gaq.push(['_trackPageview']); |
---|---|
カスタマイズ後 | _gaq.push(['_trackPageview', '/cartinput1']); |
通常は「カスタマイズ前」のようにしている部分を、「カスタマイズ後」のように、仮想ページビュー名を入れたトラッキングコードと入れ替える。
入力情報確認ページのトラッキングコードのカスタマイズ
こちらも同様で、下記のように該当部分の記述を変更する。
カスタマイズ前 | _gaq.push(['_trackPageview']); |
---|---|
カスタマイズ後 | _gaq.push(['_trackPageview', '/cartinput2']); |
これらのカスタマイズをすることで、「フォーム入力ページ」と「入力情報確認ページ」は、それぞれ別のページとしてページビューがカウントされるようになる。
PDFファイルをダウンロードするケース
HTMLファイルからPDFファイルへ張ってあるリンクをクリックすると、「ファイルとして保存」するように指示されたり、ブラウザ上でそのまま表示されたりする。これらの動作をページビューとしてカウントしたいとしても、PDFファイルにトラッキングコードの実装はできない。
そこで、PDFファイルのダウンロードや表示を、ページビューとしてカウントしたい場合は、PDFファイルへのダウンロードのリンクをクリックした行為をもって、ファイルのダウンロード回数と疑似的にカウントするといった方法を採るのが一般的だ。
具体的には、クリックという行為に対して、「/click/1.pdf」という仮想ページを1ページビューカウントするように設定することになる。
この場合は、ページ自体のトラッキングコードをカスタマイズをするのではなく、HTMLファイルのソースコードにあるPDFファイルへのリンク部分について、赤字部分を追加で記入する。これが必要な実装コードになる。
<a href="http://www.example.com/download/1.pdf" onclick="_gaq.push(['_trackPageview', '/click/1.pdf']);">PDFのダウンロード</a>
リンクをページビューとしてカウントする場合
この方法は、PDFのダウンロードだけでなく、a要素によるリンクのクリックを仮想ページビューとしてカウントする場合にも用いることができる。
たとえば、あるWebページにhttp://www.example.co.jp/toxfusion.htmlという外部ページへのリンクがあったとして、そのリンクのクリックを、/click/toxfusionというページへの仮想ページビューとしてカウントしたい場合は、次のようになる。
<a href="http://www.example.co.jp/toxfusion.html " onclick="_gaq.push(['_trackPageview', '/click/toxfusion']);">PDFのダウンロード&/a>
リンクの<a>タグをカスタマイズして、外部サイトへのリンクのクリックを仮想ページで取得する場合、1つ1つのリンクに対してカスタマイズを施すのが面倒な場合もある。このような場合には前回も触れたが、JavaScriptライブラリのjQueryを利用して効率よく記述するような方法もあるが、ここではそこまでは言及しない。
- レポートでの見え方とデータの見方の注意点
レポートでの見え方とデータの見方の注意点
トラッキングコードの_trackPageviewメソッドにで仮想ページビューを指定してカスタマイズすると、指定した文字列がURLに相当するものとして、レポートに表示されるようになる。つまり、指定した文字列が「ページ名」となる。
実際にどう見えるか、レポートを見てみよう。
図1の例では、外部サイトへのリンクのクリックを仮想ページとして「 /click/ 」ディレクトリのページのように割り当てている場合の表示例だ。_trackPageviewメソッドに指定した引数が、仮想の「ページ名」として表示される(図1黒枠部分)。
仮想ページビューを利用した場合、データの見方には、以下のような点で注意が必要だ。
直帰率への影響
PDFファイルのリンクのクリック数の例や、上記の外部リンクのクリック数を把握するためにバーチャル(仮想)ページビューを利用した場合には、直帰率に影響が出ることに注意しよう。
図1のケースのように外部リンクの計測をした場合なら、どこかのページが閲覧され、その後にクリックして外へ出ていったことになるなので、必ず直前がサイト内のどこかのページの閲覧になる。そのため、「閲覧開始数」はすべてゼロで、直帰率もすべて0%になる(図1赤枠部分)。イベントトラッキングでも同様だが、このケースの場合、外部リンクがクリックされたページの直帰率の解釈に少し修正が必要になる。どういうことか、以下で解説しよう。
- ケース1:ページA →外部へ(仮想ページビュー計測なし)
- ケース2:ページA →仮想ページビューで外部リンクのクリックを計測→外部へ
具体的にはケース1ではページAで直帰したことになるので、ページAの直帰が1カウントになる。
一方ケース2では、ユーザーの動きは実質的には同じだが、仮想ページビューでの外部リンク計測が2ページ目の閲覧となるために、ページAの直帰とはカウントされない。
レポート内にあるリンクのエラー
また、実在しないURLを便宜的に付与しているため、URL情報に依存した機能については不具合が起きる。たとえば図1青枠部分のボタンだ。
これらは通常、実際のURLへのリンクボタンになっているが、バーチャル(仮想)ページビューを利用している場合は、実在しないURLへのリンクになってしまうので、当然該当のページに相当するものがなく、そのようなページは存在しないというエラー表示になる。
ページ解析での不具合
また[コンテンツ]>[サイトコンテンツ]>[すべてのページ]レポートの「ページ解析」タブを表示したレポートも、実際のURLにあるコンテンツをレポート内に読み込むので、実体のないバーチャル(仮想)ページビューを利用している場合は、当然うまくレポートされない。
ページタイトルの不具合
さらに細かい話だが、プライマリディメンションで「ページタイトル」(図1緑枠部分)を選択した場合、先の2つの実装例で紹介したonclickによる手法では、クリックしたリンクがあるページのページタイトルが取得され、これがそのまま利用されるようだ。
当然クリックした行為に対して、何らかのタイトル情報がついているわけではないので、便宜的にクリックした行為が発生した元のページのページタイトルがレポートにも利用されるという仕組みになっているようだ。
onclickを利用した場合に一部計測漏れが発生する問題
クリックの計測データが送信される前にブラウザの表示動作が先に完了することがあり、その場合データが送信されないという問題が起こることがわかっている。回避方法はあるのだが、100%すべてうまくいく方法というのはなかなかない。各種回避方法などについては詳しく解説があるので、こちらを参照してほしい。
・筆者が講師の「アクセス解析ゼミナール」が9月に開講されます。丸2日間、アクセス解析について徹底的に学ぶ講座です。お申し込みはこちらからどうぞ。。お申し込みはこちらからどうぞ。
・『Googleアナリティクス完全マニュアル』(電子書籍)が、オンデマンドのペーパーバック版でもお買い求めできるようになりました。
→ Amazon.co.jpの商品ページ
- 内容カテゴリ:アクセス解析
- コーナー:衣袋教授のGoogleアナリティクス入門講座
※このコンテンツはWebサイト「Web担当者Forum - 企業ホームページとネットマーケティングの実践情報サイト - SEO/SEM アクセス解析 CMS ユーザビリティなど」で公開されている記事のフィードに含まれているものです。
オリジナル記事:リンクのクリックやダウンロードをページビューとして計測する! 仮想ページビューの使い方と注意点[第64回] [衣袋教授のGoogleアナリティクス入門講座] | Web担当者Forum
Copyright (C) IMPRESS BUSINESS MEDIA CORPORATION, an Impress Group company. All rights reserved.