Google アナリティクスは非常に便利なツールです。トラッキングコードを追加するだけで即座にアクセス解析を始めることができ、データ分析にそれほど詳しくないユーザであっても、簡単にその情報を活用することができます。これほどのツールを無料で利用できるのは、ある種非常にありがたいことです。

ただ、ネット上に掲載されているGoogle アナリティクスにまつわる情報は、古いものや新しいもの混在している状態です。いったいどの情報を使えば良いのか?が分からないことも多いと思います。さらにWeb上に掲載されているサンプルコードの中には正しく動作しないものもあり、不要なところでつまづいてしまうようにも感じます。

そこで本記事では、主にGoogleアナリティクスの仕様が分からずどうすればよいの?というエンジニアを対象として、アナリティクスのおおまかな仕組みや設定について書かせていただきます。

なお後に述べますが、Google アナリティクスには「Google アナリティクス」と2013年に登場した「ユニバーサル アナリティクス」の2種類が存在します。本稿では以下、これらを合わせて「アナリティクス」と記述することにします。

それでは、アナリティクスの仕組みやその設定方法について見ていきましょう。

目次

アナリティクスのアカウント構成

アナリティクスはGoogleアカウントを使用して利用することができます。ただしアナリティクスでは、Googleアカウントとは別にアナリティクス独自のアカウント構成を持っています。

ここでは登場する基本的な概念に絞って解説を入れておきます。詳しくは公式サイトに解説がありますので、より細かいことを知りたい場合はそちらを参照していただくとよいでしょう。

アカウントに関連する3つの概念

Googleアナリティクスは、以下3つの要素から構成されます。

  • アカウント
  • プロパティ
  • ビュー
アカウント

アナリティクスのアカウント体系で最上位となる単位です。このアカウントの下に、以下で述べるプロパティやビューが含まれます。

アナリティクスでは、このアカウントを軸にして、どのユーザーへ共有するかなどを設定することができます。例えば1つの部門やチームで複数のサイトを管理している場合、このアカウントを同じ形でまとめておき、アカウントを共有するといった使い方ができます。

プロパティ

プロパティはトラッキングデータを収集する単位です。プロパティには一意のトラッキングIDが発行され、このトラッキングIDを含むトラッキングコードをサイトへ設置することで、データを収集します。

自分で運営するWebサイトで利用する場合、おおよそ1サイト=1プロパティと考えて差し支えないかと思います。

ビュー

ビューとはレポートの生成単位です。プロパティの中で特定の条件に該当するデータのみを取り出し、レポートとして表示します。各プロパティには最低でも1つのビューが存在します。

特定のIPからのアクセスをレポート全体で除外したい場合、特定のドメインへのアクセスにのみ絞り込みたい場合などに、全データが閲覧可能なビューとは別のビューを作成して、IPやドメインでフィルタしたレポートを作るといった使い方が可能です。

それぞれの概念の関係性

それぞれの概念の関係を簡単に表すと、以下のようになります。プロパティが複数のビューを内包し、さらにそのプロパティ自体をアカウントが内包しているという構図です。

google-analytics-account

トラッキングコードの設定を行ううえで覚えておきたいのは、プロパティです。アナリティクスはプロパティ単位でデータを収集しているという点は基本的な事項なので、ぜひ覚えておいてください。

基本のトラッキングコードとその仕組み

アナリティクスのアカウントを作成すれば自然とトラッキングコードのあるページへ誘導されます。簡単にその中身を解説しておきます。

アカウント作成後、次のようなトラッキングコードが発行されます。2014年6月現在、アナリティクスはユニバーサルアナリティクスが標準とされているため、発行されるトラッキングコードもユニバーサルアナリティクス仕様のものとなっています。

以下では、このトラッキングコードについて解説しておきましょう。

トラッキングコードのロード

この部分では、トラッキングスクリプトの読み込みが記述されています。ユニバーサルアナリティクス用のスクリプト(analytics.js)を読み込み、gaというオブジェクトとして扱えるようになっています。

gaという名前はここの部分で引数として渡してしていますので、アナリティクスのオブジェクトであるgaという名前自体を変更することも可能です。複数のトラッキングIDを利用してそれぞれ別の測定をしたい場合など、デフォルトのgaという名前を変更することで、独立な計測をすることが可能になります。

トラッカーの作成

上記トラッキングコードで次に記述されているのが、トラッカーオブジェクトの設定です。

ここでは、トラッキングIDを設定して、どのプロパティにデータを送信するか?を登録しています。

トラッキングID

トラッキングIDは、UA-(8桁の数字)-(数字) という構成になっています。前の8桁の数字がアカウントIDで、ハイフンの後に続く数字は新しいプロパティを作成するたびに追加される番号が入ります。

なお3番めのパラメータはautoとなっていますが、ここでクッキーを発行するドメインを指定することもできます。

ページビューの計測

トラッカーを作成した後、続いて次のような記述があります。

sendというのはGoogleのコレクションサーバにデータを送信するメソッドで、ページビューとして計測しますよという記述です。

アナリティクスでは、後述するようにページビュー以外にも様々な指標が計測できます。ただしこのように最初からページビューを計測するコードが埋め込まれているので、ページビューの測定に限ればデフォルトのコードで十分です。

とはいえ、デフォルトのトラッキングコードの仕組みを覚えておくと、後でトラッキングコードに自分で手を加える際に役に立つかと思います。

さまざまなトラッキングコード

アナリティクスには、アップデートの際にトラッキングコード自体が変更されることがあり、いくつかのバージョンが存在します。

2014年現在はユニバーサルアナリティクスが標準となっていますので、新たにアナリティクスを導入する場合は基本的にユニバーサルアナリティクスを使用すれば問題ありません。

既にアナリティクスを運用している場合は、導入しているコードにあった設定が必要となります。ここでは、どのようなバージョンのアナリティクスが存在するのかを簡単に紹介しておきます。

ユニバーサルアナリティクスのコード(analytics.js)

2013年に新たに登場したアナリティクスが、ユニバーサルアナリティクスです。ユニバーサルアナリティクスの最大の特徴は、Measurement Protocolを使用することによって、ウェブサイトのトラッキングデータやモバイルアプリのトラッキングデータを統合して扱うことができる点にあります。

さて、ユニバーサルアナリティクスのトラッキングコードは、先にも紹介した以下のようなコードです。

ユニバーサルアナリティクス以前のコード(ga.js)

ユニバーサルアナリティクスのトラッキングコード以前に発行されていたトラッキングコードがこちらです。

ユニバーサルアナリティクスが登場したのは2013年のことなので、2014年現在でもこのタイプのコードを使用しているサイトは多く見られます。後の章で紹介する測定方法の解説でも、このタイプのトラッキングコードを使用した場合のコードを併記しました。

同期コード・非同期コード

ユニバーサルアナリティクスのトラッキングコードも、前の節で紹介したGoogle アナリティクスのトラッキングコードも、非同期的に測定データを送信します。

これに対して、かつては同期型のトラッキングコードが存在しました。最近は見かけることもなくなった気がしますが、比較的以前から運用されており積極的に更新をしていないようなサイトの場合、同期型のコードを使われている場合があります。

同期型のコードはより正確に測定が可能なものの、トラッキングスクリプトの読み込み自体がサイトの読み込みを妨げるため、現在は非同期のスクリプトが標準となっています。(ユニバーサルアナリティクスでも同期的にデータを取り込むこともできます。)

Google タグマネージャ

アナリティクスのトラッキングコードを直接挿入する方法とは別に、Google タグマネージャを使用してトラッキングコードを設置する方法があります。

タグマネージャを使用するメリットは、アナリティクスやそれ以外の複数のスクリプトをソースコードの変更無しに挿入できる点です。

タグマネージャを利用した場合の配信コードは以下のようになります。(当ブログで使用しているコードです。)

Google タグマネージャを使用してトラッキングコードを設定する方法は、弊社サービスサイトのブログにあるこちらの記事をご覧下さい。

アナリティクスでできるさまざまな測定

アナリティクスは、デフォルトのトラッキングコードをサイトに挿入するだけでもある程度利用が可能です。しかし、以下に記載する設定を活用することで、より詳細な情報を利用することができます。

また、マーケッターやアナリストなどから、新たに追加でサイト内のデータを取りたいと言われることもあるでしょう。

ここでは、典型的なケースでの設定内容・方法について、簡単に解説を加えていこうと思います。

ページビューを測定する

通常のページビューを測定するには、ページビュー トラッキングを設定します。これは先に紹介したように、デフォルトのトラッキングコードに含まれています。

このページビューの測定は、実際に画面遷移をせずとも測定に含めることができます。

例えば、最近のWebアプリケーションでは、AngularJSやBackbone.js、先日当ブログでも紹介したVue.jsなどを利用して、シングルページアプリケーションとして実装されることも少なくないでしょう。こうしたシーンで、仮想的な画面の切り替えも、分析上は1つのページビューとしてカウントしたい場合もあると思います。

ページビュー トラッキングを設定すると、このようなページビューを明示的に計測することが可能になります。以下はその例です。

クリック操作などのイベントを測定する

クリック操作などのイベントを記録するには、イベント トラッキングという機能を使います。例えばユーザがボタンをクリックした、ファイルをダウンロードしたなどの際にその行動を記録します。

サンプルコードは以下の通りです。Google アナリティクスかユニバーサルアナリティクスかによってコードの設定が異なるので注意しましょう。

ソーシャル関連の指標を測定する

ソーシャルでのいいね!やTwitterのツイートを測定対象にするための機能としてソーシャル インタラクションという機能が存在します。イベント トラッキングでも同様の測定が可能ですが、ソーシャルの情報をまとめて測定することで、ソーシャルの値をソーシャルのみで絞り込んで見る、といったように、扱い易くなります。

いいね!ボタンのクリックを測定する

Facebook JavaScript SDKを使用すると、いいね!ボタンのクリック時のイベントを拾うことができます。以下は、いいね!が押された際に、アナリティクスへそれを通知する例です。

処理や操作にかかった時間を測定する

アナリティクスでは、処理にかかった時間をデータとして収集する機能も用意されています。これがユーザー タイミングという機能です。たとえば、外部ドメインからのレスポンス終了までの時間を調べたときに、測定したデータをアナリティクスへ送信することで、後でその解析を行うことができます。

弊社サービスサイトのブログでユーザー タイミングについてはここを見れば分かるようにしてほしいとリクエストを受けたので、この機能も紹介しました。

使い方の例として、はてなブックマークのブックマーク数を返すAPIのレスポンス時間を測定してみましょう。

このように時間を測定することで、サイトの特定の場所のロードにどの程度時間がかかっているかを調べることができます。

まとめ

本記事では、Google アナリティクスの設定に関して、トラッキングコードの見方やよく使いそうな測定の簡単な紹介を行いました。とはいえ、今回紹介した測定はアナリティクスの中でも一部にすぎません。アナリティクスは使いこなせばより多様なデータ測定や解析が可能なツールです。

とりあえず発行された計測タグを入れていただけという方も、これを機に少し進んだアクセス解析をしてみてはいかがでしょうか?