衣袋教授のGoogleアナリティクス入門講座

Googleアナリティクスの導入から、運用、活用まで、正式なサポートがない初めての人でもゼロから学んでいけるように、丁寧に解説していく。

Googleアナリティクスとは/衣袋教授のGoogleアナリティクス入門講座

リンクのクリックやダウンロードをページビューとして計測する! 仮想ページビューの使い方と注意点[第64回]

外部サイトへのリンクやPDFなどのダウンロードを、ページビューとして計測したい場合のカスタマイズ法

ページ

外部サイトへのリンクのクリックや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']);

これらのカスタマイズをすることで、「フォーム入力ページ」と「入力情報確認ページ」は、それぞれ別のページとしてページビューがカウントされるようになる。

※フォーム入力ページや入力情報確認ページで個別にトラッキングコードを変更できない場合(サイト全体で共通のトラッキングコードが自動的に挿入される場合)は、このカスタマイズはできない。

仮想ページビューを利用したいページでは共通トラッキングを自動挿入しないようにしておいて、ページごとにトラッキングコードを直書きすることも可能だが、将来サイト全体のトラッキングコードを変更する際に(Googleアナリティクスの仕様変更など)、個別に指定したトラッキングコードも変更するのを忘れないように管理することが大切になる。

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を利用して効率よく記述するような方法もあるが、ここではそこまでは言及しない。

筆者の『ユニバーサルアナリティクス版Googleアナリティクス完全マニュアル(PDF)』が発行されました。

筆者が講義を行うGoogle アナリティクス徹底講座も、定期的に開催しています。 → Google アナリティクス ゼミナール

用語集
Googleアナリティクス / HTML / JavaScript / UA / ダウンロード / ディレクトリ / ページビュー / リンク / 外部リンク / 直帰 / 直帰率

ページ

この記事が役に立ったらシェア!
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

人気記事トップ10(過去7日間)

今日の用語

インフィード広告
広告の種類。ネイティブ広告の 1 種。コンテンツが時系列に表示されるタイムライン ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]