Google Analyticsに国内検索エンジンを追加するコードまとめ

Google Analyticsの仕様変更により、この方法は現在使えなくなりました。使用した場合は、Google Analyticsが正常に動かなくなる可能性があるのでご注意ください。

アクセス解析としては非常に高性能で私も利用しているGoogle Analyticsなのですが、残念なことにいくつかの弱点があります。その一つに、あらかじめ定義されている(主に米国の)検索サービス以外は「Search」という大まかな区分か、直接リンクと扱ってしまうという挙動があります。

ところがつい先日知ったのですが、トラッキングコードにコードの追加をおこなえば、きちんと分類してデータに反映されるとのこと。

トラフィックレポートで「検索エンジン」(下図の赤枠)として認識される参照元は、Google Analyticsで定義された一般的な検索エンジンのリストからの参照のみを検索エンジンとして認識します。

リストに含まれない検索エンジンは、「参照サイト」(下図の青枠)に分類されてしまいます。そのため、クエリパラメータ以下は無視され、検索キーワードが取得できません。

~中略~

Google Analytics のトラフィックレポートで、これらの検索エンジンからの参照を認識するよう設定するには、トラッキング コードに下記の行を追加してください。

Analytics 日本版 公式ブログ: 国内の検索エンジンをレポートに追加する方法

私自身も「Search」の部分が具体的にどこの検索エンジンなのか気になっていたので、早速日本・日本語の検索サービスで、トラッキングコードに追加できるもの(*1)をまとめてみました。
([*1]検索サービスを提供しているものの、クエリ変数自体が存在しないため追加できなかったり、検索するとその検索エンジン自体に飛んでしまうものがあって、追加できないものがあった。)

それなりに有名なものからかなりマイナーなものまで一通り集めてみたので、多分このコードを追加すれば大部分はカバーできると思います。

Google Analytics検索エンジン追加トラッキングコード集

概要

追加する検索エンジン・検索サービスは以下のものです。

最後のBloglinesなのですが、いちおう日本語のページが用意されていて検索もできるので含めました。検索エンジン自体はAskのものを使用しているようです。

ソース

以下のコードをGoogle Analyticsのトラッキングコードに追加してください。

pageTracker._addOrganic("goo","MT");
pageTracker._addOrganic("livedoor","q");
pageTracker._addOrganic("nifty","Text");
pageTracker._addOrganic("biglobe","q");
pageTracker._addOrganic("excite","search");
pageTracker._addOrganic("infoseek","qt");
pageTracker._addOrganic("fresheye","kw");
pageTracker._addOrganic("hatena","word");
pageTracker._addOrganic("auone","q");
pageTracker._addOrganic("marsflag","phrase");
pageTracker._addOrganic("mooter","keywords");
pageTracker._addOrganic("namaan","query");
pageTracker._addOrganic("bloglines","q");

具体的に追加するのは以下の部分です。

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>

<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-xxxxxx-x");
この部分に追加
pageTracker._initData();
pageTracker._trackPageview();
</script>

注意点

どうも検索クエリが「q」で、サブドメインが「search」だと正常に検出してくれないという話を発見しまして、もしかしたら上記のコードのいくつか(*2)は動作しないかもしれません。
([*2]livedoorやBIGLOBEなど)

実は、これ以外のものも追加を試みているのですが、いまだうまくいきません。

~中略~

検索エンジンのURLがサブドメインに「search」が入り、検索クエリの変数の部分が「q=検索キーワード」のものがおそらく該当してます。

Google Analyticsのトラッキングコードga.jsで検索エンジンを追加する方法|前向きストラテジー

このBlogでもすでに追加のコードを入れているのですが、いかんせんGoogleとYahoo!以外の訪問者が著しく少ないため動作をチェックし切れていません。(*3)自分でも引き続き解析結果を見ていきますが、すべて正常に動作するとは限らない点をご了承ください。
([*3]自分でこのBlogを検索しても出てこないところもあって、自己チェックもしきれない。)

参考・関連サイト