Googleアナリティクスのプラグイン「Power Analytics」の紹介

Googleアナリティクス
プラグイン機能

Googleアナリティクスのプラグイン「Power Analytics」の紹介

Googleアナリティクスにプラグイン機能があることを知っていますか?実は皆さんお馴染みの「ディスプレイ広告向け機能」や「Eコマース機能」「拡張リンク・アトリビューション機能」「クロスドメイントラッキング」などの各種機能のトラッキングコード側の実装はすべてGoogleアナリティクスのプラグイン機能によって実現されています。

そして、このプラグイン機能は、自身でプラグインを処理するプログラムを書けば自由自在に追加することができるのです。

そこで、今回自分がこのプラグイン機能を使って実装したPower Analyticsというプラグインを紹介したいと思います。

なお、8月18日より始まっているYahoo検索のSSL化にも暫定的に対応を行っています。


プラグイン機能について紹介

Googleアナリティクスのプラグイン機能について知っている人はほとんどいないと思います。実際、「Googleアナリティクス プラグイン」で検索しても、日本語の記事で出てくるのはCMSツールの代表例であるWordPressのプラグインくらいで、Googleアナリティクスそのもののプラグインの記事はまず出てきません。

とはいえ、Googleの開発者向け公式ヘルプにおいてもPlugins - Web Tracking (analytics.js)という形で、プラグイン機能の概要と実装方法の詳細が記載されています。

プラグインを実装することで、今までに実装したGoogleアナリティクスの拡張トラッキングコードを、ライブラリという形で公開することが可能になります。例えば、外部リンクへのクリックや電話番号リンクをイベントとして取得したり、スクロール深度の計測などをライブラリ化して必要になったときに簡単に呼び出せるようになります。

Power Analyticsで何ができるの?

Power Analyticsはその名の通り、Googleアナリティクスをパワーアップさせるためのプラグインとして開発しました。現在のPowe Analyticsの機能は下記の4つ。

  • カスタムディメンションの値設定

    • クライアントID - セッションID
    • タイムスタンプ
    • IPアドレス
    • ユーザーエージェント
  • スパムフィルター
  • 参照元書き換え
  • メディア書き換え

さらにそれぞれの機能を利用するか利用しないか、プラグインの利用時にオプション設定で決めることができるようになっています。また、今流行りのリファラースパムについても、スパムフィルターという形でプラグインに組み込んでいます。それぞれの機能の詳細を順番に説明していきます。

カスタムディメンションの値設定

ユーザーエジェントやタイムスタンプなど汎用的に利用可能なカスタムディメンションを簡単に設定することができます。さらに、実装には一手間工夫が必要となるようなクライアントIDや、JavaScriptコードだけでは実現できないIPアドレスもこのプラグイン1つで簡単に実装できてしまいます。

現在対応している機能は、下記の5つになります。Googleアナリティクスの管理画面で指定のスコープでカスタムディメンションを作成してご利用ください。

No設定できる値スコープ
1クライアントIDユーザー
2セッションID(クライアントID + ランダム文字列)セッション
3タイムスタンプヒット
4IPアドレスセッション
5ユーザーエージェントセッション

スパムフィルター

リファラースパムを手間いらずでフィルタリングするための機能を提供します。この機能は、スパムではないと考えられるトラフィックに対してカスタムディメンションに指定した値をセットすることで実現し、以前の記事である <完全版>リファラースパムをたった1つのフィルタで撃退する方法 の考え方を採用しています。プラグイン利用時に、正常トラフィックに対してカスタムディメンションに設定する文字列を指定できますので、その文字列をビューフィルタにて一致フィルタを作成してください。

また、以前の記事では実際にサイトにアクセスを発生させるタイプのリファラースパムは個別に対応が必要でしたが、このプラグインではそのようなリファラースパムに対しても対処できるようにしています。実際にサイトにアクセスするタイプはブラックリストとして管理しており、現在は下記の参照元からのトラフィックが対象となっています(実際にサイトにアクセスしてくるタイプのリファラースパムは現時点では、ほとんどありません)。

  • 100dollars-seo.com
  • semaltmedia.com
  • videos-for-your-business.com
  • buttons-for-website.com
  • success-seo.com
  • video--production.com(2015/08/18 07:45 追加)

これは、新しいリファラースパムが発生したら、都度リストを更新していく予定です。

参照元書き換え

参照元情報を書き換えることができます。書き換える対象は現時点ではごく少数で、一覧にすると下記の内容になります。短縮されてしまっているtwitter経由のリファラーと、モバイルや広告などの流入方法に合わせて参照元情報が変わってしまうFacebookが対象になっています。また、この機能は閲覧しているページのURLのクエリ部分にカスタムキャンペーン(utm_sourceで判断)が設定されている場合は上書きは行いません。

また、8月18日より始まっているYahoo検索のSSL化にも暫定的に対応を行っています。

No書き換える前の参照元書き換えた後の参照元
1t.cotwitter.com
2m.facebook.comfacebook.com
3l.facebook.comfacebook.com
4lm.facebook.comfacebook.com
5search.yahoo.co.jpyahoo

メディア書き換え

メディア情報を書き換えることができます。書き換える対象は、

  • Webメール経由のトラフィックに対して、メディア「email」を設定
  • ソーシャルメディア経由のトラフィックに対して、メディア「social」を設定
  • RSSリーダー経由のトラフィックに対して、メディア「rss」を設定
  • 暫定的に Yahoo検索からの流入にメディア「organic」を設定

の3パターンになります。Webメール判定、ソーシャルメディア判定、RSSリーダー判定は現在下記のリストを元に行っています。また、この機能は閲覧しているページのURLのクエリ部分にカスタムキャンペーン(utm_mediumで判断)が設定されている場合は上書きは行いません。

No参照元の条件書き換えた後のメディア
1mail.yahoo.co.jp を含むemail
2mail.live.com を含むemail
3mail.google.com を含むemail
4alpha-mail.ne.jp を含むemail
5email.excite.co.jp に等しいemail
6outlook.office365.com に等しいemail
7mail.ocn.ne.jp に等しいemail
8webmail.sso.biglobe.ne.jp に等しいemail
9webmail.so-net.ne.jp に等しいemail
10eowebmail.eonet.jp に等しいemail
11mail.auone-net.jp に等しいemail
12mail.goo.jp に等しいemail
13mail.commufa.jp に等しいemail
14webmail.cyberhome.ne.jp に等しいemail
15t.co に等しいsocial
16facebook.com に等しいsocial
17www.facebook.com に等しいsocial
18m.facebook.com に等しいsocial
19l.facebook.com に等しいsocial
20lm.facebook.com に等しいsocial
21reader.livedoor.com に等しいrss
22feedly.com に等しいrss
23feeds.feedburner.com に等しいrss
24search.yahoo.co.jp に等しいorganic

Power Analyticsの使い方

Power Analyticsのプラグインデータは http://power-analytics.appspot.com/plugin.min.js に置いています。Google App Engine上にホストしているので、SSL環境の場合でも httpをhttpsに変更すればアクセス可能なので、商用サイトなどでSSL環境を使っている場合にも安心してお使いいただくことが可能です(このサイトもSSl化していますが、問題なく動作しています。)。

また、ディスプレイ広告向け機能やクロスドメイントラッキングのように、requireコマンドの実行が必要です。Power Analyticsでは、powerupという名前のプラグインをrequireする必要が有ります。これは、

ga('require', 'powerup');

と指定します。その後、カスタムディメンション拡張、スパムフィルター、参照元書き換え、メディア書き換えそれぞれの機能の利用有無に合わせてトラッキングコードを書き足していきます。4つの機能をフルに使う場合のトラッキングコード全体を下記に例示します(既にその他のカスタマイズを行っているサイトにPower Analyticsを設置する際は、既存のカスタマイズコードを削除しないように気をつけて下さい)。

なお、各機能のうち、利用しない機能については行ごと削除してしまって問題ありません。また、カスタムディメンションを利用する機能については、Googleアナリティクスの管理画面のプロパティ設定から事前にカスタムディメンションを作成する必要が有ります。作成した上で、そのカスタムディメンションのインデックス番号を控えておき、こちらのトラッキングコードにも反映させる必要が有ります。

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  ga('create', 'トラッキングIDをここに入れる', 'auto');
  ga('require', 'powerup');
  ga('powerup:dimensions', {
    'clientid': 1,
    'sessionid': 2,
    'timestamp': 3,
    'ipaddress': 4,
    'useragent': 5
  });
  ga('powerup:spamFilter', {
    'dimension': { 'index': 6, 'value': 'Referrer Spam Avoidance' }
  });
  ga('powerup:source');
  ga('powerup:medium');
  ga('send', 'pageview');
</script>
<script type="text/javascript" async src="//power-analytics.appspot.com/plugin.min.js"></script>

まとめ

情報がまだほとんどないGoogleアナリティクスのプラグイン機能ですが、プラグイン実装を行うことで、こんなに簡単にカスタマイズコードを利用することができるようになります。同様に実装すれば、外部リンクや電話番号リンクのクリックイベントや、ページのスクロール状況のトラッキング、フォーム入力に関するトラッキングなど、様々な機能を簡単に利用できるようになります。

プラグイン機能の実装に興味を持った方は、Googleの開発者向け公式ヘルプ Plugins - Web Tracking (analytics.js)を参考に実装してみてください。少しレベルの高いJavaScriptの知識が必要になりますが、それだけの価値のある機能と思います。

また、Power Analyticsのバグ報告や機能追加要望、リファラースパムやWebメールなどのリスト追加依頼は、 SEM TechnologyのFacebookページ または、SEM Technologyのお問合せフォーム よりご連絡ください。