ホーム » ビジネスブログ » Webマーケティング »

Google AnalyticsでAjaxページをアクセス解析する際に注意すべきこと

2006年10月27日

Google AnalyticsでAjaxページをアクセス解析する際に注意すべきこと

投稿者 竹村

SEの竹村です。

月間500万ページビューまでは無料で解析できる「Google Analytics」が提供されてほぼ1年になりますが、Ajaxでページを遷移しなくなるとアクセス数を統計しづらくなります。
これを、どのようにトラッキングしたらよいか…ということが先日、Ajaxianに書かれてました。

Tracking Ajax Requests in Analytics
http://ajaxian.com/archives/tracking-ajax-requests-in-analytics

以下は、Google Analyticsからの回答コードです。

    …
 
            http_request.onreadystatechange = sendAlert;
            http_request.open(’GET’, url, true);
            http_request.send(null);
 
    }
 
        function sendAlert() {
 
            if (http_request.readyState == 4) {
 
                if (http_request.status == 200) {
                    alert(http_request.responseText);
 
                    urchinTracker(”/pagefilename1″ );
                } else {
 
                    alert(’Error.’);
 
    …

onreadystatechange イベントハンドラとして、実行する関数の中にurchinTracker関数を直接実行するように記述してしまえばよい…と書かれています。

How do I track AJAX applications? (上記の元記事)
http://www.google.com/support/analytics/bin/answer.py?answer=33985&topic=7292

さて、このエントリーのコメントに、また興味深い内容がありました。

> Could this be used for tracking clickout’s too?
> External link ?
> Comment by CiPHER ― October 11, 2006
>
> Hmm.. I ment:
> <strong><a href=”link to external site” onclick=”return urchinTracker(this.href)”>External link<a></strong>
> Comment by CiPHER ― October 11, 2006

外部へリンクを張るときに、それへのアクセスをトラッキングする方法について書いています。

Google Analyticsは基本的にページビューをトラックするのに利用しているかと思いますが、こういう一部の統計を取りたい場所に配置するのも1つの方法ですね。


また、Google Analyticsを利用する上での注意点を挙げている人も何人かいました。

> This also means that when Google’s servers are down, your website get very slow.
> The Analytics scripts in this case, have to be loaded before your page starts displaying, or am I wrong?
> Comment by Tinus ― October 11, 2006

要約すると
「Googleサーバの状態によっては、あなたのWebサイトがとても重くなるということを意味します。あなたのページが表示されはじめる前に Analyticsスクリプトがロードされていないといけないのでは?」
と言ってますが、現在のGoogle Analyticsを配置する場所が </body> の真上…という指定があるので、
ページの表示自体が重くなるということはないのではないか?と私は思います。

ただ、サイトが表示されきってもいつまでもローディングが終わらない…という状況はあるかもしれません。
これは、解析ツールを外部に置くことや、アクセス解析ツールにかけるコストなどとのトレードオフですね。


次は、ちょっと興味深い指摘です。

> ...
> Google Analytics is a really good tool for Web 1.0 fashioned pages but is terribly wrong for Web 2.0,
> first of all a pageview cannot be translated to anything in an Ajax Page.
> Is a refresh of a part of the page, let’s say the user list currently pageview or
> is only the change of the main content a new pageview?
> Google Analytics themselfs suggest that you call the urchinTracker upon every successful XMLHttpRequest,
> but I believe that this is really dangerous. By triggering too many pageviews we first of all obscure
> the data we are actually interested in (how do you distinguish a single content reload among thousands
> of minor updates of some small widget?) and you significantly reduce the speed of your application
> by generating additional overhead.
> So my advise: although it might be tempting to use things like Prototype’s Ajax.Responder to trigger
> the urchinTracker function, don’t! It generates a huge overhead and actually obscures your statistics.
> Technorati Tags: Ajax, Google, Google Analytics, Statistics […]
> Pingback by Fading Roses & Raging Viruses >> ― October 11, 2006

要約すると、以下の通りです。

「Google Analyticsは、Web 1.0では本当に使えるツールだが、Web 2.0(的サイト)において、Ajaxページでのページビューをちゃんと取れない。
ページの一部のリフレッシュを新しいページビューとしてしまってよいのだろうか?
Google Analyticsからの回答は、あなたのあらゆるXMLHttpRequestについてurchinTrackerを呼ぶようにということだが、私はこれが本当に危険であると信じている。
あまりに多くのページビューを発生させることによって、我々が本当に興味があるデータを覆い隠します。 (何らかの小さいウィジェットの小さいアップデートにおいて数千の更新があったときに、どうやって一回分のロードを見分けるのか?)
そして追加オーバーヘッドの発生によって、アプリケーションの速度をかなり落とすことになる。
私のアドバイス:
urchinTracker関数のトリガーにAjax.Responderのようなものを使わないでください。
それは巨大なオーバーヘッドを発生させて、あなたの実際の統計を覆い隠します。」

Google Analyticsからの回答が、onreadystatechangeからのレスポンスに対してurchinTracker関数を置くように指示していることから、共通の関数内でトラッキングするようにしたらオーバーヘッドがかかるし、統計がちゃんと取れないし、困ったことになりますよ…ということでしょうね。

onreadystatechangeは、何らかのイベントによって実行されるのだと思うので、イベントを捕捉した箇所でurchinTracker関数を置くようにしたら良いように思います。


また、前半の「ページの一部のリフレッシュを新しいページビューとしてしまってよいのだろうか?」というのはAjaxで非同期に表示させる領域は、表示しているエリアのほんの一部かもしれないし、ほぼ全体かもしれないので、どの部分をページビューとして捉えるべきか、あらかじめ戦略的に設計しておくのが重要になりそうですね。

投稿者 竹村 : 2006年10月27日 00:27

カテゴリー: Webマーケティング

タグ: Ajax , アクセス解析 , Google Analytics , Web 2.0


Movable Type用高機能メールフォーム生成プラグイン A-Formの詳細へ
Movable Type用会員限定サイトプラグイン A-Memberの詳細へ
Movable Type用予約サイト構築プラグイン A-Reserveの詳細へ
ARK-Web×CSR(企業の社会的責任)

アークウェブの本

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

内容充実のZen Cart公式本(v1.3対応)がついに発表です。アークウェブのスタッフをはじめZen-Cart.JPの中心メンバーが共著で執筆しました。続きを読む

Movable Type プロフェッショナル・スタイル

Movable Type プロフェッショナル・スタイル

ビジネスサイト構築におけるCMSとしてのMTの活用方法について、豪華執筆陣による実践的MT本です。八木が共著で執筆しました。続きを読む

Web屋の本

Web屋の本

Web 2.0時代の企業サイトの構築・運用などの戦略を考える「Web屋の本」 (技術評論社)を、中野・安藤が執筆しました。続きを読む

新着はてブ

Loading

アーカイブ

応援しています

  • キッズ・セーバー
  • ソロモン・リリーフ ─ソロモン諸島を応援する有志による、震災復興支援プロジェクト─

    (終了しました)

RSS配信

 

サービスおよびソリューション一覧


最新情報・投稿をチェック


このページのトップに戻る

Photo by A is for Angie

Powered by Movable Type Pro 6.0.1