Power Analyticsとは

Power Analyticsとは、私が開発しているGoogleアナリティクスのプラグイン機能です。このプラグインを導入することで、Googleアナリティクスにあまり詳しくない人でも通常よりちょっとパワーアップした計測を行えるようになることを目指して開発しています。

2015年8月のリリースから2016年3月末までの約8か月間で、約200ドメインで利用されており、総トラフィックが10,467,966リクエスト、ピークのリクエスト数は1時間あたり28,870リクエスト(1分あたり481リクエスト)となっています。

Power Analyticsのリリースにあたりサーバー構成をどうするかが一番の悩みどころでした。収益化させるつもりがないので、あまり高価なサーバーにしたくなかったのと、リクエスト数が見えない中、サーバーダウンはさせたくないという思いがありました。結果としてGoogle App Engineを選んだのですがこれが正解でした。動的プログラム部分はほとんどないので、PythonのBottleフレームワークを利用して、IPアドレスだけ取得してplugin.min.jsのIPアドレスだけ書き換えて配信できておりさらに現在のトラフィック量でもApp Engineの無料範囲内で利用できています。

パワーアップしたPower Analyticsの新機能

外部リンクのクリックイベント計測

非常に単純かつよく利用されているイベント計測であるものの、なぜ今まで入れていなかったのか疑問な機能です。
<a>タグにてコーディングされたリンクのクリックを取得し、リンク先URLが外部リンクであればクリックイベントを送信します。

ga('PowerAnalytics:outbound');

のみで利用することが可能で、送信されるイベントは

項目
イベントカテゴリ Outbound Link
イベントアクション Click
イベントラベル クリックしたリンクのリンク先URL
イベントの値 なし
インタラクション設定 非インタラクションヒット

となっています。

電話番号リンクのクリックイベント計測

こちらも外部リンクと同様に需要の高いイベント計測です。こちらも、<a>タグにてコーディングされたリンクのクリックを取得し、リンク先URLが電話番号リンクであった場合、クリックイベントを送信します。

ga('PowerAnalytics:tel');

のみで利用することが可能で、送信されるイベントは

項目
イベントカテゴリ TEL Link
イベントアクション Click
イベントラベル クリックしたリンクのURL(電話番号)
イベントの値 なし
インタラクション設定 非インタラクションヒット

となっています。

Youtubeの操作イベント計測

埋め込みYoutubeをサイト内で利用している場合に効果を発揮する機能です。この機能を使うことで、サイト内のYoutube動画がどのくらい閲覧されているかを把握することができます。

利用するには、

ga('PowerAnalytics:youtube');

とした上でサイト内の各Youtube埋め込みコードを下記のように変更する必要があります(iframeタグのsrc属性にenablejsapi=1のパラメーターを追加)。

// 変更前
<iframe width="420" height="315" src="https://www.youtube.com/embed/mnvAOaHz1EQ" frameborder="0" allowfullscreen></iframe>

// 変更後
<iframe width="420" height="315" src="https://www.youtube.com/embed/mnvAOaHz1EQ?enablejsapi=1" frameborder="0" allowfullscreen></iframe>

送信されるイベントは、

項目
イベントカテゴリ Youtube Action
イベントアクション YT.PlayerState.PLAYING, YT.PlayerState.PAUSEDなど(※)
イベントラベル 動画ID : 動画タイトル
イベントの値 なし
インタラクション設定 非インタラクションヒット

となっています。

※・・・YT.PlayerState.PLAYING, YT.PlayerState.PAUSED, YT.PlayerState.BUFFERING, YT.PlayerState.CUED, YT.PlayerState.UNSTARTED, YT.PlayerState.ENDED

Power Analyticsの使い方

もともとのPower Analyticsの機能と合わせて、Power Analyticsのすべての機能を利用するには下記のようなコードになります。適宜、不要なコードを削除したり、設定値などを変更してお使いいただければと思います。

なお、Power Analytics導入の詳細や、もともとあった機能については過去記事Googleアナリティクスのプラグイン「Power Analytics」の紹介)を参考にしてください。

<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('powerup:outbound');
  ga('powerup:tel');
  ga('powerup:youtube');
  ga('send', 'pageview');
</script>
<script type="text/javascript" async src="//power-analytics.appspot.com/plugin.min.js"></script>

Power AnalyticsとAutotrackの機能比較

機能比較と書きましたが、どちらも開発途上のプラグインになるので、刻一刻と機能は変わっていくと思われます。ここでは、それぞれのプラグインの設計思想という観点で比較したいと思います。

Autotrack

ホストするサーバーは提供されていないので、各自のウェブサイトを配信しているサーバー上にAutotrackプラグインのソースコードを配置する必要があります。ただし、オープンソースとして提供されているため、Github上からソースコードをダウンロードしてきて、自身のサイトに合わせてカスタマイズを行った上で利用する、ということが可能です。

また、柔軟な設定が可能であるものの、HTMLのDOM上に属性を追加する必要があったり、プラグイン利用時のオプションが複雑だったりするため、非エンジニアがこのプラグインを使いこなすのは難しいかと思います。逆に、Googleアナリティクスのことを一通り理解しているエンジニアであれば、Autotrackプラグインの便利さがわかるかと思います。

Power Analytics

プラグインをGoogle Apps Engineでホストしていることにより、追加のJavaScriptコードをウェブサイト上に配置する必要がありません。とはいえ、ソースコードを自由に改変できないため、Power Analyticsが提供していない機能を開発者自身が組み込むことができません。

カスタマイズ性やオプション設定を極力減らした設計になっているため、柔軟性には欠ける者の、非エンジニアであってもある程度のGoogleアナリティクスの知識さえあれば導入することができるかと思います。

まとめ

Googleアナリティクスを導入しているサイトのほとんどがデフォルトのトラッキングコードから一切変更せずに利用している、という噂も聞いています。サイト/コンテンツ制作で忙しい中、トラッキングコードまで気が回らない方も多いかと思います。ですが、今後デジタルマーケティングにシフトすることは目に見えているので、まずはPower AnalyticsやAutotrackのようなGoogleアナリティクスの計測コードを拡張できるようなツールを導入して、手間をかけずにGoogleアナリティクスの計測環境を整えておくといいと思います。