【超・保存版】ユニバーサルアナリティクスがよく分かる!実務者向け徹底解説

先日、ユニバーサルアナリティクスって何が違うの?その機能や移行方法など徹底解説という記事を書きましたが、今回はユニバーサルアナリティクスの実務編として細かな設定方法などをまとめました。

調査~テスト~執筆まで3週間がかりでした。。設定方法などでお困りの方に、少しでもお役にたてましたら本当に幸いです。また、十分に確認はとったつもりですが、万が一誤りありましたらご指摘下さい。。

この記事の内容

セッション定義変更に関して
カスタム変数とカスタムディメンションとカスタム指標に関して
基本的なスニペットの置き換えに関して
イベント
e コマース
仮想ページビュー
ソーシャル インタラクション(ソーシャルプラグイン)
クロスドメイン トラッキング

あくまで、今回は実際にテストしてみて動いたものを載せています。サイトによっては全く同じ設定にしても何かが原因で動かない!ということもあるかもしれませんがその場合はサイトのシステムを把握している人などに相談していただければいいかと思います。

※コードのUA-0000000-0やexaple.com/hogehoge.comなどはサンプルとしての記載ですので各自のサイトに合わせて変更してください。

セッション定義変更に関して

ユニバーサルアナリティクスでは参照元サイト経由の訪問が別セッションとして計測されます。

この文章をみてどういうことか理解できる方は読み飛ばしていただいて大丈夫です。個人的にはよくわからなかったので実際にテストをしてみました。そして、そういうことなのか!という驚きがあったのでまとめてみます。

関係ありそうなサイト

  • クロスドメインの設定はしていないけど別サイトに飛んだり元ドメインに戻ったりするサイト
  • 様々なサイトからリンクをもらっていて参照元経由のアクセスが多いサイト(?)

の場合は特に関係ある話になると思います。

どんな影響があるのか?

ユニバーサルアナリティクスにしたらセッションが増えた、参照元の数が増えた

サイトによりけりなので、大きな影響はないかもしれないですが、Google アナリティクスとユニバーサルアナリティクスで数字が異なる場合はこの計測方法の違いの影響な可能性があります。

例えば私は、調べ物をしていていろいろなキーワードで検索して、いろんなサイト入ってそのリンクから他のサイトに遷移して。。というのをずっと行っていると何回も同じページに様々な参照元からランディングしてしまうことがよくあります。

こういった場合これまでは同一セッション内なら何度同じサイトに入ってもセッションは1であったのに対してユニバーサルアナリティクスでは別セッションになっているので、セッション数が増えてしまう可能性があります。

コンバーションの参照元がすべて同じドメインになってしまう

クロスドメインの設定を行っていない場合とユニバーサルアナリティクスで参照元除外を行っていない場合です。

例えばtest.com内のリンクからexample.comにランディングして、hogehoge.comというドメインのフォームを使い、コンバージョンをhogehoge.com/thanksというページに設定していたとします。

1セッションで異なるドメイン

従来のGoogleアナリティクスは、上記例の場合コンバージョンページ( hogehoge.com/thanks )の参照元は test.com のままですが、ユニバーサルアナリティクスの場合、参照元が変化すると別セッションになってしまうので参照元がすべてexample.com / referral になってしまいます。

従来のGoogleアナリティクスではどう計測されていたか?

不慣れな方のために、そもそもセッション(ちょっと前まで訪問数と記載されていました。)とはなんでしたっけ?という話を簡単にします。

同一の訪問者が閲覧を開始してから終えるまでの一連の流れ。のことを指します。終了はどのタイミングかというと下記のような状況で切り替わります。

  • ブラウザを閉じる
  • 午前0時
  • 30分以上操作をしない
  • キャンペーン、ソースの変更

※utmzが更新されるタイミングなのですが、細かい話になってしまうので、詳細はアナリティクスでの訪問数の算出方法でご確認ください。

例えば下記のようにサイトを遷移したとします。

1セッションでの推移

そうするとこのサイトは参照元/メディアはyahoo / organic、セッション1で、このセッションでのページビューは3となります。

※もしここまででちょっと良くわからない場合は下記サイトを参考にしてください。
参考1:クリック数、訪問数、ユーザー数、閲覧開始数、ページビュー数、ページ別訪問数の違い
参考2:訪問数とページビューの違いについて

では本題です。下記のような動きをした場合、各指標の値はどうなるでしょうか。

2セッションでの遷移

従来のGoogleアナリティクスの場合、参照元/メディアはhogehoge.com / referral、1セッション、ページビュー6になります。

ユニバーサルアナリティクスではどうなる?

ユニバーサルアナリティクスでは参照元サイト経由の訪問が別セッションとして計測されます。したがって、

2セッションでの遷移

参照元/メディアは hogehoge.com / referral と test.com / referral、2セッション、6ページビュー(1セッションは3ページビュー)になります。

以下に実際にテストした結果のキャプチャをそのまま(サイト名とかは編集しました)載せています。テスト環境は1サイト全ページに従来のGoogleアナリティクスとユニバーサルアナリティクスで異なったプロパティIDのトラッキングコードを入れています。ブラウザはchromeです。

集客>すべてのトラフィック

従来のGoogleアナリティクスの場合
Googleアナリティクスすべてのトラフィック

ユニバーサルアナリティクスの場合
ユニバーサルアナリティクスすべてのトラフィック

行動>サイトコンテンツ>すべてのページ

従来のGoogleアナリティクスの場合
Googleアナリティクスすべてのページ

ユニバーサルアナリティクスの場合
ユニバーサルアナリティクスすべてのページ

カスタム変数とカスタムディメンションとカスタム指標に関して

前回の記事にも載せたのですが、少し詳細にしてみました。

具体的にできること

  • AボタンをクリックしたユーザーをAグループ、BボタンをクリックしたユーザーをBグループと分類してその行動の違いを比較
  • ログインした状態でのセッションとログインしてない状態でのセションでの行動の違いを比較
  • 誰の記事が問い合わせにつながっているか

など設定次第ではいろいろなことができます。

また、ユニバーサルアナリティクスでは外部データをインポートする時にそのデータの独自のディメンションと指標をそのまま設定し、レポート画面で使うこともできます。

カスタム変数とカスタムディメンションとは?

まず、カスタム変数は従来のGoogleアナリティクスの機能の名前です。

カスタムディメンションはユニバーサルアナリティクスでの機能の名前です。ただ、カスタムディメンションはカスタム変数のパワーアップ版という感じなのでまとめて説明します。

2つともディメンションなので何か数字を計測するのではなくPVや訪問数などアナリティクスレポートで見れる数字にオリジナルなグルーピングしてあげる機能です。

ちょっとイメージしにくいかもしれないですが、レポート画面で「行動>サイト コンテンツ>すべて」のページを見ていたとします。

例えば、ページビューが一番多いページは一体どこからの流入が多いんだろう?と思ったらセカンダリディメンション>集客>参照元を設定してみたり、サイト全体の直帰したセッションと直帰以外のセッションを比較をしたいときはセグメントを設定してみたりすると思います。

そのセカンダリディメンションとかセグメントに自分が指定した分類が追加されるイメージです。

※自分で設定することができ、自由度が高い分あまり必要性を感じなかったり、よく意味がわからないのであれば無理に設定する必要はないと思います。

用語

あまり馴染みのない用語が出てくるので先にまとめます。
色は下に記載した追加するコードと合わせてあります。(わかりやすくなればと思い・・・)

index:変数番号(必須)
変数を区別する番号で、整数の1から5までの5つのいずれかを割り当てることができます。

  • カスタムディメンションではdimension、1から20まで設定可能
  • カスタム指標ではmetric、1から20まで設定可能

name:変数の名前(必須)
カスタム変数の名前で文字列。レポート画面上ではカスタム変数(キー)の名前として表示されます。

  • カスタムディメンションではdimensionValueとアナリティクス設定のカスタムディメンションの「名前」
  • カスタム変数ではmetricValueとアナリティクス設定のカスタム指標の「名前」

value:変数に対応する値(必須)
カスタム変数の値で変数名とペアになる文字列です。例えば「name」が性別、「value」は男性、女性といった使い方。通常一つのカスタム変数の名前に対して複数の値が存在します。レポート画面上ではカスタム変数(値)の名前として表示されます。

  • カスタムディメンションではSOME_DIMENSION_VALUE
  • カスタム変数では(デフォルトのコードで123となっている部分)

※変数をセットするトリガーには

  • ページを表示した時
  • リンク/ボタンをクリックした時
  • フォームを実行した時

などがあります。

scope:利用用途番号(オプション)
変数の利用用途。指定しない場合は3の扱いになります。1はユーザーレベル、2は訪問(セッション)レベル、3はページレベルを意味します。ユニバーサルアナリティクスでは管理画面「範囲」で設定します。

※スコープ詳細

- ビジターレベル:
ビジター レベルの変数は、サイトへ訪問したユーザーの全てのセッションと閲覧した全てのページに関連付けられます。例えば購買を行なったユーザーや会員登録済みのユーザーなど、セッションをまたいで、長期的なトラッキングを行なう場合に適したレベルです。スコープは 1 を指定します。

- セッション レベル:
セッション レベルの変数は、ユーザーのセッションと閲覧した全てのページに関連付けられます。たとえばログイン機能を持ったサイトのように、異なる利用形態を選択できるサイトで、訪問ごとの傾向を比較する際に適したレベルです。スコープは 2 を指定します。

- ページレベル:
ページ レベルは、訪問中に閲覧したページに関連付けられます。変数をページ毎に変更することもできます。例えば筆者別やキャンペーン対象商品別などの軸でコンテンツをグループ化して利用状況を確認する場合に適したレベルです。スコープは 3 を指定します。

ユニバーサルアナリティクスでは
ページは「ヒット」という表記になっています。

従来のGoogle アナリティクスとユニバーサルアナリティクスでの違い

カスタム変数は5個(公式は)、カスタムディメンションは20個まで設定できるようになっています。

カスタム変数のスコープは、「ユーザー」「セッション」「ページ」、カスタムディメンションのスコープは「ユーザー」「セッション」「ヒット」という名称に変更になっています。

追加するコード

従来のGoogle アナリティクス
_setCustomVar(index, ‘name‘, ‘value‘, scope)

ユニバーサルアナリティクス
管理画面プロパティ>カスタム定義>カスタムディメンションで名前等を登録してから出てきたコードをカスタマイズします。
var dimensionValue = ‘SOME_DIMENSION_VALUE‘;
ga(‘set’, ‘dimension1′, dimensionValue);

具体的な設定方法

※カスタムディメンションのコード書き換えまでは前回の記事を参考にしてください。

http://example.comというサイトで http://example.com/g_member/complete のページにアクセスしたユーザーを「ゴールド会員」とカテゴライズするとします。

従来のGoogle アナリティクスの場合
 
_gaq.push(['_setCustomVar', 2, 'membership', 'gold', 1]);
 

※indexが2なのはこのサイトで2つ目だったからです。
このコードを下図のようにトラッキングコードに含めます。
カスタム変数のコード

ユニバーサルアナリティクスの場合
 
 var 会員 = 'gold';
ga('set', 'dimension1', 会員);
 

このコードを下図のようにトラッキングコードに含めます。

カスタムディメンションのコード

レポート画面での見え方

ディメンションなので従来のGoogleアナリティクスでもユニバーサルアナリティクスでもカスタムレポートやセカンダリディメンション、セグメント等、濃い緑字に薄い緑色ので表示されるものなら設定できると思います。

従来のGoogleアナリティクスの場合は「ユーザー>カスタム>カスタム変数」で見ることができます。
カスタム変数キー

キーをクリックすると値が見られます。
カスタム変数

ユニバーサルアナリティクスの場合特にレポートに項目があるわけではないので、カスタムレポートを作成したり、セカンダリディメンション等で選択する必要があります。
セカンダリディメンション

カスタムディメンションを選択すると自分が名前で指定した項目が表示されますので選択するとそのルールでカテゴライズされた数値を見ることができます。
カスタムディメンション設定済すべてのトラフィック

補足

実際にはvalueの部分の値は変数として取得することが多いです。

http://example.com/member/completeにコードを設置した時にvalue(SOME_DIMENSION_VALUE)に会員の種類(レギュラー、ゴールド、プラチナ等)を入れられるようにすればそれらでセグメントすることも可能になります。

注意点

そういった変数を使用する場合の設定方法はサイトごと異なるので実際カスタムディメンションの設定をしたい場合は技術者や制作会社の方にこういう風な値を取りたいですと伝えて、公式のURL( Custom Dimensions & Metricsカスタム ディメンションとカスタム指標 )をみて設定してもらったほうが安全かと思います。

トラッキングコードに追加をする場合もあるので何かミスがあったら計測データそのものに影響してしまう可能性もあります。

また、ぺージレベルの場合はイベントでも同じような数字がとれるので、カスタムディメンション(変数)は設定数に上限があるので何を使うかはきちんと決めたほうがいいと思います。

カスタム指標

これはこれまでのアナリティクスにはなかったものです。設定方法はカスタムディメンションと似ています。こちらは指標なので実際にみたい数字を計測するイメージです。

※自分で設定することができ、自由度が高い分あまり必要性を感じなかったり、よく意味がわからないのであれば無理に設定する必要はないと思います。
※すべてヒットに対して紐付けられます。

追加するコード

(コードを発行するまでのフローは前回の記事をご確認ください。)

var metricValue = ‘123‘;
ga(‘set’, ‘metric1‘, metricValue);

具体的な設定方法

http://example.comというサイトでhttp://example.com/g_member/complete のページにアクセスしたユーザーを「ゴールド会員」とカテゴライズし、その数をカウントする場合の設定です。

 
var ゴールド = '1';
ga('set', 'metric2', ゴールド);
 

上記のコードをhttp://example.com/g_member/complete のページのトラッキングコードに追加します。

カスタム指標のコード

水色の部分は先ほど設定したカスタムディメンションです。

レポート画面での見え方

これは実際の計測した数値の部分なので、デフォルトのままでは数字が表示されません。ですので必要なディメンションと組み合わせてカスタムレポートを作成します。

セグメント、リマーケティングリスト等、青字背景水色のものが表示されるとこの一部でなら設定できると思います。

カスタムレポート

カスタム指標セグメント

基本的なスニペットの置き換えに関して

イベント

具体的にできること

ページ遷移しないページでのアクションを計測することができます。

  • PDFのDLボタンのクリック数を計測
  • 外部サイトへのリンクのクリック数を計測

など、比較的いろいろなサイトで設定されていて使われやすい設定だと思います。独自の名前を付けられるので、他の担当者から引き継ぐ場合などは名前付けのルールとかを確認しておいたほうがいいかもしれません。

基本コード

従来のGoogleアナリティクスの場合

 
_trackEvent(<span style="color: #ff99cc;">category</span>, <span style="color: #99ccff;">action</span>, <span style="color: #800080;">opt_label</span>, <span style="color: #cc99ff;">opt_value</span>, <span style="color: #ff6600;">opt_noninteraction</span>)
 

ユニバーサルアナリティクスの場合

 
ga('send', 'event', '<span style="color: #ff99cc;">category</span>', '<span style="color: #99ccff;">action</span>', '<span style="color: #800080;">opt_label</span>', <span style="color: #cc99ff;">opt_value</span>, {'<span style="color: #ff6600;">nonInteraction': 1</span>});
 
補足

category(必須)
一番大きな分類。イメージ的には大カテゴリ的な役目です。

例えば資料や動画などそれをクリックしたら得られるもの。みたいなイメージです。

action(必須)
動作を記入します。

クリックとかダウンロードなど、イベントを計測するタイミングでどういうことをするのか。みたいなものを設定するイメージです。

opt_label(任意)
詳細な分類を記入します。

例えば、categoryで資料と設定したらその資料のタイトルや分類番号などを記入するイメージです。

opt_value(任意)
数値を記入します。

資料がDLされたら100円分の価値がある。と思ったら100と記入します。個人的にはこの数字が入っていたほうがレポート画面でどのくらいのインパクトがあったかみれて面白いのでだいたい設定します。また、

「downloadTime」など、別の場所で定義した変数から得られる値を割り当てたりすることができます

と公式に書かれているので変数を入れることもできるみたいです。

opt_noninteraction(任意)
直帰率に影響を与えたくない場合に「true」にします。

例えばexample.comのサイトに訪れて、そこからhogehoge.comというサイトのリンクをクリックしたとします。

この時にhogehoge.comへの遷移数をイベントで計測していてたとしたら、別サイトへの遷移という行動を行ったので直帰とはみなされない、というのがデフォルトですが、ランディングしてすぐに他のサイトに遷移しているんだからそれは直帰扱いにしたい。という時にこの設定を「true」にします。

気をつけないといけないのは何も設定しないとデフォルトのままなので直帰扱いにならない。ので気をつけてください。

具体的な設定方法

従来のGoogleアナリティクスの場合

 
<a onmousedown="_gaq.push(['_trackEvent', 'link', 'click', 'cake', 500, true]);" href="http://example.com/">Googleアナリティクス</a>
 

ユニバーサルアナリティクスの場合

 
<a onmousedown="ga('send', 'event', 'link', 'click', 'ice', 300, {'nonInteraction': true});" href="http://example.com/">ユニバーサルアナリティクス</a>
 

従来のGoogleアナリティクスとユニバーサルアナリティクスどちらでも計測可能

 
<a onmousedown="_gaq.push(['_trackEvent', 'movie', 'DL', 'music', 1000 , true]);ga('send', 'event', 'movie_U', 'DL_U', 'music_U',  1000, {'nonInteraction': true});" href="http://example.com/">両方</a>
 

※計測の確認をするため「movie_U」というように_Uと記入してありますが普通に設定するときは_Uとか入れずに従来のGoogleアナリティクスとユニバーサルアナリティクスのカテゴリー等の名前は同一で問題ないです。

イベントのコード

※注意※
通常onMouseDownではなくonclickを使用することが多いのですが、今回テストした時にonclickでうまく計測されないことがあったため、onMouseDownになっています。

この辺りの使い分けに関して気になる方は下記サイトをご確認ください。ざっくりいうと、イベントとしてカウントするタイミングがクリックしたときか、マウスを押した時か。みたいな違いです。

参考1:Googleアナリティクスでの外部リンククリック計測3つの手法の利点と欠点を整理してみた
参考2:リンクのクリックやダウンロードを「イベント」として計測する! イベントトラッキングの使い方と注意点[第65回]

レポート画面での見え方

「行動>イベント」の画面でのレポート画面の比較です。

従来のGoogleアナリティクスの場合
GAイベントレポート

ユニバーサルアナリティクスの場合
UAイベントレポート

注意点

カテゴリー当の名前を何も考えず適当に設定するととても見にくくなるし、他の人が見てもわかるようにしないといけないので、ある程度カテゴライズしたり、今後こういうところにイベントを設定したいから、こういう名前がいいな。みたいな名前付けのルールを決めておいた方がいいかと思います。

e コマース

具体的にできること

特にeコマースサイトで使用すると便利です。どの商品がいついくら分売れたかの情報を計測できるので、どの流入元から一番良く売れたか、とか売上をアナリティクスで計測したデータと一緒にみれます。

特定の商品を購入した人でフィルタやセグメントすることも可能になります。

また、カスタム変数やユーザー属性をと合わせてセグメントを設定すると特定のブランドを購入した女性と男性の(年代別の)サイト内遷移の比較。等の細かいデータを見ることができます。

基本コード

eコマースで設置するコードは2つあります。注文毎(トランザクション)の情報を送信するコードと商品毎(SKU)の情報を送信するコードです。

従来のGoogleアナリティクスの場合
注文毎

_gaq.push(['_addTrans',
'1234', // transaction ID - required
'Acme Clothing', // affiliation or store name
'11.99', // total - required
'1.29', // tax
'5', // shipping
'San Jose', // city
'California', // state or province
'USA' // country
]);

商品毎

_gaq.push(['_addItem',
'1234', // transaction ID - required
'DD44', // SKU/code - required
'T-Shirt', // product name
'Green Medium', // category or variation
'11.99', // unit price - required
'1' // quantity - required
]);

参照:Ecommerce Tracking – Web Tracking (ga.js)

ユニバーサルアナリティクスの場合
注文毎

ga(‘ecommerce:addTransaction’, {
‘id’: ‘1234‘, // Transaction ID. Required.
‘affiliation’: ‘Acme Clothing’, // Affiliation or store name.
‘revenue’: ’11.99′, // Grand Total.
‘shipping’: ’5′, // Shipping.
‘tax’: ’1.29′ // Tax.
});

商品毎

ga(‘ecommerce:addItem’, {
‘id’: ‘1234‘, // Transaction ID. Required.
‘name’: ‘Fluffy Pink Bunnies‘, // Product name. Required.
‘sku’: ‘DD23444′, // SKU/code.
‘category’: ‘Party Toys’, // Category or variation.
‘price’: ’11.99′, // Unit price.
‘quantity’: ’1′ // Quantity.
});

参照:e コマース トラッキング – ウェブ トラッキング(analytics.js)

補足:コード内の各データ項目の意味
注文毎

transaction ID(必須)

注文ID。固有の番号です。1回のトランザクションごとにトランザクションidは別の値を発行してください。
(↑テスト環境でこれを固定にしていたら1セッション1回しかトランザクションがカウントされず焦りました)

※商品ごと(addItem)と同じでないといけないです。

Affiliation or store name(任意)
ショップ名。ここにユーザーIDを出力するようにしていることもあるそうです。
コンバージョン>eコマースのデフォルトでは特に見かけないですが、フィルタやディメンションとして使用できます。

total(必須)
合計金額。
※ユニバーサルアナリティクスでは必須ではありません(Grand Total)。

tax(任意)
税金。

shipping(任意)
送料。

city(任意)※ユニバーサルアナリティクスでは廃止
市区町村。コンバージョン>eコマースのデフォルトでは特に見かけないですが、フィルタやディメンションとして使用できます。

state or province(任意)※ユニバーサルアナリティクスでは廃止
都道府県。コンバージョン>eコマースのデフォルトでは特に見かけないですが、フィルタやディメンションとして使用できます。

country(任意)※ユニバーサルアナリティクスでは廃止
国。コンバージョン>eコマースのデフォルトでは特に見かけないですが、フィルタやディメンションとして使用できます。

商品毎

transaction ID(必須)
注文ID。固有の番号です。1回のトランザクションごとにトランザクションidは別の値を発行してください。
※注文ごと(addTransaction)と同じである必要があります。

SKU/code(必須)
※ユニバーサルアナリティクスでは必須ではありません。
商品コード。商品分類の中で一番小さい単位です。

product name(任意)
※ユニバーサルアナリティクスでは必須になります。
商品名。商品分類の中で真ん中の単位です。

category or variation(任意)
商品カテゴリー、ブランド名。商品分類の中で一番大きい単位です。

unit price(必須)
※ユニバーサルアナリティクスでは必須ではありません。
単価。

quantity(必須)
※ユニバーサルアナリティクスでは必須ではありません。
個数。

具体的な設定方法

まず管理画面で アナリティクス設定>ビュー設定>e コマースの設定 をオンにします。

その後先ほどの基本コードをコピペしてサイトに合わせてコードを書き換えます。トラッキングコードの中に書いてもいいし、(下のコードでいう従来のGoogleアナリティクスのような感じです。)含めなくても問題ありません。(下のコードでいうユニバーサルアナリティクスのような感じです。)

 
var id = parseInt(Math.random()*100000);
 

これはトランザクションIDにランダムの数字を付与するように設定してあるものです。デフォルトのコードではないのでよくわからない方は使用しないでください。

任意の項目は記入しなくても問題ないですが、削除してしまうのではなく”(ブランク)にしてください。

従来のGoogleアナリティクスの場合

 
<script type="text/javascript">
var id = parseInt(Math.random()*100000);
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-0000000-1']);
  _gaq.push(['_trackPageview']);
_gaq.push(['_addTrans',
    id,           // transaction ID - required
    'test shop1',  // affiliation or store name
    '1000',          // total - required
    '80',           // tax
    '500',              // shipping
    'Shinagawa',       // city
    'Tokyo',     // state or province
    'JPN'             // country
  ]);

_gaq.push(['_addItem',
    id,           // transaction ID - required
    'cookie002',           // SKU/code - required
    'チョコクッキー',        // product name
    '焼き菓子',   // category or variation
    '108',          // unit price - required
    '1'               // quantity - required
  ]);
  _gaq.push(['_trackTrans']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

 

Googleアナリティクスeコマースタグ

ユニバーサルアナリティクスの場合

 
<script>
var id = parseInt(Math.random()*100000);
ga('require', 'ecommerce', 'ecommerce.js');


ga('ecommerce:addTransaction', {
  'id': id,                     // Transaction ID. Required.
  'affiliation': 'test shop2',   // Affiliation or store name.
  'revenue': '1000',               // Grand Total.
  'shipping': '500',                  // Shipping.
  'tax': '80'                     // Tax.
});

ga('ecommerce:addItem', {
  'id': id,                     // Transaction ID. Required.
  'name': 'ショートケーキ',    // Product name. Required.
  'sku': 'cake001',                 // SKU/code.
  'category': 'ケーキ',         // Category or variation.
  'price': '200',                 // Unit price.
  'quantity': '1'                   // Quantity.
});

ga('ecommerce:send');
</script>

 

ユニバーサルアナリティクスeコマースタグ

レポート画面での見え方

コンバージョン>eコマース で見ることができます。トランザクションは今回ランダムの数字を割り振るように指定しているので適当な数字になっています。

従来のGoogleアナリティクスの場合

コンバージョン>eコマース>商品の販売状況の各プライマリ ディメンション
Googleアナリティクスeコマースレポート

コンバージョン>eコマース>トランザクション
Googleアナリティクストランザクション

ユニバーサルアナリティクスの場合

コンバージョン>eコマース>商品の販売状況の各プライマリ ディメンション
ユニバーサルアナリティクスeコマースレポート

コンバージョン>eコマース>トランザクション
ユニバーサルアナリティクストランザクション

また、セグメント、セカンダリディメンション、フィルタ、カスタムレポートなどで取得した値でカテゴライズして数値を見ることができます。

フィルタ設定

セグメント設定

注意点1:コンバージョンとトランザクションの違い(GA/UA共通)

コンバージョンとトランザクション数は一致しないことがあります。

eコマースの設定はほぼコンバージョンページと同じページ(サンクスページ等)に設定すると思うのですが、

  • コンバージョン:セッションごとに各目標ごとに1回のみ計測される
  • トランザクション:セッション関係なく何回でも計測される

という仕様だからです。ですので、サイト内で1回購入したあとで、買い忘れに気づいてもう一回購入する場合コンバージョンは1ですが、トランザクション数は2になります。

例えば様々な資料DLがコンバージョンのようなサイトの場合で、DLのサンクスページが同一の場合、目標が1つだったりすることがあります。

その場合、実際は大量の資料がDLされているのにアナリティクス上ではあまりコンバージョンしていないように見えてしまいます。

そういう場合にはイレギュラーですがeコマースの設定を使ってみるのもいいかと思います。どの資料がどれだけDLしたかを把握しやすくなります。

注意点2:Eコマースの設定はシステム仕様に従う(GA/UA共通)

先ほど解説したtransaction IDなどの各データ項目はほぼ全て、サイトごとに持っている変数を記入することが出来ます。逆に言えば、いろいろなサイトに出ているeコマースの設定の例と全く同じ設定にしてもそれが自分のサイトでも動くかどうかというとそうとは限りません。

もしECのシステムや外部のショッピングカートのシステムを使用している場合は「”お使いのシステム名” eコマース 設定方法」などと検索して、まず自分のサイトでeコマースの設定が可能かどうか確認してみてください。

そうするとヘルプページや設定方法のページが出てくるかと思うのでそれをみて、理解できるのであればそのままの通り設定していただければいいかと思います。

その他にドメインが同じなのか、異なるかによっても設定方法は変わってくるので、よくわからない場合や、さらに何かカスタマイズしたい場合は知識のある人、技術者に相談して設定してもらうほうがいいです。

とても便利な機能ですがJSや対象のサイトのシステム周りの知識のない人からすると設定が難しいので無理に設定することはおすすめできません。

仮想ページビュー

具体的にできること

イベントとほぼ同じです。

  • ページ遷移しないページでのアクションを計測
  • PDFのDLボタンのクリック数を計測
  • 外部サイトへのリンクのクリック数を計測

が行えます。

イベントの機能が備わる前からあった設定らしいので、仮想ペービューのパワーアップ版がイベントみたいなものです。ですので仮想ページビューでできることはイベントでもできます。

仮想ページビューとイベントの違い

設定方法
仮想ページビュー

パス名またはページ名を設定します。

イベント

カテゴリ、アクション、ラベルを設定します。

レポートの表示
仮想ページビュー

他のページ同様、コンテンツの1ページとして計測されるのでページビューとしてカウントされます。

イベント

行動>イベントで表示され、イベント数としてカウントされます。

使い分け

どうやらほぼ違いはないようなので使い勝手のいいように使えばいいかと思います。設定方法が違いますが、どちらもコンバージョンとしての設定は可能です。

個人的にはページ遷移しないタイプの問い合わせフォームとかの場合は、ページビューとしてカウントされても良いと思うので仮想ページビューで問題無いと思います。

逆に外部サイトへのリンクのクリック数はページビューとしてカウントしたくないのでイベントのほうがいいかと思っています。

基本コード

_gaq.push(['_trackPageview', page_path);

ga('send', 'pageview', 'page path']);

補足:データ項目の意味

page_path/page path(必須)
レポートで表示させたいパスを指定します。

具体的な設定方法

例えば外部サイトへのリンクに仮想ページビューを設定する方法です。

従来のGoogleアナリティクスの場合

 
<a onmousedown="_gaq.push(['_trackPageview', '/google_analytics/pv']);" href="http://example.com/">Googleアナリティクス</a>
 

ユニバーサルアナリティクスの場合

 
<a onmousedown="ga('send', 'pageview',  '/universal_analytics/pv');" href="http://example.com/">ユニバーサルアナリティクス</a>
 

仮想ページビュータグ

レポート画面での見え方

行動>サイトコンテンツ>すべてのページ で通常のページと同じように扱われます。

従来のGoogleアナリティクスの場合
Googleアナリティクス仮想ページビューレポート

ユニバーサルアナリティクスの場合
ユニバーサルアナリティクス仮想ページビューレポート

注意点

イベントと違い仮想ページビューを除いた、または仮想ページビューだけの数値はデフォルトではみれないので、それらを見たいのであればフィルタやセグメントの設定を行う必要があります。

ソーシャル インタラクション(ソーシャルプラグイン)

具体的にできること
  • facebookのいいね!、いいね!取り消し、コメント付きシェア数
  • twitterのツイートボタンクリック、ツイート数

の計測ができるようになります。(google+は何も設定しなくとも計測されています。)

基本コード

_gaq.push(['_trackSocial', socialNetwork, socialAction, socialTarget, opt_pagePath]);

ga(‘send’, ‘social’, ‘socialNetwork‘, ‘socialAction‘, ‘socialTarget‘, {‘page’: ‘optPagePath‘});

補足:各データ項目の意味

socialNetwork(必須)
Facebook、Twitterなどのメディアを指定します。

socialAction(任意)
※ユニバーサルアナリティクスは必須
いいね!、送信、ツイートなどの操作を指定します。

socialTarget(任意)
※ユニバーサルアナリティクスは必須
URLを表す文字列。targetUrlって記入してある例をよく見かけます。

optPagePath(任意)
ページのURLのパス部分です。値の最初の文字は「/」にする必要があります。

具体的な設定方法

コピペで簡単!Google AnalyticsでFacebook/Twitterのシェア数を自動集計する方法の記事に書かれているコードを使用させていただきました。

最初にfacebookやtwitterから必要なコードを作成して、それを指定の場所に設置してください。
Like Button
Twitterボタン

その後下記コードを指定の場所に設置してください。

従来のGoogleアナリティクスの場合

下記コードをの前に設置してください。トラッキングコード内に含めなくて大丈夫です。

 
<script type="text/javascript">
function extractParamFromUri(uri,paramName){if(!uri){return}var uri=uri.split('#')[0];var parts=uri.split('?');if(parts.length==1){return}var query=decodeURI(parts[1]);paramName+='=';var params=query.split('&');for(var i=0,param;param=params[i];++i){if(param.indexOf(paramName)===0){return unescape(param.split('=')[1])}}}twttr.events.bind('tweet',function(event){if(event){var targetUrl;if(event.target&&event.target.nodeName=='IFRAME'){targetUrl=extractParamFromUri(event.target.src,'url')}_gaq.push(['_trackSocial','twitter','tweet',targetUrl])}});
</script>

<script type="text/javascript">
window.twttr=(function(d,s,id){var t,js,fjs=d.getElementsByTagName(s)[0];if(d.getElementById(id))return;js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);return window.twttr||(t={_e:[],ready:function(f){t._e.push(f)}})}(document,"script","twitter-wjs"));
</script>

<script type="text/javascript">
FB.Event.subscribe('edge.create',function(targetUrl){_gaq.push(['_trackSocial','facebook','like',targetUrl])});FB.Event.subscribe('edge.remove',function(targetUrl){_gaq.push(['_trackSocial','facebook','unlike',targetUrl])});FB.Event.subscribe('message.send',function(targetUrl){_gaq.push(['_trackSocial','facebook','send',targetUrl])});
</script>
 

Googleアナリティクスソーシャルプラグイン

ユニバーサルアナリティクスの場合

ユニバーサルアナリティクスのトラッキングコード内で、</script>前に設置してください。

 
FB.Event.subscribe('edge.create', function(targetUrl) {ga('send', 'social', 'facebook', 'like', targetUrl);});
FB.Event.subscribe('edge.remove', function(targetUrl) {ga('send', 'social', 'facebook', 'unlike', targetUrl);});
FB.Event.subscribe('message.send', function(targetUrl) {ga('send', 'social', 'facebook', 'send', targetUrl);});
window.twttr=(function(d,s,id){var t,js,fjs=d.getElementsByTagName(s)[0];if(d.getElementById(id))return;js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);return window.twttr||(t={_e:[],ready:function(f){t._e.push(f)}})}(document,"script","twitter-wjs"));
twttr.ready(function (twttr) {twttr.events.bind('click', function (e) {ga('send', 'social', 'twitter', 'click', window.location.href); });
twttr.events.bind('tweet', function (e) {ga('send', 'social', 'twitter', 'tweet', window.location.href);});});
 

※上記サイトのコードをそのまま使用させていただいたところテストサイトではうまく計測できなかったので最初の3行の後半の

{ga(['send', 'social', 'facebook', 'like', targetUrl]);});
{ga(['send', 'social', 'facebook', 'unlike', targetUrl]);});
{ga(['send', 'social', 'facebook', 'send', targetUrl]);});

の”{ga(“で括られている”["と"]“を削除しています。

ユニバーサルアナリティクスソーシャルプラグイン

レポート画面での見え方

集客>ソーシャル>プラグインで見ることが出来ます。
ソーシャルプラグインレポート

注意点

facebookやtwitterの仕様変更などでコードがうまく使えなくなる可能性もあります。facebookはiframe版では計測できないそうです。

クロスドメイン トラッキング

具体的にできること

ショッピングカート等に外部システムを使用している場合にデフォルトの設定のままだとうまく計測できないのを、参照元などの情報をきちんと継続させて計測することができます。
※今回テストしたのは異なるドメインの場合です。

example.comhogehoge.comという2サイトを1つのプロパティとして計測する前提で例を出していきたいと思います。

基本コード

通常のトラッキングコードに追記します。

従来のGoogleアナリティクスの場合

トラッキングコードにはドメインごとに違うコードを追加します。

example.comに貼るコード
pageTracker._setDomainName(‘example.com‘);
pageTracker._setAllowLinker(true);

hogehoge.comに貼るコード
pageTracker._setDomainName(‘hogehoge.com‘);
pageTracker._setAllowLinker(true);

該当するリンクにもコードを付与する必要があり、example.comからhogehoge.comにいくリンク全てとhogehoge.comからexample.comにいくリンク全てに下記コードを追加します。

_gaq.push(['_link', this.href]); return false;

この別ドメインのリンクはJQueryで一括設定をすることができます。詳しくは知識のある人が技術者に聞いてみてください。

ユニバーサルアナリティクスの場合

example.comhogehoge.comのトラッキングコードの一部を書き換えます。

ga(‘create’, ‘UA-XXXX-Y’, ‘auto’);

となっている部分を下記のように変更します。

ga(‘create’, ‘UA-XXXX-Y’, ‘auto’, {‘allowLinker’:true});

また、下記2行を追加します。

example.comに貼るコード

ga(‘require’, ‘linker’);
ga(‘linker:autoLink’, ['hogehoge.com'] );

hogehoge.comに貼るコード

ga(‘require’, ‘linker’);
ga(‘linker:autoLink’, ['example.com'] );

複数ドメインある場合は

ga(‘linker:autoLink’, ['123.com','789.com'] );

というように”,”で増やします。

補足

ユニバーサルアナリティクスではリンクに対してコードは付与しなくてOKになりました。とても楽になります!

今までクロスドメインの設定はすべてのクロスリンク部分のコードの書き換えが必要だったためドメインをまたぐ計測の敷居が高かったかと思うのですがユニバーサルアナリティクスではこれを自動化する仕組みをGoogleが提供してくれたおかげで

ga(‘require’, ‘linker’);

このlinkerという記述をすると、linkerライブラリというものを読み込んでくれて面倒な設定をしなくてよくなっているようです。素敵ですね!!

具体的な設定方法

従来のGoogleアナリティクスの場合
  1. トラッキングコードの変更
  2. 各リンクを変更
  3. フィルタを設定

の3つを行います。

1.トラッキングコードの変更
example.comに貼るコード

 
<script type="text/javascript">
var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-00000-1']);
  _gaq.push(['_setDomainName', 'example.com']);
  _gaq.push(['_setAllowLinker', true]);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>
 

hogehoge.comに貼るコード

 
<script type="text/javascript">
var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-0000000-1']);
  _gaq.push(['_setDomainName', 'hogehoge.com']);
  _gaq.push(['_setAllowLinker', true]);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>
 

2.各リンクを変更
example.comに貼るコード
TOPに戻る

hogehoge.com側に貼るコード

 
<a href="http://example.com/form" onMouseDown="_gaq.push(['_link', this.href]); return false;">お問い合わせフォーム</a>
 

GAcross1_code

GAcross2_code

クロスリンク

3.フィルタの設定
ここはざっくりと設定のみ載せさせていただきます。この画面のように設定して下さい。

ドメイン表示フィルタ

フィルタの種類:カスタムフィルタ

フィールド A : 引用 A ホスト名 (.*)
フィールド B : 引用 B リクエストURI (.*)
出力先 : 構成 リクエストURI $A1$B1

フィールド A は必須:はい
フィールド B は必須:いいえ
出力フィールドを上書き:はい
大文字と小文字を区別:いいえ

と設定します。これでドメイン名が表示されるようになります。(フィルタはそれ以降のデータを書き換えてしまうので、もしなにか不安だったら別にビューを作成しておいてそちらにフィルタを設定するほうが安全かと思います。)

※目標URLがドメインを含んでいないままでしたらドメインを含めたものに変更してください。レポートで表示されるものを記入しないと計測できません。

ユニバーサルアナリティクスの場合
  1. トラッキングコードの変更
  2. 参照元除外設定
  3. フィルタの設定

の3つを行います

1.トラッキングコードの変更
example.comに貼るコード

 
<script type="text/javascript">
(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', 'UA-0000000-0', 'auto', {'allowLinker':true});
  ga('require', 'linker');
  ga('linker:autoLink', ['hogehoge.com'] );
  ga('send','pageview');
</script>
 

UAcross1_code

hogehoge.comに貼るコード

 
<script type="text/javascript">
(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', 'UA-0000000-0', 'auto', {'allowLinker':true});
  ga('require', 'linker');
  ga('linker:autoLink', ['example.com'] );
  ga('send','pageview');
</script>
 

ユニバーサルアナリティクスクロスドメインコード

2.参照元除外設定
最初に説明させていただいたように、参照元が変更してしまうと別セッションになってしまうのでデフォルトのままだと遷移した時に別セッションになってしまいます。

なので、参照元除外にexample.com,hogehoge.comという形で登録してあげる必要があります。設定方法は前回の記事の参照元除外をご確認ください。

最初hogehoge.comだけを登録したらいいのかと思いhogehoge.comだけ登録したらexample.com/formhogehoge.com/thanksexample.comと遷移したときにhogehoge.com/thanksにいく時に別セッションとカウントされてしまいましたので気をつけてください。

3.フィルタの設定
従来のGoogleアナリティクスと同様ですので割愛します。

レポート画面での見え方

crossrepo

注意点

きちんと情報が引き継がれているとサイトをまたぐリンクをクリックした時に、

従来のGoogleアナリティクスの場合は

 

http://example.com/test.html?__utma=000000000.000000000.0000000000.000000000.000000000.1&__utmb=111111111.1.1.111111111&__utmc=222222222&__utmx=-&__utmz=123456789.0123456789.4.8......

 

ユニバーサルアナリティクスの場合は

 

http://example.com/test.html?_ga=1.123456789.123456789.000000000

 

というような感じで数字がアドレスバーに表示されます。

この文字列が表示されるのがいやな場合はどうやらスクリプトでどうにかできるそうです(長くて汚いutm_*パラメータ付きURLをキレイにするGoogle Analytics用の少しマニアックなスクリプト)が、ユニバーサルアナリティクスでも対応してるかどうか検証しておりませんので、どうしても気になる方は近くの技術者に相談していただければいいかと思います。

慣れていないとややこしい部分があるので、この設定も不安なら知識を持っている人が技術者に頼むほうがいいかと思います。ただ、ドメインをまたぐ計測が面倒なので外部への遷移へのリンクをイベントとかで計測していた場合はユニバーサルアナリティクスにすることで設定が楽になっているので機会があれば設定してみてください。

あと、今回のタグや設定はテスト環境では有効でしたが、もしかしてサイトによってうまく設定ができない等の不具合もあるかもしれないので、設定したあとの確認は忘れずに行ってください。

補足

サブドメイン計測の場合の設定方法のみ記載しておきます。

従来のGoogleアナリティクスの場合

 
_gaq.push(['_setAccount', 'UA-0000000-1']);
 

 
_gaq.push(['_trackPageview']);
 

の間に

 
_gaq.push(['_setDomainName', 'example.com']);
 

を追加してください。

ユニバーサルアナリティクスの場合

 
ga('create', 'UA-0000000-0', 'example.com');
 

 
ga('create', 'UA-0000000-0', {'cookieDomain': 'example.com'});
 

に変更してください。

ユーザー タイミングとサンプリング

簡単にまとめさせていただきます。ユーザータイミングの設定に関しては Googleアナリティクスのトラッキングコード設定入門をご確認ください。

サンプリング

サンプリングとは?

PVやヒット数が多いサイトでは、Google アナリティクスが設けている上限値に達してしまうことがあります。
Google アナリティクスの上限としては

・By sampling the hits for your site or app, you will get reliable report results while staying within the hit limits for your account. The limit on the number of hits for a standard GA account is 10M hits/month.

とあるように、1,000万PV/月の上限が定められており、それ以上の値は自動的にサンプリング(全ての測定データのうち、適当な数だけが採取されて集計対象になる)されるようになっています。

こうしたデータを予め任意の割合でまびいて抽出できるのが、このサンプリング機能です。
またこのユニバーサルアナリティクスのサンプリング機能は、初回訪問時にそのユーザをサンプル対象とするか決めるので、サンプリングがなされても直帰率や訪問率に影響を与えることなく測定をすることができます。

具体的な設定方法

従来のGoogleアナリティクスの場合
トラッキングコードに以下のコードを追加します。

 
_gaq.push(["setSampleRate", サンプルする割合(%)]);
 

ユニバーサルアナリティクスの場合
既存のトラッキングコードのcreateの部分を以下のように修正します。

 
ga('create', 'UA-XXXX-Y', {'sampleRate': サンプルする割合(%) });
 

こうすることで、データを間引く(サンプリング)ことができます。

例えば

 
ga('create', 'UA-XXXX-Y', {'sampleRate': 50});
 

としておくと、100人のユーザのうち50人のみのデータを抽出して測定対象とすることができます。

まとめ

以前の記事と合わせて設定の利点とめんどうな点等を考えてユニバーサルアナリティクスへの移行を考えてみてください。

大きなサイトほどいろいろな設定をおこなっているはずで、移行のための準備が大変になると思うのでそういった場合はサイトのシステムに関わっている方に相談して見てください。

ちなみに、今回この記事を書くにあたって全てテストをしてみたのですが、公式等に書かれている通りに設定したはずがなぜか動かない、とか説明されてる通りの動きにならない。。みたいなことが多々あり開発室の人に助けてもらいました。

それをふまえて弊社開発室のブログでもエンジニア向けのAnalytics設定に困ったときのまとめの記事を書いてくれたので開発の人間にうまくやりたいことが伝わらなかった場合はぜひこちらのブログを見せてみてください。

参考:基礎からわかるGoogleアナリティクスのトラッキングコード設定入門

参考サイト/本

最後に、こちらの記事作成にあたり大変参考にさせて頂いた書籍や記事をご紹介します。

最後まで読んで頂き本当にありがとうございました。

【保存版】ユニバーサルアナリティクスって何が違うの?その機能や移行方法など徹底解説

もう既にいくつかのサイトで詳しくまとめられていますが、この記事ではユニバーサルアナリティクスって一体なに?何かしないといけないことがあるの??今までとの違いって何?という方向けに詳しく解説をしています。

ちょっとメモのような走り書きになっていますが、何かの際の説明書のように使って頂ければと思います。

この記事の内容

ユニバーサルアナリティクスとは
ユニバーサルアナリティクス機能紹介
・セッション設定
・オーガニック検索ソース
・参照元除外リスト
・検索キーワード除外リスト
・カスタムディメンション・カスタム指標
・User ID
ユニバーサルアナリティクスへの移行方法
・プロパティの確認
・トラッキングコードの確認方法
・トラッキングコードの入れ替え
参考サイト・書籍紹介

ユニバーサルアナリティクスとは

2012年10月31日にクローズド版がオープンし、2013年3月13日にクローズドベータ版が開始され、色んな機能が実装され2014年4月3日に正式リリースになった新しいアナリティクスのことです。

これまでのアナリティクスでは計測できなかったことが計測できたり、大変だった設定がとても簡単にできるようになったりしてパワーアップしています。

ですが、それらを利用するには移行作業を行わなければなりません。自動で移行してくれるわけではないので計測を今後も続けるサイトに関しては必ず行ったほうがいいと思います。

2年程度で従来のGoogleアナリティクスのコードでの計測が終了してしまう可能性があるそうなので、特にユニバーサルアナリティクスの機能に魅力を感じなかったとしても2年以内にアップグレードすることを強くお勧めします。

この記事では簡単に新機能の説明、移行方法、移行の注意点に関してまとめてみました。

新機能、変更された機能で目立つもの

  • セッション設定
  • オーガニック検索ソース
  • 参照元除外リスト
  • 検索キーワード除外リスト
  • カスタムディメンション・カスタム指標
  • User ID

設定する場所は アナリティクス設定>プロパティ の部分です。
※これから紹介する機能は設定しなくても激しく困るようなものではありません。

プラスアルファの設定だと思ってもらって大丈夫ですが、アナリティクスをより活用するためには使えるものもあると思うので参考にしていただければと思います。

変更点等

セッション設定

できること

セッションとキャンペーンの期限を指定できます。

これまでのアナリティクスではどうだったか

トラッキングコードに設定することで指定できました。設定してない場合のデフォルトは

セッション: 30 分後
キャンペーン: 6 か月後

でした。

_setVisitorCookieTimeout (トラッキングコードに←の文字列があれば設定されているということになります)

_setCampaignCookieTimeout
(トラッキングコードに←の文字列があれば設定されているということになります)

設定しなかった場合どうなるの?

既存と同じ状態、つまりデフォルトのままです。

セッション: 30 分後
キャンペーン: 6 か月後

どんな時に使うの?

・これまで_setVisitorCookieTimeout、_setCampaignCookieTimeoutメソッドで期間を指定していた場合にはこれまでの設定を継続するためには必要です。

・動画コンテンツ系やサイト内のコンテンツが豊富なサイトで1ページに滞在してる時間がとても長いサイトの場合にはサイトを見ている最中にセッションが途切れてしまうので設定を30分以上にしたほ行ったほうが良い場合もあります。(_setVisitorCookieTimeout)

・キャンペーンの運用期間に合わせたい場合に設定するようです。アドワーズとのデータの差とかに関係しているようです。(_setCampaignCookieTimeout)

個人的には、適当になんとなくデフォルトから変更するくらいなら何かこの点において課題がある場合に変更する必要があるときに変更するので十分かな。というイメージです。

気をつけること

セッション:1 分以上 4 時間以内
キャンペーン: 2 年以内

でしか設定できません。

設定方法

下記青枠内ので時間を指定するれば設定できます。確認を含めなければ時間の設定をするだけなのですぐに設定できます。
セッション設定2

オーガニック検索ソース

できること

アナリティクスのレポート画面で参照(referral)に分類されている検索からの流入を検索エンジンとして分類できます。

「referralに分類されている」とはざっくりいうと、 集客>チャネル でReferralに分類されている状態のことです。

「検索エンジンとして分類」とはざっくりいうと、 集客>チャネル でOrganic Searchに分類されている状態のことです。

これまでのアナリティクスではどうだったか

_addOrganic (トラッキングコードに←の文字列があれば設定されているということになります)の設定をしていなかった場合は「デフォルトの検索エンジン」のみが検索エンジンとして分類されていました。
(それ以外も検索エンジンに分類されているサイトがある気がするので随時追加されているかもしれません)

設定しなかった場合どうなるの?

デフォルトの検索エンジンのみが検索エンジンとして分類されます。それ以外はreferralに分類されます。

どんな時に使うの?

・これまで _addOrganicメソッドの設定をしていた場合
集客>チャネル>Referral でsearch.smt.docomo.ne.jpとかsearch.fenrir-inc.com といった表示が上位にたくさんある場合

は設定した方がいいかもしれません。多分だいたいそれは検索してきたセッションになります。

設定したらいいかもしれない検索エンジンの一覧がまとまっていますので設定したい方は下記サイトを参考にしていただくといいと思います。設定方法もわかりやすいです。
Google アナリティクスのオーガニック検索ソースのデフォルトのリストに検索エンジンを追加しました

個人的にはこの設定は下記気をつけることをクリアすれば設定しておいて損はないかと思います。そもそも検索からの流入の方が正しいと思われるものが大半なので。

気をつけること

この設定を行うと参照元からのセッションががくっと減って検索エンジンからの流入がぐっっと伸びる可能性があるので、アナリティクスを見ている人への共有やメモへの記入を忘れないようにしてください。

設定方法

検索エンジンを追加をクリックすると追加画面がでるので例えばsearch.smt.docomo.ne.jpを追加したい場合は

検索エンジン名:docomo
ドメイン名に次を含む:search.smt.docomo.ne.jp
クエリパラメータ:MT
パスに次を含む:(空白)

と記入して作成をクリックすれば登録されます。既に一覧にされているメディアを追加するならその通りに設定するだけなので時間がかからず設定可能です。

オーガニック検索ソース2

参照元除外リスト

できること

指定したドメインからの訪問を参照元ではなくノーリファラとして分類されるようにする

これまでのアナリティクスではどうだったか

_addIgnoredRef(トラッキングコードに←の文字列があれば設定されているということになります)の設定をしていた場合は除外されていました。
(30分以内に別サイト経由ので再訪した場合でも同一セッションになっていた)

設定しなかった場合どうなるの?

ユニバーサルアナリティクスでは参照ごとに新しいセッションが開始されるので異なるドメインを行き来するようなサイトの場合別セッションになってしまい、セッション数等が増える可能性があります。ですので外部のカートなどに遷移するサイトの場合は設定した方がいいと思います。
※参照とセッションに関しては後日別の記事で説明します。

どんな時に使うの?

・ドメインが異なっても同じセッションを維持したい場合
・クロスドメインの設定を行っている場合

気をつけること

アナリティクスを見るときによく見られている指標のセッションに影響があるのでサイトの構造に詳しく無い場合は分かる人にきちんと確認してから設定してください。

参照の除外を追加をクリックするとドメイン登録画面になるので除外したいドメインを追加して作成をクリックすれば登録されます。除外したいドメインが決まっていれば登録するだけなのですぐ登録できます。

参照元除外リスト3

検索キーワード除外リスト

できること

指定のキーワードをノーリファラーとして表示させられます。

これまでのアナリティクスではどうだったか

_addIgnoredOrganic の設定をしていた場合は除外されていた。

設定しなかった場合どうなるの?

ノーリファラにならずキーワードが表示されます。

どんな時に使うの?

・_addIgnoredOrganic を設定していた場合
・キーワードをノーリファラに含めたい場合
・訪問数やイベントなどの数値は変わらずキーワードだけ除外したい場合
・企業名やサイト名で検索した場合、ダイレクト訪問と扱い的には大きく変わらないのでそれをノーリファラにしたりする場合

気をつけること

間違ったキーワードで設定してしまった場合必要な情報を除外してしまうことになり、解析ができなくなってしまう可能性があります。

新しい検索キーワードをクリックするとキーワード登録画面が出るので除外したいキーワードを追加して作成をクリックすると登録されます。これも除外したいキーワードがきまっているなら登録するだけなのですぐ設定可能です。

検索キーワード除外リスト2

カスタムディメンション・カスタム指標

カスタムディメンションはこれまでカスタム変数と言われていた機能と同じ役割で、カスタム指標が新しい機能です。

「ディメンション」とは、集計する単位や区分のことです。(アナリティクスのレポート画面で選ぶときはだいたい背景黄緑の白文字で表示されています)。

「指標」とは、知りたい数字のこと。(アナリティクスのレポート画面で選ぶときはだいたい背景水色の青文字で表示されています)。

できること

セカンダリディメンション、カスタムレポート、セグメント等に独自の情報を設定できます。

例えば、会員/非会員、性別等何かしらサイト内で選択(入力)がある項目、またはアナリティクスに載らない外部データをセカンダリディメンション、カスタムレポート、セグメント等に設定できます。下記画像のような箇所で選択できるようになります。

カスタム変数2

これまでのアナリティクスではどうだったか

カスタム変数の設定を行っていた場合はディメンションを設定することができました。

設定しなかった場合どうなるの?

独自の分類で分けることができなくなります。

デフォルトのアナリティクスに存在しない項目でどうしても比較、抽出したい指標がある場合以外は特に設定しなくても困らないと思います。

どんな時に使うの?

・カスタム変数の設定を行っていた場合
・既存のディメンションでは抽出できない指標がある場合

気をつけること

コードの追加を行うので、ある程度知識のある人が行ってください。設定上限数が20なので、本当に必要なのか、イベント等で代用できないかどうか考えてから設定してください。

カスタム指標の作成: ガイドラインと例に書かれているチェック項目で「はい」と言えるようなら設定する意味があるのかなぁと思います。

個人を特定できるようなデータをアップするのは禁止されています。

設定方法
カスタムディメンション

1.新しいカスタムディメンションをクリックします。名前と範囲を設定します。

名前
日本語でも英数字でも大丈夫です。ただ、既存のディメンションや指標と区別できるものにしてください。

範囲
ヒット:特定のページに対して有効です。特定のページでお気に入りボタンを押した等の場合に選択します
セッション:セッション中に起きるアクションに対して有効です。
ユーザー:ユーザーに対して有効です。会員、非会員、プレミアムメンバー等。これを使用している場合が多い気がします。

アクティブのチェックボックスにチェックを入れたまま(チェックが入っているとこのディメンションが有効になります)作成をクリックすると、カスタムディメンション用のコードが発行されるのでコピーしてください。一部変更の必要があります。(アプリ等のコードも出されますので必要なコードを使用してください)

カスタムディメンション2

2.コードを書き換えます。

var dimensionValue = ‘SOME_DIMENSION_VALUE’;
ga(‘set’, ‘dimension1′, dimensionValue);

dimensionValue:名前と同じ文字に変更してください。※2箇所あるので注意
SOME_DIMENSION_VALUE:文字列固定でも値を動的に入れることも可能です。
dimension1:インデックス番号。作成ごとに1から番号をつけていけばいいかと思います。
※よくわからなかったら技術者に確認した方がいいかと思います。

3.書き換えたコードを計測対象ページにコピペします。

カスタム指標

1.新しいカスタム指標をクリックします。名前等を設定します。

名前
日本語でも英数字でも大丈夫です。ただ、既存のディメンションや指標と区別できるものにしてください。

フォーマットタイプ
整数:数字を指定できます。
通貨:ビューで設定した単位になります。
時間:レポートにはhh:mm:ssで表示されます。
最小値 最大値:設定しなくても大丈夫です。区切る必要があるときのみ使用してください。

アクティブのチェックボックスにチェックを入れたまま(チェックが入っているとこの指標が有効になります)作成をクリックすると、カスタム指標用のコードが発行されるのでコピーしてください。一部変更の必要があります。(アプリ等のコードも出されますので必要なコードを使用してください)

カスタム指標2

2.コードを書き換えます。
var metricValue = ’123′;
ga(‘set’, ‘metric1′, metricValue);

metricValue:名前と同じ文字に変更してください。※2箇所あるので注意
123(値):このコードを貼ったページヘのアクセスがあった時に与える値(任意の数字を入れてください)
metric1:インデックス番号。作成ごとに1から番号をつけていけばいいかと思います。
※よくわからなかったら技術者に確認した方がいいかと思います。

3.書き換えたコードを計測対象ページにコピペします。

カスタムディメンション、カスタム指標共にコードをサイトに埋め込まないといけないのでサイトによっては制作会社にお願いしたりしないといけなくなるので結構手間がかかります。
必要性と手間を考えてから設定してください。

Use-ID

順次アカウントにリリースされるようで、まだ実際につかってないのでなんともいえないのですが、「クロスデバイスレポートが利用可能に」の記事が詳しいと思うので詳細はそちらで確認してください。(この記事を書いてる時に1アカウントで使えるようになっているのを発見しました)

できること

朝スマホでサイトを閲覧→昼PCでサイトを閲覧→夜スマホでサイトを閲覧。これを(朝昼晩ログインした状態でサイトを見ていることが前提になりますが、)1人のユーザーの一連の行動として見ることができるようになります。

これにより、デバイスをまたいだコンバージョンまでの流れが分かったりするみたいです。便利!

これまでのアナリティクスではどうだったか

異なるデバイスを結びつけることは基本できなかった

設定しなかった場合どうなるの?

・これまで通り異なるデバイスからのセッションは別ユーザーになる
・新しく加わった機能なので、設定しないと困る。ということはない

どんな時に使うの?

・複数のデバイスからの流入があるサイト
・ログイン機能のあるサイト

気をつけること

ログイン機能のあるサイトでないと使えない

設定したことないのでまだわからないですが、コードを埋め込むだけではなくIDの設定方法とかもヘルプにあるので他の項目よりも設定に時間がかかると思ってください。

まだ情報が少ないのでこれからもっと情報がでてきれから設定しても遅くはないと思います。おもしろそうですね!

あと変更点として個人的にはrefferalの処理方法の変更に関して少し触れておきたいのですが、長くなってしまいそうなので別途記事にまとめさせていだきます。

そして、ざっくり説明した割に長くなってしまいましたが、ここからはユニバーサルアナリティクスの移行と注意点に関してまとめます。

3.ユニバーサルアナリティクスへの移行の流れ

※タグマネージャ使用の場合は別途記事にまとめます。

基本的な流れとしては

1. プロパティの移行
2. トラッキングコードの更新

この2つで完了です。あっさりです。

Universal Analytics アップグレード センター – アップグレード ガイド
ユニバーサル アナリティクスを導入する(概要)

ですが、運営サイトの設定状況を確認せずに安易に移行してしまうと、これまで計測できていたものが計測できなくなってしまう恐れがあります。

  • 前任の担当者から引き継いだものの設定とかあまりよくわからない
  • いろいろ設定しすぎて状況がわからない

という方はまず先にサイトの状況を確認してみましょう。

1. プロパティの確認

移行は開始されていません
移行前2

何も書かれていない
強制移行 プロパティ2
(プロパティには何も書かれていないがトラッキング情報に色々と出ている場合)

移行が完了しました
移行完了2

のどれかが書かれていると思います。プロパティ移行を行わないといけないのは「移行は開始されていません」と書かれている場合です。

それ以外の方は「2.トラッキングコードの確認方法」に進んでください。何も書かれていなく、トラッキング情報も何も出てこなかった場合も同様です。

プロパティ移行の方法

①移行は開始されていません、と書かれているところをクリック
②移行をクリック

移行前プロパティ 説明2

これでプロパティの移行は完了です!下記画像のように処理中になります。

移行処理中3

このあと2日程度で「移行が完了しました」と表示されます。それまではトラッキングコードの確認と最初に紹介した アナリティクス設定>プロパティ の設定を行ってしまいましょう。

この時点では3には進まないでください。コード書き換えるとデータが取れなくなってしまう可能性があります。

2.トラッキングコードの確認方法

今回はトラッキングコードが変更になっているのでそれに伴って設定してあるメソッドも変更する必要があります。設定されていそうなメソッドの有無を確認しましょう。

以下のいずれかに一致した場合は安易に3に進まず、注意点を読んでみてください。計測できなくなってしまう指標がでてきます。

確認方法は管理画面から確認する方法(上段)とソースから確認する方法(下段)があります。
※レポートの期間を計測出来てる全期間の表示にしてからご確認ください。

イベント
行動>イベント>サマリー で何か数字があった場合
・イベントの設定してあるページで _trackEvent と検索
※イベントは外部サイトへのリンクや資料DLや問い合わせボタンがあるページに設定されてることが多いです

e コマース
コンバージョン>eコマース>サマリー で何か数字があったら
・サンクスページで ecommerce と検索
※購入完了のページが多いです

カスタム変数
集客>チャネル>セカンダリディメンション>カスタム変数にカスタム変数以外の文言になっている場合
・分類したい項目のあるページで _setCustomVar と検索

仮想ページビュー
・トラッキングコードの入っているページで _trackPagevie と検索

ソーシャル インタラクション(ソーシャルプラグイン)
集客>ソーシャル>プラグイン で何か数字があった場合
・トラッキングコードの入っているページで _trackSocial と検索

ユーザー タイミング
行動>サイトの速度>カスタム速度
・トラッキングコードの入っているページで _trackTiming と検索

クロスドメイン トラッキング
アナリティクス設定>アカウント>すべてのフィルタ ドメイン表示するフィルタの設定がある場合
※参考:クロスドメイン トラッキングを設定する – アナリティクス ヘルプ
・別ドメインにつながるページで _setDomainName と検索
・トラッキングコードの入っているページで _setSampleRate と検索
※かなり昔に数字がでるようなら現在は使用されていない設定の可能性もあります。

注意点

2のいずれかに当てはまった場合、それらの設定をユニバーサルアナリティクス仕様に変更しないままにするとその指標が計測できなくなってしまいます。

変更方法に関しては公式の基本的なスニペットの置き換え等をみてわかるようでしたらそのまま3に進んで問題ありません。

もしよくわからないようでしたら、一旦移行作業はストップして、技術者や制作会社に確認してみてください。このブログでもどう変更するかをまとめる予定でおりますので良かったら参考にしてみてください。

ちなみに、実際いくつかテストしたところトラッキングコードは入れ替えたら浸透待ち、みたいな状況はなくパッと入れ替わりました。(サイトの規模により違いとかあるかもしれないですが。)

イベント等のメソッドもトラッキングコードが変更されればそれに合わせてすぐ切り替わります。ですので上記の設定が行われていたとしても使っていない指標だったりする場合は3に進んでいただいてもいいと思います。

サイト関係者と相談して進めてください。

3.トラッキングコードの入れ替え

トラッキングコードの入れ替え手順はおそらく色々あると思うのですが、実際テストしてみてこんな感じがいいかな、と思った方法を挙げさせていただきます。
※入れ替えに関してはサイトごとに異なると思うので一例として参考にしていただければと思います

基本型
  1. アナリティクス設定>プロパティ>トラッキング情報>トラッキングコードをクリック
  2. コードをコピー
  3. 既存のコードと入れ替える

すべてのコードが入れ替わったらユニバーサルアナリティクスへの移行は完了です。イベントの設定などを行っている場合はこの後または3の前に修正してください。

プラス点

一気に設定移行完了できるので楽

マイナス点

コードやメソッドの変更に失敗した場合や、時間がかかると計測できてない時間ができてしまう

どういうサイト向き?

サイト開設して間もないとか、メソッドの設定をあまりしていない場合や1日くらいデータが不安定にとれていても大きく問題ない。ある特定の時間のアクセスがほぼ無い。
という場合はこれが一番早くて楽だと思います。

混在型
  1. アナリティクス設定>プロパティ>トラッキング情報>トラッキングコードをクリック
  2. コードをコピー
  3. 特定のディレクトリ等区分けして順次既存のコードと入れ替えていく(同じページに同じプロパティIDのユニバーサルアナリティクスのコードと既存のアナリティクスのタグがはいってはいけない。)

すべてのコードが入れ替わったらユニバーサルアナリティクスへの移行は完了です。

イベントの設定などを行っている場合はコードが変更される前後でいれていくか、共通のイベントに一度入れ替え
てから変更していくのがいいかと思います。

プラス点

大きめのサイトの場合基本型では全部設定を完了させるまでに時間がかかる上にミスしたときの修正範囲も大きくなってしまうので小分けして移行していける点

マイナス点

・手間がかかる
・ユニバーサルアナリティクスの計測ルールとグーグルアナリティクスの計測ルールが混在するので解析するときに比較対象の計測方法が異なってしまう可能性がある

どういうサイト向き?

大きめのサイト、複数人で管理しているような場合、ユニバーサルアナリティクスの機能で早く設定したいものがある場合

注意点

テストで同じページに同じプロパティIDのユニバーサルアナリティクスのコードと既存のアナリティクスのタグを入れてみたところページビューが2倍に計測されました。

_gaq.push(['_trackEvent', 'カテゴリ', 'アクション', 'ラベル', 値]);ga(‘send’, ‘event’, ‘カテゴリ’, ‘アクション’, ‘ラベル’, 値);

上記タグでどちらのコードでもイベントを発生させるようにしたところ、同じプロパティIDのUAとGAのタグが入ったページではイベントも2つ計測されました。

また、混在させた場合、例えばAというページにユニバーサルアナリティクスのタグ、Bというページに既存のアナリティクスのタグをいれた場合(プロパティIDは同一)、Aのページはユニバーサルアナリティクスの計測ルール、Bのページは既存のアナリティクスの計測ルールでデータがだされるので、ちぐはぐのデータになってしまう可能性があるので、長期間混在させておくことは個人的にはあまりおすすめできないように感じます。

この辺りに関してはウェブ上で別の結果がでているという話もあるみたいですが、私がテストしたときはこのような結果でした。(少し曖昧で自信がありません。誰か詳細に解説して頂けたらリンクで紹介します。)

慎重型
  1. プロパティ>新しいプロパティ作成から新規のトラッキングコードを発行
  2. 対象サイトに1で発行したタグを追加(既存のアナリティクスのタグと新規のユニバーサルアナリティクスのタグが全ページに入っている状態)
  3. 適当な期間並行して計測(データは干渉しないようです)
    ↑この期間に別途ユニバーサルアナリティクスのタグを発行してテストサイト等で各種設定がうまく動くか確認してみてもいいと思います
  4. 3の期間に計測したアナリティクスとユニバーサルアナリティクスのデータを見比べて基本形で移行するか、混在型で移行するか、それとも別の方法で行うかを決める
  5. 4で決めたスケジュールで移行

すべてのコードが入れ替わったらユニバーサルアナリティクスへの移行は完了です。

プラス点

移行したあとにどの程度影響が出るか把握してからスケジュールを組めるのでアナリティクスのデータを何かの指標に使っている場合でもどの程度のずれが出るか先にわかっているので色々進めやすいと思います。

マイナス点

自社で管理していないサイトだと数回タグをいれたり設定を変更する必要があるので時間がかかりそうです。

どういうサイト向き?

自社管理で大きめのサイト、きちんとデータを活用してるサイト
※場合によってはこのタイミングでタグマネージャに変更してしまうのもいいと思います。

上記入れ替えのパターンに関しては実際にテストをしてこういう移行がいいかなぁと考えたもので、公式から移行方法で推奨されているものというのは現在特にありません。(手順は載ってますが。)
もしかしたら今回載せたものとは違う結果になることもあるかもしれません。

移行に関しては本当にサイトによりけりでスケジュールを決めて行っていくしかないと思います。サイトの大きめな改修の予定があるならそのタイミングに合わせて変更してしまうのもいいと思います。

可能であれば技術者や制作会社の人に確認しながら変更のスケジュールと方法を決めるのがいいと思います。

上記パターン以外にも技術者に相談したらサイトに合わせて別の方法を提示してもらえる可能性もあると思います。よくわからず安易にアップデートするのだけは危険なのでやめておきましょう。

長々と書きましたが、ユニバーサルアナリティクスにすることによってこれまでコードの変更を加えないと出来なかった設定が管理画面上でできたり、これまでできなかったデバイス間の繋がりを見ることができるようになり、よりユーザーの実際の動きがわかるようにもなります。

が、知識や情報がない人では便利さを享受できなかったりするし、最初に手間もかかります。サイトの状況やリソースによって上手に活用してみてください。

最後に:参考にさせていただいたサイト・書籍

そこまで多くの情報が存在するわけではない中で非常に参考にさせて頂きましたのでご紹介させて頂きます。(外部サイト)

1. ユニバーサルアナリティクスがベータ版から正式リリースとなりました
2. ユニバーサル アナリティクスが正式リリースされました※Google公式
3. 【緊急解説】ひと目でわかる!ユニバーサル アナリティクスへのケース別アップグレード方法(第92回)
4. Universal Analytics アップグレード センター※Google公式
5. ユニバーサル アナリティクスにおけるイベントトラッキングの計測方法
6. Google Analyticsパーフェクトガイド 増補改訂版 Ver.5/ユニバーサルアナリティクス対応

また後日、より細かい設定方法などにも触れようと思いますのでその際にはまた告知させて頂きます。何かお役に立てれば幸いです。

ヴォラーレ株式会社 三好

WordPressって何?という人が読んでも5分で何となく分かる記事

今回はこのブログでもお世話になっているWordPressについて解説します。WordPressって何?という人向けの記事です。

WordPressとは?

WordPressはCMS(Contents Management System)というものの1種です。直訳で「コンテンツ管理システム」です。

通常、Webサイトを作成・公開するためにはHTMLやCSSの知識が必須ですが、WordPressに代表されるCMSを利用すればそのような専門知識などをもっていなくとも文章や画像といったコンテンツさえ準備する事が出来ればWebサイトを作成・公開する事が出来ます。Webの専門知識がない人でもブログなどでWebに記事を公開できるのは、そういう仕組みがあるからですね。

しかし一口にCMSといってもめちゃめちゃ幅広いものです( Google検索「CMS 種類」 )。

そのたくさんあるCMSの中でも特に多くのシェアをもっているのがWordPressなんです。

WordPressが使われる理由

WordPressには他のCMSと比較して以下のような特徴を持っています。

情報が豊富

ユーザが多いので情報が豊富です。WordPressに関する書籍は数え切れないくらい出ていますし、何か困った事が起きてもGoogle検索で大体の事が解決できます。

Webサイトの基本的な構造が作りやすい

トップページが有り、カテゴリページが有り、タグページが有り・・と言った基本的なWebサイトの構造をHTMLをいっさい触らずに作る事ができます。

プラグインが豊富

プラグインというのはWordPressに追加機能を簡単に付与させる事ができる仕組みです。サイトの表示を高速化するものや、サイトのバックアップを助けてくれるものなどたくさんのプラグインが有ります。「こんな機能があったらいいのにな・・・」と思う機能はだいたいプラグインを探せば有ります。

テーマが豊富

テーマはWebサイトの着せ替え機能みたいなものです。記事や画像、カテゴリやタグなどの情報はそのままに、サイトの見た目部分を変更する事が出来ます。

WordPressはテーマを作成して公開、利用する仕組みがよく整えられていて、世界中のデザイナー、デベロッパーが作成した様々なテーマが無料で公開されています(有料のものもあります)。ユーザはそれらを自由に利用する事ができ、自分でテーマを作成して使用する事もできます。

つまるところ、WordPressが多くのシェアを獲得している理由としては、

  • 数あるCMSの中でもすごくポピュラーで情報がたくさんある事
  • HTML、CSSなどの詳しい知識が無くても大丈夫なお手軽さ
  • プラグインやテーマなどが自由に使える拡張性の高さ

というところかなと思います。

WordPressの仕組み

さてここからは、WordPressというCMSが、どのような(技術的な)仕組みで動いているのか?管理画面から投稿した記事や画像が、どのようにWebサイトとして反映されているのか?ということにも触れていきたいと思います。

WordPressのサイトにアクセスしてサイトが表示されるまでの流れ

WordPressでは、ユーザが投稿した記事やそれに対するコメントなどが直接HTMLのファイルを生成する訳ではありません。

WordPressは「PHP」というプログラミング言語で構築されており、コンテンツの管理には「MySQL」というデータベースを利用して、CMSとしての機能を実現しています。

WordPressで作成されたWebサイトにアクセスした時、ブラウザあるいはブラウザの向こう側で一体どういう事が起きているのでしょうか。サイトが表示されるまでのざっくりとした流れは次の通りです。

1. ブラウザはサイトに見たいページの情報を送ります。
2. サーバサイトにアクセスがあるとPHPが動作し、MySQLから記事やコメントなどのデータを取り出してHTMLを生成、送信します。
3. 送信されてきたHTMLを、ブラウザがうまく変換して表示します。

ブラウザがサーバーにアクセスし、PHPがMySQLのデータを参照しHTMLを生成しブラウザに返すという流れ

WordPressを動かすPHPと、データを保存するデータベースが分かれており、連携して1つのページを表示させるというのがポイントです。

コンテンツの管理にデータベースを使う理由

WordPressではコンテンツの管理にデータベースを利用していると説明しました。

このような仕組みを取る事で「コンテンツ」と「Webサイトの器(≒テンプレート)」を別々に管理する事が出来るようになっています。

例えば、MySQLを操作するためのSQL文が書ければデータベース中のコンテンツを一斉に扱う事が出来ますし、HTML、PHP、CSSが書ければ自由なレイアウト、デザインでコンテンツを展開出来ます。

HTMLはPHP、CSSの部分とコンテンツの部分を別に管理しているから、独立してデザインの変更などが行える

また、Webサイトの見た目をテーマによって簡単に切り替える事が出来たり、プラグインによる拡張が容易に行えたりといった機能を提供できるのも、コンテンツ管理にデータベースを利用しているおかげです。

コンテンツをデータベース化し、表示をプログラムで作るという仕組みがWordPressの汎用性、拡張性の高さを支えているのです。

SEOから見るWordPress

WordPress自体にSEO効果があるという情報をよく見ますが、それは正しいと言える側面もある一方、捉え方次第では誤解を招きそうなので、SEOに関することも最後に解説しておきます。

別にWordPressを使ったからといってSEO効果があるわけではない

SEOとは「Webサイトが検索エンジンから正しい評価を受ける事が出来るように最適化する事」です。SEOを正しく行う事でWebサイトはその存在を正しく検索エンジンに理解・評価してもらう事が出来ます。そうする事でWebサイトは適切なキーワードにおける適切な順位に登場する事が出来るようになるのです。

ですので、WordPressを使ったからといってそのサイトが検索結果のより上位に表示されるかというと、そんな事はありません。それを踏まえた上で、WordPressはSEOとどういった相性にあるのか考えてみます。

SEOを行うには都合が良いという点はある

WordPressを使っただけでSEO的に何か効果があるかといえば全くそんな事は無いという話は先にしました。ただし、SEOを行う上で都合が良い点はあると言えます。

例えばプラグインを使って簡単に記事毎のmetaディスクリプションやキーワードを設定出来たり、カテゴリ、タグ構造を用いた内部リンクの調整やアイキャッチ画像の設定がやりやすかったりと、サイト訪問者がサイト内を迂回してくれるような仕組みが作りやすかったりします。

つまり、WordPressそれ自体にSEO効果は無いですが、SEOを比較的やりやすいのがWordPressだ、という認識で良いと思います。

全体まとめ

まとめると、

  • WordPressは最も使われているCMS(コンテンツ管理システム)の1つ
  • WordPressは文章やコメント、画像などのオリジナルなコンテンツと、サイトそのものの構造や見た目を切り分けて管理できる。
  • だから、コンテンツをそのままにサイトの構造やデザインを容易に調整できる。
  • 情報の豊富さ、ユーザの多さからWordPressにまつわる大体の事がググればなんとかなる。
  • WordPress使えばSEOばっちりかと言えばそんな事無い。
  • ただし構造の変えやすさ、SEOを助けるプラグインの存在などから、SEOはやりやすいと言える

という感じです。どうでしょう。WordPressがどのようなものなのか、ざっくりと伝わったでしょうか?この記事で少しでもWordPressに興味をもっていただけると嬉しいです。

ヴォラーレ株式会社 工藤

おすすめの記事

「デスクトップのアイコンが全部Wordになってしまいました何とかしてください」という深刻な問題

Windowsユーザから標題の様な何を言っているのか意味が分からない質問が時々来る。この様なシチュエーションに遭遇した場合、速やかにPCを見せてもらって一体何が起きているのかを自分の目で直接確認しよう。自分の置かれている状況が飲み込めていないPC初心者にいま何が問題なのかを言葉で説明してもらおうと思っても、それは無理な話だ。スカイプ越しでこの様な相談をされている場合は尚更である。

さて、標題の様な質問があった時、ユーザのPCが一体どんな状況であるかを説明しよう。要するにデスクトップやタスクバーに置いてある「ショートカット」のアイコンが全部Wordのアイコンに置き換わってしまったという事だ。

,. -‐””’”"¨¨¨ヽ
(.___,,,… -ァァフ|
|i i|    }! }} //|
|l、{   j} /,,ィ//|
i|:!ヾ、_ノ/ u {:}//ヘ
|リ u’ }  ,ノ _,!V,ハ |
/´fト、_{ル{,ィ’eラ , タ人
/’   ヾ|宀| {´,)⌒`/ |<ヽトiゝ
,゙  / )ヽ iLレ  u’ | | ヾlトハ〉
|/_/  ハ !ニ⊇ ’/:}  V:::::ヽ
// 二二二7′T” /u’ __ /:::::::/`ヽ
/’´r -―一ァ‐゙T´ ’”´ /::::/-‐  \
/ //   广¨´  /’   /:::::/´ ̄`ヽ ⌒ヽ
ノ ‘ /  ノ:::::`ー-、___/::::://       ヽ  }
_/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::…       イ

あ…ありのまま 今 起こった事を話すぜ!
『おれが奴のPCをのぞいてみたらデスクトップやタスクトレイに置いてある
ショートカットが全部「Word」のアイコンに置き換わっていた』
な… 何を言ってるのか わからねーと思うが
おれも何をされたのかわからなかった…
頭がどうにかなりそうだった…
催眠術だとか超スピードだとか
そんなチャチなもんじゃあ 断じてねえ
もっと恐ろしいものの片鱗を味わったぜ…

情強な皆様なら「なんでそんな事になるねん?」と思うかもしれないが、マジで起こるんだ、こういう事が。

「PC初心者は何をやらかすかわからない」という特性に立ち返って考えてみよう。大よそ初心者がトラブルに巻き込まれる時はユーザ自身が「余計な事をやらかした」時に発生する事が多い。「防波堤に居た釣り人が大波にのまれて行方不明」という事故は、大抵の場合釣り人が防波堤の入り口に設置してある「進入禁止」の看板と柵を乗り越えた時に発生する。「俺達は普通じゃないんだぜ」という慢心から普通の人とは違うアドバンスな事をしようとして痛い目を見る。この問題も正にそんな感じで発生する。

例えばAさんがスカイプでWordファイルをBさんに送信するという状況を考えて欲しい。Aさんは送信対象のWordをスカイプにドラックアンドドロップするはずだ。これはわかる。しかし時々「Wordだと思ってWordのショートカットをスカイプにドラックアンドドロップする」という事があるのだ。

さて、そのショートカットを受け取ったBさん。「こちらがWordになります」といってファイルを受け取ったはいいが、そのファイルのアイコンがなんか変な事になってる。ていうかダブルクリックしてもWordが開けない。という状況に陥る。そこで送信元のAさんに「ファイルが変だよ送り返して」とかなんとか言えばいいのに、何とかしてしまおうと思うのがIT企業に勤めている人間のサガである。PCなんて簡単に使えるし。単なる道具だし。俺達は普通じゃないんだし。

そしてファイルを開く際に「このファイルを開けません」→「インストールされたプログラムの一覧からプログラムを選択する」→「Wordを選択」→「この種類のファイルを開く時は選択したプログラムをいつも使う」と自己解決を試みてしまい、結果「.lnk(ショートカットファイル)の関連付けがWordに設定→ショートカットのアイコンが全部Wordに・・・」となってしまうわけだ。参考までに、アイコンが全てWordになってしまったデスクトップの画像を載せておく。

やらかす前のデスクトップ
↑やらかす前のデスクトップ

やらかしてしまったデスクトップ
↑やらかしてしまったデスクトップ

スタートメニューとか目も当てられない
↑スタートメニューとか目も当てられない

この問題の解決法は以下の通りだ。ぶっちゃけ他のサイトからのコピペだ。しかしここまで結構な長文を書いてしまい、そろそろ時間がもったいないと感じてきたので許してほしい。

Windows 7でショートカットをアプリケーションに関連付けた時の対処法

1. Windowsキー + Rで「ファイル名を指定して実行」画面を表示します。
2. regedit と入力し[OK]します。
3. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\Explorer\FileExts\.lnk\UserCoiceキーを削除します
4. ログオフしてログオンしなおします

※レジストリの編集は自己責任でお願いします!設定を間違えるとPCの動作に支障が出る事があります。

PC初心者は何をやらかすかわからない。しかしその様なトラブルが発生した時は我々情強が即座に対応して通常業務が出来る状態にリカバリしてやる必要がある。ここで考えてみよう。もし我々情強が「全員Macユーザ」だったとしたら??もしかしたら彼らのトラブルを一瞬で解決する事が難しいかもしれない。何故なら開発者以外のユーザは大抵Windowsユーザだからだ。

「やらかす」人間が使うパソコンは大抵Windowsである。MacやLinuxではない。やらかす人達が多くいる環境に身を置いている場合、情強はWindowsにも精通していなければならない。トラブル以外にも「PCの便利な使い方」や「オススメのアプリケーション」をアドバイスをしてあげることもある。そんな時はユーザ目線で考えてアドバイスする必要がある。だから私はWindowsを使い続けるのである。

最後に

あまりに唐突ですが今月末でヴォラーレを卒業するので記念にこんなどうでも良い記事を書かせて頂きました。もっと言えば社員向けブログに昔書いた記事をこちらにそのままコピペしました。今後また普通のSEOの記事がアップされるはずなのでそちらを引き続きお楽しみ下さい。

それではまた。

ヴォラーレ株式会社 青木

おすすめの記事

DreamWeaver CCでプロパティインスペクタが表示されない、クラッシュする問題

Adobe CCがリリースされたようで、DWだけでも最新にしておこうとインストールしてみたところ、Mac版で以下のような問題が発生。 プロパティインスペクタが空白 コード変更時の更新ボタンを押しても無反応 ファイルを閉じ [...]

スマホサイトを素早く無料で作る方法

こんにちは。
今日は便利なツールのご紹介。

スマホサイトが無料で作れるツールです。

年々、市場規模が伸びているスマホ市場ですが、
2017年には今の倍の市場規模までに広がると予想されています。

そんな伸び続ける市場を目の前にしても
スマホをまだ作っていない!!

という方も多いですよね。

・そうはいっても効果がわからんし。
・作るリソースがない。

そんな時はYahoo!プロモーション広告が提供するスマホサイトビルダー
がお勧めです。

5555


正直、僕たちランディングページ制作を一から練って、
構成やデザインまで考える人間からすると、


このようなある程度のテンプレートや型に嵌めるツールは嫌いですし
オススメ出来ないのですが、、、

スマートフォン市場の伸びが恐ろしいスピードで進んでおり
効果検証だけでもしてもらった方が良いのでは?というのが今回ご紹介した理由です。

このツールの便利な所が
すでにあるPC版のサイトの情報を元に、コンテンツ部分も自動で生成してくれるところにあります。

例えば、下記のようなPCサイトがあったとすると

232

自動でこんなスマホサイトを一発で生成してくれます。

1

ヘッド部分にはスマホサイトに必須なアクションボタンが自動生成

3

小さい文字も大きく見えやすく変換

2

申し込みフォームもこんなに入力しやすく!

※ご利用にはYahoo!プロモーション広告の利用が必要です。

このツール、もちろん微調整が必要なのですが、ブログのように
簡単にコンテンツを差し替えたり、内容を変更したりすることができます。


弊社のクライアントも、年々伸びるスマートフォンからのアクセスを
リスティング広告とスマホサイトを使ってあげている方が増えてきました。

LPO対策は広告費を増やさずに売上アップを行うことができる施策ですが、
それを学ぶスピード以上に、業界の変化は速いです。

時には正攻法に頼らずに、ツールなどの流行りものに触れてみるのもよいのではないでしょうか?

P.S

7月17日(水)にLPOコンサルティングを運営している
リスティングプラス社とランディングページ制作を得意とするギャプライズ社との共同セミナーを開催予定です。

当ブログでも来週か再来週にご案内をいたしますので、興味があれば、お見逃しなく!!

Googleタグマネージャを用いたイベントトラッキングやeコマーストラッキングの設定方法

Google タグマネージャは複数の煩雑なタグ管理を容易に行うためのツールです。使い慣れないとなかなか便利さを実感しにくいツールではありますが、慣れてしまえば色々な場面で利用できます。特に専任の技術担当がいない商用サイトにおいては、非常に有用なツールだと思います。

基本的なツールの使い方については、Googleタグマネージャ 初期設定の手順、使い方まとめで紹介しておりますので、そちらをご覧下さい。本記事では、データレイヤー変数を使用したタグマネージャのより応用的な使い方をご紹介いたします。

今回紹介するのは、次の2つの例です。

  1. タグマネージャを使用してGoogleアナリティクスのeコマーストラッキングを設定する方法
  2. カスタムHTMLタグを使い、リファラによる検索順位の取得を行う方法

特に後者のイベントタグを使用した例では、運用中のWebサイト自体には何ら手を加えず新しい機能を導入しています。

サイトの制作を制作会社に外注している場合など、通常はタグの設置を制作会社に依頼する必要があると思います。タグマネージャを利用すれば運用側でタグを自由に追加できるため、このような煩雑なやり取りも不要になります。

こうした点でも、タグマネージャの便利さを実感できるのではないでしょうか。

それでは、具体的な利用方法を見てみましょう。

タグマネージャを使用してGoogleアナリティクスのeコマーストラッキングを設定する方法

Googleアナリティクスのeコマーストラッキング機能は、受注時の受注した商品や売り上げの情報を集計して、アナリティクス上で分析することのできる機能です。

今回は、Googleタグマネージャを使用して、eコマーストラッキング機能を設定してみます。タグマネージャのタグがWebサイトの各ページに挿入されていることを前提としますので、タグマネージャの導入がまだの場合は、こちらの記事をご覧下さい。

必要な作業は次の3つです。

コンバージョンページに購入情報を含むJavaScriptを設置する

それぞれの顧客が購入した商品の情報は、ECサイトのシステム上で管理されているはずです。この購入した商品の情報をGoogleアナリティクスで集計・分析するには、購入情報をGoogleアナリティクスへデータを渡す必要があります。

タグマネージャを利用しない通常の場合、アナリティクスの_gaqオブジェクトを利用するのが一般的です。_addTrans, _addItem, _trackTrans の3つのメソッドで、受注した情報を送信します。

一方タグマネージャを使用する場合、一般的な方法では_gaqオブジェクトを使用することができません。サンクスページで決済時の購入商品情報をデータレイヤー変数として渡す必要があります。

データレイヤー変数については、末尾に簡単な解説を設けましたので興味のある方はご覧ください。ここでは設置方法のみを紹介しておきます。

以下2つのタグの設置が必要です。

1. タグマネージャタグより前に、以下のタグを挿入します。

このタグをタグマネージャタグより前に設置することで、タグマネージャからデータレイヤー変数を参照することが可能になります。

<script>
  // dataLayer(TagManagerとのデータ交換用)
  dataLayer = [];
</script>

2. 以下のような購入情報を含むタグを設置します。

<script type=”text/javascript”>
//<![EDATA[
  // 受注番号
  var transactionId = "0001";
  var cartProducts = [];
  // — 購入商品 —
  cartProducts.push({
    ”id”: transactionId, // 受注ID
    ”sku”: “product00000001″, // 商品番号
    ”name”: “サンプル商品”, // 商品名
    ”category”: “サンプルカテゴリ”, // 商品カテゴリ
    ”price”: “10000″, // 単価
    ”quantity”: “2′”// 数量
  });
  // — / 購入商品 —-
  // TagManagerへデータを転送
  dataLayer.push({
    ”transactionId”: transactionId,
    ”transactionTotal”: “20000″, // 合計
    ”transactionTax”: “0″, // 税金
    ”transactionShipping”: “0″, // 送料
    ”transactionProducts”: cartProducts, // 商品情報
    ”event”: “trackTrans” // イベント名
  });
//]]>
</script>

こちらはサンプルなので固定値を入力していますが、商品名や金額などの値を含む箇所は、購入した商品の情報に合わせて動的に出力できるようにします。

パッケージやオープンソースのECシステムを利用して構築した場合、購入した商品の情報は、完了ページで参照できるようになっているはずです。システムの構築を外部に委託している場合、この作業はシステム制作業者に依頼するとよいでしょう。

データレイヤー変数の名前は、公式ドキュメントに推奨されるデータレイヤー変数名が例示されているので、この命名規則に合わせて設定します。個々の値の意味について詳しく知りたい場合は、Google アナリティクスの公式ドキュメントを参照してください。

Google アナリティクスのeコマース設定を有効にする

アナリティクスでeコマースの設定を有効にしていなければ、eコマーストラッキング機能が使用できないので設定しておきましょう。すでにeコマース機能を利用している場合は不要なので、読み飛ばしてください。

アナリティクスにログイン後、ページ右上のアナリティクス設定に移動し、プロパティを選択します。次いでプロファイルを選択して移動、タブの中からプロファイル設定をクリックします。「eコマースの設定」という欄がありますので、ここで「はい、eコマースサイトです」を選択して「適用」をクリックします。

アナリティクス eコマースの設定

アナリティクス側の設定はこれで完了です。

Google タグマネージャ上でeコマーストラッキング用のタグを作成し、サンクスページに配信する

今度はタグマネージャ側での設定です。

ここではタグの登録と(配信)ルールの設定を行い、バージョンを作成します。このバージョンを公開することで、実際にWebサイトへタグを配信することができます。

タグマネージャでは、Google アナリティクスのトラッキングコードなど予め用意されたタグ以外、サードパーティ製のトラッキングコードや、オリジナルのタグなどもタグマネージャ上から配信できます。ただしGoogle アナリティクスのトラッキングコードに関しては、既にタグマネージャ上で用意されているため、わざわざカスタムHTMLタグを使用する必要も特にありません。

今回も、タグマネージャ上に用意されているGoogle アナリティクスのタグを使用します。

ログイン後、タグマネージャタグに一致するコンテナを選択して、コンテナのサマリーを開きます。eコマーストラッキング用のタグを作成する必要があるので、「新しいタグの作成」をクリックします。

タグ名を適当に入力し、タグの種類は「Google アナリティクス」を選択します。Google アナリティクスのウェブプロパティIDを入力します。アナリティクスのウェブプロパティID は、トラッキングタグを複数導入する場合など、何度か必要なので、定数文字列のマクロ変数として登録しておくと後々便利です。

eコマーストラッキングを行う場合、「トラッキング タイプ」は「トランザクション」を選択します。

配信のルールについてはサンクスページに挿入したタグで、’event’ : ‘trackTrans’ というイベント名を設定しましたので、ルールは「{{event}} 含む trackTrans」としておきましょう。

「trackTransイベント」ルールの追加

eコマースタグの追加

ここまで入力して、タグを保存します。次にバージョンを作成します。実際のWebサイトで公開する前に、まずはデバッグモードにして、タグが正しく配信されるかどうか見てみましょう。

eコマースタグのプレビュー

図のように、配信:イベント「trackTrans」となっていれば正しく配信されています。正しく配信されていることを確認したら、バージョンを公開しましょう。

トラッキングデータを確認する

実際に正しく測定できているかは、Google アナリティクスのレポートを確認してみましょう。受注データが集計されていれば成功です。お疲れさまでした。

なお、eコマーストラッキングによるデータの反映は、少々タイムラグがあるので気長に待ってみましょう。

カスタムHTMLタグを使い、リファラによる検索順位の取得を行う方法

次は、例として海外SEO情報ブログで紹介されているリファラを使った検索順位の取得を、Googleタグマネージャ上のタグ発行のみで設置してみたいと思います。

必要な作業は次の2つです。

カスタム HTML タグで、Googleからのランディング時のリファラ解析用のタグを配信する

参照元記事では _gaq オブジェクトを使用してタグマネージャのランディングを計測していますが、今回はタグマネージャを使用しますので、リファラ解析用タグをそのまま用いることはできません。先のeコマーストラッキングの例と同じく、データレイヤー変数を用いてイベントを発生させることになります。

Google タグマネージャにログインし、コンテナを選択します。ドラフトコンテナを選び、新しいタグの作成をクリックします。「タグの種類」は「カスタム HTML タグ」を選択します。次いで以下のコードを貼り付けましょう。

<script type=”text/javascript”>
//<![EDATA[
  var myString, r, rank, kw, keyWord, p;
  if (document.referrer.match(/google.(com|co.jp)/gi) && document.referrer.match(/cd/gi)) {
    myString = document.referrer;
    r = myString.match(/cd=(.*?)&/);
    rank = parseInt(r[1]);
    kw = myString.match(/q=(.*?)&/);
    if (kw[1].length > 0) {
      keyWord = decodeURI(kw[1]);
    } else {
      keyWord = “(not provided)”;
    }
    p = document.location.pathname;
    dataLayer.push({
      ”event” : “trackEvent”,
      ”eventCategory” : “RankTracker”,
      ”eventAction” : keyWord,
      ”eventLabel” : p,
      ”eventValue” : rank
    });
  }
//]]>
</script>

タグを配信するルールは特に気にならない限り、すべてのページで問題ありません。以上が設定できたら、タグを保存します。順位計測用のタグはこれでOKです。

イベントトラッキング用のアナリティクスタグを発行してイベントを計測する

先ほどのタグで抽出した順位の情報を、Google アナリティクスのイベントとして計測させるために必要な作業です。

新しいタグを作成し、「タグの種類」として アナリティクスを選択します。「トラッキング タイプ」は「イベント」を選択します。

先ほどのdataLayer.push内の設定値に対応するよう、マクロでデータレイヤー変数を設定していきましょう。このとき、マクロ名は自由に決めて構いませんが、データレイヤー変数はdataLayer.pushで送信した名前に合わせて入力しましょう。(逆に変更すると紛らわしくなる可能性もあるので、よくわからなければとりあえず同じ名前を使用しておくのがよいでしょう。)

新しいマクロの作成

配信ルールも dataLayer.push() で送信したオブジェクトの名前に合わせる必要があります。ここでは “event” : “trackEvent” というイベント名を設定しているので、これに合わせて {{event}} 等しい trackEvent としておくとよいでしょう。

「trackEvent」ルールの追加

最終的には、以下のようになります。

順位トラッキング集計用タグの追加

この配信ルールを有効にしたら「保存」 をクリックします。

動作確認

後は先ほどと同様に、バージョンを作成し、プレビューモードで確認してみましょう。

Googleから適当なキーワードを入力して検索結果に表示させ、流入してみたときに、カスタム HTML タグとアナリティクスタグが配信されていればうまくいっています。

Chromeの場合はリファラの関係上、このトラッキング自体が有効にならないようなので、配信されていることを確認したい場合、IEやFirefox、Operaなどを使って確認するとよいでしょう。

問題なければバージョンを公開すると、検索順位が取得できるようになります。

ここまでの流れで分かるように、今回の追加は、Webサイト内のHTMLを直接書き換えることは一切していません。それでいてWebサイト全体にタグを配信できるのですから、少しはタグマネージャが便利であると感じていただけるのではないでしょうか?

その他、Googleタグマネージャの挙動について補足

タグマネージャにはいくつか分かりづらい点がありますので、この場を借りて補足をしたいと思います。少々技術的な話になりますので、分からなければ読み飛ばしていただいて全く問題ありません。

データレイヤー変数について

通常、タグマネージャ上のタグは名前空間が分離されているため、ドキュメント内のスクリプトの変数にアクセスすることはできません。これを解消する方法として、タグマネージャ側から参照できるグローバル変数がデータレイヤー変数です。データレイヤー変数を使用することで、名前空間を無駄に汚さずデータのやり取りを可能にしてくれます。

データレイヤー変数は、タグマネージャ側ではマクロを利用して内容を参照します。マクロは事前に登録しておき、 {{(マクロ名)}} の形で、タグマネージャ内に挿入するスクリプトや変数フィールドに挿入します。

タグマネージャで配信するスクリプト内にマクロを挿入しておくと、dataLayer.pushで挿入した内容を参照できるようになります。

なおデータレイヤー変数名は標準でdataLayerという名前ですが、名前を変更することも可能です。ただし、サイト内で同名の変数を使用しているなどの場合を除き、通常変更する必要はないでしょう。

タグマネージャの “配信” とは

タグマネージャからロードされるスクリプトを見てみると分かりますが、1つのアカウントで配信されるタグはルールによらずすべて同一のタグが配信されています。

設定したルール自体がJavaScriptのコードになっており、タグマネージャの配信条件に合わせてスクリプトの実行をコントロールしていることが分かります。タグマネージャからロードされるJavaScriptを見ると、配信ルールの名前なども含まれているのが分かります。

1度タグマネージャのスクリプトをロードしてしまえば、その後はキャッシュされたスクリプトを利用でき、読み込み時間を短縮できます。

なお、タグマネージャに挿入したスクリプトは、自動的にMinifierで圧縮されるので、挿入タグの大きさ次第でWebページに直接タグを挿入するよりも転送速度の向上が期待できます。特に多くのタグを使用する場合や、タグ自体が長い場合は有効だと思います。

まとめ

今回の記事では、タグマネージャの少しだけ応用的な使い方を2つほど紹介しました。この他にも、例えばjQueryのプラグインをタグマネージャで配信し、サイトのメンテナンス情報をWebサイトに表示させるといった応用も可能です。

まだまだ日本ではタグ マネージャに関する情報が少なく、利用しがたいところもありますが、使いこなせるようになると色々な応用が効くツールですので、ぜひ積極的に使ってみることをオススメします。

ヴォラーレ株式会社 若松

おすすめの記事

よく見るHTTPステータスコード一覧とその意味を理解する

404や503、301・302など「ステータスコード」とか言われるものをよく見るけど実はその意味はよく分かっていません、という方は意外に多いんじゃないかなと思ったので、よく見るものを一覧でまとめて解説してみました。このあたりの話題にそこまで詳しくない方でなくとも理解できるように解説しているつもりです。

Webブラウザやクローラーが情報を受け取る仕組み

私たちは普段、FireFoxやChrome、SafariなどのWebブラウザを通じてURLにアクセスしてWebコンテンツを閲覧しています。この「URLにアクセスする」ときに、Webブラウザは「リクエスト」を送り、Webサーバーが「レスポンス」を返す、というやり取り(通信)が行われています。

ブラウザからリクエスト(URL)を送り、サーバーからレスポンスが返される図

リクエストを送る側は、「サーバー(提供者)」に対して「クライアント(依頼者)」と呼ばれます。Googleのような検索エンジンのクローラーもブラウザと同じくクライアントという扱いになります。

HTTPステータスコードとは?

WebブラウザやクローラーがURLにアクセスしようとするとWebサーバーからどのようなレスポンスを受け取っているのか?というのは例えばGoogleのウェブマスターツールの基本機能「Fetch as Google」などを使って知ることができます。
※図の中の赤枠以下の情報を受け取っています。

ウェブマスターツール Fetch as Google を使用してGoogleBotが受け取ったデータが表示。ステータスライン、メタ情報、ボディメッセージを受け取っている。

少し見づらいですが、通常通りアクセスできてコンテンツの情報が得られる場合にはブラウザやクローラーはこのようなデータをWebサーバーから受け取っています。

ここで少しだけ專門用語を使うと、上の図にあるようなレスポンスは「ステータスライン」「レスポンスヘッダ」「メッセージボディ」の3つから成っています。
上からステータスライン、メタ情報(データに付随する情報)、ボディメッセージ(この場合はHTMLテキスト)という具合でデータを受け取っている

レスポンスヘッダとメッセージボディについては今回本題から外れますが、折角ですので合わせて簡単に解説します。

ステータスライン

ステータスラインは一番上に記述されている「HTTP/1.1 200 OK」や「HTTP/1.1 301 Moved Permanently」等のようなもので、「レスポンスの状態」を表します。この中の「200」や「301」といった3桁の数字が今回の話題となる「ステータスコード」です。「OK」「Moved Permanently」は「説明句」というもので、その名の通りステータスコードの内容説明をするものです。

HTTP/1.1 は「通信規約とそのバージョン」 200 はステータスコード OK は説明句

クライアント(WebブラウザやGoogleBot)はWebサーバからどのステータスコードが返ってきたかによって、その中身を見なくとも次にどんな処理を行えばよいかを判断することができます。

レスポンスヘッダ

レスポンスに付与するメタ情報が記載されている部分です。ここでいうメタ情報とは、「(受け取った)データに関する補足情報」のようなものと思って下さい。例えば、URLが転送(リダイレクト)されている場合に転送先のURLの情報を「Location」として付与する、などの情報です。

メッセージボディ

いわゆる”本文”にあたるもので、Webページに問題なくアクセスできた場合にはHTML情報がここに記載されます。私達が普段見ているWebページはこのHTMLテキストをブラウザが解釈して表示したものです。

さて、本題のHTTPステータスコードについて話を戻します。

HTTPステータスコード

ステータスコードは本来ブラウザやクローラーが処理するために付与されているものなので、普段私達がブラウザ上でWebページを見ている際に見ることはありませんが、時々エラーでこんなのをお目にかかることはありますね。

404 Not Found

503 Service Unavailable

また、Google Chromeに標準搭載されているDeveloper Toolsや、Firefoxのアドオン(Live HTTP headersやFirebug等)を使えばレスポンスに含まれているHTTPステータスコードを確認することができます。今回はその使い方は割愛させていただきますが興味の有る方はお試しください。

それでは次節からは本題であるステータスコードについてお話をさせていただきます。

ステータスコードの大まかな分類と意味

さて、ステータスコードは大まかに分けて5つに分けられます。

  • 100番台 : 処理中
  • 200番台 : 成功
  • 300番台 : リダイレクト
  • 400番台 : クライアントエラー
  • 500番台 : サーバエラー

このようにそれぞれの番台によって異なる意味を持っています。個別のステータスコードの前に、まずここでは各番台について簡単にその意味を説明しておきます。

100番台

100番台はクライアントからのリクエストを処理中であることを示すステータスです。

Webサーバ側からクライアント側に対して「もうちょっと詳しくやってほしいことを教えてくれ」とか「今、頼まれたことをやってるんだけども時間かかるわ」という内容のレスポンスを返します。これらのステータスコードが使われている場面はあまり見かけません。

200番台

200番台はクライアントからのリクエストが受付に成功したというステータスです。私達がWebページを見ているとき、多くが200番のステータスです。

300番台

300番台は「リダイレクト」と書きましたが、厳密には「リクエストを達成するためには、ブラウザ側で追加の処理を実行する必要がある」というステータスです。

その追加の処理が301では例えば「別URLへの移動」になります。301番、302番のコードについては「301リダイレクト」「302リダイレクト」などサイトURL変更の際の転送処理として聞いたことのある方が多いのではないでしょうか。

400番台・500番台

400番台、500番台のコードはエラーコードであり、正常にリクエストされたものが返せない状態のときに使用されます。そのうち400番台はクライアント側に原因があるエラー、500番台はWebサーバ側が原因のエラーです。

それぞれのステータスコードについて

ここまででざっくりとした分類をお話ししたので、本節ではそれぞれのステータスコードについてお話します。今回は普段の業務を行う中で比較的頻繁に目にすることの多いメジャーなものに絞りたいと思います。

200 OK

リクエストは問題なく受理され、要求に従ったレスポンスが返されます。私達がWebページを正常に閲覧している際、大抵このステータスとともに返ってきたレスポンスの内容を見ています。

200はそのまま「OK、問題ありません」の意味

301 Moved Permanently

リクエストで要求された情報の中身が別の場所に移動したことを示します。

この移動は一時的なものではなく、恒久的なものです。サイトの引越しを行ったりしてアクセスするURLが変更され、ずっとそのURLを使用していく場合にこのステータスコードを返すようにしておく必要があります。

301は恒久的な転送、つまり「引っ越したよ」の意味。

googleからの評価を新しいURLに引き継がせるためにも301を設定しておきましょう。また、あるページへのアクセス経路を一本にまとめる、いわゆるサイトの正規化を行う場合にもこの301リダイレクトを使用します。

302 Found (※Moved Temporarily)

こちらもリクエストで要求された情報の中身が別の場所に移動したことを示します。301と異なるのは、その移動が一時的なものであるという点です。

302は「今ここにいないよ、そのうち戻ってくるよ」の意味

たとえばメンテナンス等で一時的にサイトを別の場所に移さなければならないが、また元の場所に戻す場合はこの302番のステータスを返すように設定しておきましょう。GoogleBotもそれが一時的な移動であることを読み取ってサイトの評価を移動先のURLに移すことはしません。

※302は昔の規格(HTTP/1.0)では説明句が「Moved Temporarily」でしたが現行の規格(HTTP/1.1)になって「Found」に変更されました。一時的な転送、という以外でも利用されることが多かったためのようで、現在別の307という比較的マイナーなステータスコードで「Temporary Redirect」が割り振られていますが、実際の使用例は見たことはありません。

304 Not Modified

これはリダイレクトではありませんが、補足的に説明をしておきます。

304は「未更新」を表します。私達が正常にWebページを見れているとき、多くは200ステータスが返ってきているのですが、実際には304ステータスのコンテンツが混じっていることもあります。このときWebサーバからはメッセージボディ、つまりコンテンツが返ってきません。ブラウザ側では304を受け取ると、ブラウザ内のキャッシュに残っているコンテンツを使ってWebページを表示しています。

ステータスコード304は「前に渡したのと同じだよ」という意味

403 Forbidden

サーバ側で外から見えないように設定してある領域へのアクセスをリクエストしたときに返ってくるステータスコードです。簡単に言えば立ち入り禁止です。

403は立入禁止の意味。

見せたいページでこのエラーが出ているときはアクセス制御の設定が間違っている可能性がありますので設定ができる方は確認してみましょう。

404 Not Found

リクエストしたページが見つからない場合に返されるステータスコードです。

404はそのまま「探したけど見つかりませんでした」の意味

ウェブマスターツールではGoogleBotが検出した404エラーをレポートしてくれていますが、特に404エラーが多いからといってgoogleからのサイトの評価が下がることはないと言われています。サイト内からリンクされているページが404エラーになっている(=リンク切れ)のは問題ですが、そうでない限りは放置しても良いかと思います。

他サイトから多くのリンクを受けているようなページを404エラーとしてしまうと、折角サイトが得られた被リンクの恩恵を逃してしまうことになります。何かしら代替のコンテンツを用意してそのページを残しておくか、近い内容を持つページに301リダイレクトするなどでリンク資産をサイト内に残せる処理をするのが一般的です。

410 Gone

404と同じくリクエストしたページが見つからない場合に返されるステータスコードです。404と違う点は、そのリクエスト先のページが「消滅した」という意味合いがあることです。

410は「前あったけどもう無いんだよね」の意味。

こちらの記事によると最近はGoogleBotは404と410を微妙に区別しているとのことですが、記事でも書いてあるようにそこまで神経質になる必要はほとんどないと思います。

補足:ソフト404エラー

ブラウザ上ではそのページが存在しない旨のメッセージが表示されているにも関わらず、ステータスコードとしては404や410を返していない(つまり正常なレスポンスとして「200 OK」が返されている)パターンが存在します。これを「ソフト404エラー」などと呼びます。

ソフト404はサーバーは「OK」と返しているのにユーザーには「無い」に見えている状態

どういうときに発生するかというと、例えばサイト運営側で独自にエラーメッセージ表示用のコンテンツを作成して、想定していないURLに対してリダイレクトをかけてそのコンテンツに飛ばすというケースが考えられるでしょうか。

Webページを見ているユーザに対してページがないことが伝わっても、機械的にHTTPステータスコードを読み取るbotに対しては伝わりません。このようなソフト404ページが存在するとGoogleBotがクロールのリソースを無駄に消費することになりますので、存在しないページにアクセスしたときはステータスコードとして404もしくは410が返されるように正しく設定するべきです。

500 Internal Server Error

サーバ側の何らかのミスによってリクエストに応えられない場合です。例えばシステム開発中にバグを混入させてしまうとこのエラーを起こすことがあります。

500は「サーバー内部の調子が悪い」のエラーの意味

503 Service Unavailable

Webサーバの過負荷状態で一時的にWebページが表示できないときなどに発生します。例えばTwitterがクジラを表示させている状態、とでも言えばイメージが沸きやすいでしょうか。

twitterが混雑してるとくじらが出ます。

メンテナンスでサービスをストップさせている際に意図的に503を返すように設定することもありますが、基本的にはサーバー負荷の問題ですので頻発するようであれば、サーバーの変更を検討するか、サイト側での負荷軽減などの手を打つ必要があります。

503は「今忙しいから後にして」の意味。

まとめ

ここまでHTTPステータスコードについてのお話をさせていただきましたがいかがでしたでしょうか。表には出てこない部分ではありますが、こうした部分まで意識してみることができれば、今よりもクローラにとって優しいサイトが作れるかもしれません。

特に一般の方(技術に関わりのない方)にとってはこうした話というのはあまり重要視されにくい話題と思いますが、SEOの観点では、サイトが検索エンジンに正常にクロールされ、正しく検索インデックスに登録してもらえるための基本的な作法として、サイトを制作・管理する方には皆さまに理解していただけると嬉しいです。

文責:ヴォラーレ株式会社 西村

おすすめの記事

Googleタグマネージャ 初期設定の手順、使い方まとめ

Googleタグマネージャは、2012年10月1日(日本だと10月2日)にgoogleから公開された新ツールです。10月26日には日本語インターフェースがリリースされました。(タグマネージャー、と書きたくなりますが公式に合わせて「タグマネージャ」と書いておきます。)

タグマネージャに関してはGoogleアナリティクスなどとは違い、まだまだそこまで世の中に情報が出回っているという状況ではないため、個別に細かな設定をしようかなと思った時には結構試行錯誤しながらやっていく、ということも出てくると思います。今後もう少し実用的な使い方についても解説したいと思いますが、今回はひとまず基本的な使い方、特に初期導入時の設定方法や手順をまとめておきました。

Googleタグマネージャとは何か?

名前の通り、タグの管理(タグマネジメント)が出来るツールです。
※参考: タグマネジメント、きちんと理解できてる? 【タグマネジメント概論第1回目】

具体的には、googleアナリティクスやAdWordsなどでwebサイトに埋め込まないといけないタグやFacebookやtwitterなどJavascriptを使用するタグなど、今まで個別にサイトに埋め込んでいたような様々なタグを一括で管理することができます。

例えば、今までGoogleアナリティクスのタグを変更したい場合(eコマース設定等でトラッキングコードを書き換えなければならない場合等)はウェブサイトの管理者にお願いして、全ページまたは指定箇所のタグ入れ替えを行わないといけませんでした。タグマネージャを利用することで、こうした変更が今までよりも簡単に行えるようになる、といったメリットがあります。

analytics

SEOやアクセス解析、リスティング広告などのマーケティングに関わっている方が、必ずしも自社のサイトを管理・更新しているわけではなく(というか管理していないことの方が圧倒的に多いと思いますが)、多くの場合は別の担当者か外部の管理会社にまかせていると思います。

その場合、いちいち何かを変更する際にも、担当者間での依頼のやりとりが発生しますし、解析をより高い精度で、よりスピーディに行おうとすればなるほどそのコストもかさんでしまいます。

tag_manager

タグマネージャを使用することによって、何か変更が起きた時でもサイトに直接変更を加えるのではなく、タグマネージャの管理画面の情報を変更することでサイトに直接トラッキングコードを埋め込み直した状態と等しくなりますので、アクセス解析やマーケティングに関わる方が直接そうした変更を行えるようになります。

とても便利!なのですが、例えば、既にアナリティクスのコードが直接サイトに埋め込まれている場合は、一度既存のトラッキングコードを削除してからタグマネージャのコードを埋め込まなければなりません。

ちょっと手間な上に一時的に解析ができなくなります。また、サイト毎に設けている細かな指標の測定など、オリジナルな測定をしたい場合にはJavascriptなどの知識が必要になったり、導入に際してのコストが膨らんでしまうこともあります。

ですので、何でもかんでもタグマネージャを使用する価値があるかないかといわれると、大きなメリットがある場合もあれば、メリットがそんなにない場合もあるんじゃないでしょうか?と思います。

導入メリットが少なさそう

以下のような場合では今時点では敢えて導入する必要もないんじゃないかと思います。

タグの種類が少なく、変更頻度も少ない場合

1種類のタグ以外は使用していないし定期的に変更する必要もない、そして今後も当分使用する必要がない場合などには、そもそも大した管理コストは割いていないはずですのでわざわざタグマネージャのタグを埋め込み直したりする方が手間だと思います。

既に多くのタグが埋め込まれ、更に細かなオリジナルの設定を加えている場合

タグマネージャは他のgoogleプロダクトに比べ新しいので、そこまで情報が多くありませんし、まさに改良が加えられている最中のものなので今世の中に出ている情報以外のことを行おうとする時に必ずしも誰でも設定が行えるわけではありません(今後はもっと使いやすくなるとは思いますが)。

ですのでエンジニア(というかJavascriptが不自由なく使える人)のいない環境で、カスタマイズされた設定を必ずしもタグマネージャを使用して実現できるわけではないかもしれません。

・・・とは言え思いつくのはこの位でしょうか。。

導入したほうがいい場合

以下のようなケースでは導入する価値は十分にあるように思います。

様々なタグが埋め込まれていて何がなんだかわからなくなってしまっている場合

タグマネージャを使用すれば、全てのタグを一つの管理画面上で一元管理出来ますので、ごちゃごちゃしていて状況がサッパリ、という状態は改善できると思います。

今後ウェブサイトの解析をしっかりと行なって行きたいと考えている場合

それなりに細かな解析を行っていく場合、必要に応じて様々なタグを追加で埋め込む必要が出てくることがありますので、予めタグマネージャでの管理を行なっておけばより効率的にタグを運用していくことが出来ると思います。

サイト内のタグ変更などを行う場合に、外部の管理会社とやり取りをして変更しなくてはならない場合

タグマネージャを使用すれば、都度発生したタグ変更などの作業もいちいち管理会社に依頼しなくても変更が行えるようになります。
(ただし先ほど述べた通り、それなりに細かな設定を行う場合はJavascript等の知識が必要になることもあります)

ページ毎に異なるタグを埋め込む必要があるタグを使用している場合や、そのタグが発動するページを指定する場合

「カテゴリページにはこのタグを埋め込むけど、TOPページには埋め込まない」などといった条件があるようなタグ、またそういったタグが多岐にわたってサイト内にバラバラと埋め込まれている場合には管理がかなりややこしくなってしまうと思うのですが、タグマネージャで管理することで、それぞれのタグが発動するページや条件を指定することができるので管理、整理がしやすくなります。

新しいもの好きな方(おまけ)

まだそんなに世の中に情報が多くないので、自分で調べて設定してテストして、を繰り返すことになると思います。そういう作業が好きな方にはとても楽しいツールだと思うのでお勧めです。実利が伴うのであれば使い倒して見るのもよいのではないでしょうか。

つまり、長期的なタグの管理とか更新の手間や時間を考えれば、多くのケースでは入れておいた方が後々いいんじゃないでしょうか?と思います。

タグマネージャでGoogleアナリティクスを計測できるよう設定する

さて、ここからは、実際にタグマネージャを使ってGoogleアナリティクスの計測を行えるように設定してみます。(機会があれば、別途AdWordsの設定方法、アナリティクスeコマース設定、facebook等のアイコンの設定等もご紹介させて頂きます。)

※5/28追記※
ちょっとした応用で、Googleタグマネージャーを用いてアナリティクスのeコマースやイベントトラッキングを設定する方法の記事を書きました

今回は、最もよくあるタグの設置です。Googleアナリティクス側の設定の話は省きます。

1.ログインします

Google タグマネージャ公式サイトにて右上のログインボタンをクリック

e383ade382b0e382a4e383b3e794bbe99da2

2.アカウントを作成します

Googleアナリティクス等でも最初にアカウント登録を行いますがそれと同じような感じで企業毎に1アカウント作成します。
※名前は 該当アカウント > 設定 から後で変更可能です。
アカウント名

3.コンテナを作成します

Googleアナリティクスでいう”プロパティ”みたいな感じでウェブサイトごとに1つのコンテナを作成します。タイムゾーンを選択してドメインを記入します。
※名前は 該当アカウント > 該当コンテナ > ユーザーと設定 > 設定 から後で変更可能です。
コンテナ名

4.利用規約に同意します

敢えて書くまでのことでもないですが同意しないと次に進めません。

利用規約

5.コードを取得します

これが色々なタグの変わりにサイト内に埋め込むタグマネージャのタグになります。
(固有のIDが割り振られているため一部画像を加工してあります。)

コード

6.コンテナにタグを追加します

今回はGoogleアナリティクスなのでアナリティクスを選択。タグの追加は後で行っても問題ありません。
タグ追加

7.タグ名を記入します

今回はタグの種類をGoogleアナリティクスにしたのでウェブプロパティIDを記入する枠が出てきます。ここにウェブプロパティIDを記入しましょう。
※アナリティクスの該当アカウント > 該当プロパティ > トラッキング情報 に表示されているUA-から始まるIDです。

GA新規タグ追加

ちなみにアナリティクス以外にも下図のタグを登録出来るようになっています。登録できるタグの種類はリリース直後よりも増えています。機会があればまた別で紹介しますが、ここに書かれていない種類のタグに関しては全て「カスタムHTMLタグ」で設定します。

タグの種類選択

さて、カタカナが多くてそろそろ混乱しそうです。

ここで一回配信の流れに関して説明しますと、先ほど「タグマネージャの管理画面の情報を変更するだけでサイトに直接トラッキングコードを埋め込み直した状態と等しくなります。」と説明させて頂きましたがそこに関してもう少し具体的にみてみます。

タグマネージャルール配信の流れ

今、[7.タグ名を記入します]まで設定しましたが、これはタグマネージャの中にあるコンテナの1つに1つのタグを追加した。という状態です。

この後各ページにコンテナ([5.コードを取得します]で発行したコード)を埋め込みますが、埋め込んだだけでは何も変わりません。なぜかというとそのコンテナが空っぽだからです。コンテナ単体では何かを計測することはできません。

ではどうやって計測出来るようにするかというと、次の[8.ルールを設定します]で設定するルールによってコンテナの中にタグを入れてあげるイメージです。ルールはページ単位ではなくタグ単位で設定します。

上の図でいうとGoogleアナリティクスのタグは「1、2、4ページ目のコンテナに入れてあげてね」というルールが設定されています。

逆に「全ページのコンテナに入れてね、でも3ページ目にはいれないでね」というルール設定をすることもできます。

その他にも「3ページ目のyahooプロモーション広告のタグは2ページ目にアクセスしたことのある場合のみコンテナにタグをいれてね」といった設定も可能です。

最初にタグマネージャはタグを管理するツールとお伝えしましたが、もう少し具体的にいうと、ルールによってタグを管理・制御しているツール。という感じでしょうか。

8.ルールを設定します

「タグを配信するルールを追加」をクリックすると下図の様な画面に遷移します。
ここでは最も普通なアナリティクスのタグの追加を行うので、「既存のルールから選択」でデフォルトで登録されている、「すべてのページ」をチェックし、「保存」をクリックします。

ルールの追加

9.登録情報を確認します

トラッキングタイプは最も一般的なアナリティクスのタグの設置なのでページビューのままで問題ないです。

プルダウンをクリックすればその他の種類がでてきます。イベントの設定に関しては今度記事にします。

タグ名、タグの種類、トラッキングタイプ、配信のルールの4項目が記入されていることを確認したら「保存」ボタンをクリックしてください。

ルール追加元

10.コンテナの中身を確認します

設定したコンテナに何のタグが入っていてどういうルールが入っているか確認できます。マクロに関してはちょっと分かりにくいので、ひとまず今回は触れないでおきます。

11.バージョンを作成します

バージョンを作成することでやっとタグ配信の準備が整います。
バージョンを作成をクリックしてください。

バージョン作成と言われてもピンと来ない方もいるかもしれませんが、ブログとかでもある「下書きで保存」と似たようなイメージをしていただければわかりやすいかと思います。[10.コンテナの中身を確認します]までの状態ではコンテナにタグとルールをいれただけで放置した状態になります。

また、バージョンとは履歴。と考えてもらえればいいと思います。バージョン管理とか聞いたことあるかと思いますがそれと同じ様なことだと思っていただければいいかと思います。

なので、何か新しいタグの設定を行ったけれど今までうまく計測できてたものがうまく行かなくなった。といった場合にはきちんと動いていた時のバージョンに戻せば前の状態できちんと動くことになります。

タグの中身

12.バージョン公開前にチェックします

下書き状態のこのコンテナの内容が正常に公開されるかをチェックするためにプレビューを見てみましょう。プレビューをクリックしてください。

バージョン公開

13.プレビューとデバックを選択します

自分ではよくわからない等、何か理由がある場合はプレビューを共有で他の人にもチェックしてもらうことができます。また、プレビューのみでもいいですが、両方できるプレビューとデバックを選択していいと思います。

プレビューとデバッグ

14.プレビューを確認します

ドメインをクリックしてください。
プレビュー確認

15.プレビュー確認画面を見ます

下図のように該当サイトの半分にタグマネージャが配信されているかどうかが表示されます。配信されている場合は「配信」と表示され、配信されていない場合は「未配信」と表示されます。

配信されているということは、そのタグがそのページで読み込まれている状態なので、この場合だとGoogleアナリティクスの計測ができていることになります。

未配信ということは、コンテナからきちんとタグが表示されていない状態なので、タグかルールの設定をどこかしらで間違えているということになります(基本的には。)

プレビュー中

16.ようやく公開!

新しいタブでプレビューが開かれているはずですので、元のタブにもどってください。
「プレビューモードを終了」をクリックしてください。[12.バージョン公開前にチェックします]の画面に戻ってきたかと思うので、「公開」ボタンをクリックしてください。
下図が表示されるので、特に問題がなければ「はい」をクリックしてください。

公開の確認

17.バージョン一覧

一番最初に作成したバージョンは恐らく2になると思います(最初から1が登録してあるので)。

version

これでアナリティクスが計測される状態になりました!!ひとまずお疲れ様でした。

おまけ

最後に、バージョン名の変更等に関しても少し触れておこうと思います

バージョン名の設定

バージョン > 該当バージョン > 編集

バージョン名とメモを記入することができます。ここでバージョン名をきめておくと左側のメニュバーみたいなところに表示されるバージョンがIDではなくバージョン名で表示されます。

バージョン名を設定せずにたくさんのバージョンを作成してしまうと数字が並んでいて意味わからなくなってしまいます。わかりやすいバージョン名を設定しておきましょう。

また、複雑な設定を行ったバージョンの場合はメモにどういう設定したかを記入しておくと良いです。こうした管理は一人だけが把握できている、ではなくて他の人が見た時にもわかりやすい状態にしておいた方が良いと思います。

ユーザー管理

ユーザーと設定 > ユーザー

ここでアカウントに対する権限とコンテナごとに対するユーザー権限の設定が行えます。

以上になります。

最後に注意点

とても便利なツールなのですが、いろんな細かい設定をしたい、とかこれとこれを組み合わせてこういうことをしたい、とかいう場合に、ちょっとまだ情報が少なく調査やテストなどに時間がかかってしまってしまうなあというところが悩みどころです。

例えば社内で導入に向けて提案するとき、或いはクライアントに提案するときに「今大変なのがめちゃくちゃ簡単になりますよ」みたいな感じで安易に伝えてしまうと、特に初期の導入時には「全然カンタンじゃないじゃないですか」ということになりかねません。導入するときにかかるコスト、或いは運用にかかるコストもある程度はかかるということは前提に導入されると良いのではないかと思います。

とはいえ、まだリリースしてそこまで時間も経っていないなかでも徐々に使いやすくなってきている印象はあるので、ぜひ機会がありましたら早い段階で導入を検討してみてはいかがでしょうか。

文責:ヴォラーレ株式会社 三好

おすすめの記事

売れない時はどうすりゃいいの?

本日はランディングページの改善が
なかなか上手く行かない時に使って欲しいツールの話。


ランディングページの改善には様々な方法がありますが、
最もやりやすいのが、ランディングページを変更してみてコンバージョン率が
どれぐらい変わるか?を見るという方法。


ただ、これも多少の変化であれば期間が違うからの違いなのか?
ランディングページを変えたからなのか?



何が起因して数値が変わったのか把握しにくくなります。


そこで、必ずやらなければならないのがABテスト。


ABテストであれば、
同一期間にて違うそれぞれのページにアクセスを
振り分ける事が出来るので季節的な要因や時間軸での成約率の変化は無くなります。


要するに時間軸を同じにした上で成約率が変われば
ランディングページの出来が成約率に影響したことが分かるようになります。


ここまでは大丈夫でしょうか?


では、ABテストをやれば必ずランディングページを改善する事が
出来るのか?というとそうではありません。


あくまで、ABテストはAパターンとBパターンの数値を
見るものであって、ある程度改善が進んでいたり、


オリジナルの
ランディングページの出来が良い場合は改善版として作ったパターンが
毎回数値として悪くなるという事もあるのです。


実際、最初に作ったオリジナルパターンの成約率を
超える事が出来ないケースはランディングページが良くなればなるほど起こります。


こんな時はどうすればいいのか?


そこで使って欲しいツールがヒートマップ分析ツールです。


有名所のツールであれば、
ギャプライズさんが提供している「クリックテール」ですね。


この機能を使うと下記のようにサイトのどの部分が見られているか?
を視覚的に把握する事が出来ます。

2323


この機能を使うと上記のようにヒートマップにて
どの部分が見られているか?を視覚的に表してくれることは
もちろんのこと下記のように実際、どうサイト内を動いたか?まで見えるわけです。


これらを見ると、ユーザーが意図しない動きをしていたり、
見せたいコンテンツが見られていないかったり
と、
より精度の高い改善施策を練る事が出来るようになります。


ぜひ、興味があれば使ってみてくださいね。

クリックテールであれば体験版もありますし、
無料のものであればユーザーヒートというツールもあります。


またこのヒートマップ分析の方法については
違う機会に詳しく分析の方法などは解説していきたいと思います。


それではまた次回!!

Operaブラウザの開発者向けツール”Dragonfly” その機能

私は常日頃からブラウザはOperaを愛用しています。今回はそのOperaの知られざる便利機能”Dragonfly”をご紹介します。

このDragonflyは、SEOにも一役買うはずです。

Opera Logomark

ところで、そもそもみなさんはOperaをご存じでしょうか?

そもそも「Opera」ってなに?

ウェブブラウザです。

公式サイト : Opera Web ブラウザ  http://jp.opera.com/browser/

世界でのシェアは2%弱とされています。マイナーです。日本でのシェアは更に少なく1.5%弱とされていて、数としては絶対的少数派であろうブラウザです。
browser_share

参照: 「世界&国内のブラウザシェア(2012年11月更新)」
http://groomee.com/blog/web-design/browser-share/

Operaでなにができるの?

  • きっとクロームよりも速い(はず)
  • 回線が遅いときでも「Opera turbo」という加速装置が作動するので速い(はず)
  • Opera Turbo設定画面
    opera_turbo

  • マウスジェスチャー機能で「戻る」「更新」などが俊足で行える
  • 空白タブに「Speed Dial」という、よく使うブックマークを見やすい場所にまとめておける
  • opera_speed_dial

  • 「Private Tab」で、リファラはかない&キャッシュもたない&履歴残さない状態でブラウズできる(しかも右クリックで瞬時に起動)
  • Ctrl + Enter で自動でログインできる(もしくは鍵マークをポチ)
  • タブをグループにしてまとめておける(しかもグループ単位で最小化できる)
  • 「ページ情報」からtitle, meta keywords,description, 外部cssファイル, Javascriptファイル, ページのバイト数などの情報を瞬時に見られる
  • 広告ブロック、フィッシング対策も標準装備
  • タブを数多く開いた際に、二段にして表示できる
  • Opera Linkで自分のPCのすべてのOperaのブックマークを同期できる
  • Opera Miniというモバイル用のブラウザも完備(Opera Linkも実装しているのでPCと同期)
  • 利用者人口が少ないので、セキュリティ上相対的に安全

などの機能がエクステンション(一般的なブラウザでいうアドオン)なしのデフォルトで使えます。Operaは基本的にデフォルトで使うものなのです。

ですが、はっきり言えば、こんなことは他のブラウザでも代替できてしまうことなので、誠に残念ながら「Operaでないとできない」というほどのことではありません。

なので早速本題、”Dragonfly”の便利機能にうつりたいと思います。

Opera Dragonflyとは

Dragonflyとは、一言でいえばOperaに実装されたディベロッパーツールです。
opera_dragonfly
「Opera Dragonfly | 解き放たれた新しいプレデター」   http://jp.opera.com/dragonfly/

Dragonfly (とんぼ)というネーミングは、Bug(虫)を片端から食べていくことからきているそうです。この機能はOperaにデフォルトで入っているので、ブラウザをインストールすればすぐに利用することができます。

Dragonflyの使い方

ソースを検証したいページを開いて、左クリックし、「要素を検証する」という項目をクリックします。すると、とんぼがぱたぱたと羽ばたくエフェクトとともに、颯爽とOpera Dragonflyが起動します。

Dragonflyの便利機能

このDragonflyには便利機能がたくさんついていますが、Operaの公式サイトでも何故かその使い方の詳細が載っていません。なので、ここでその便利な機能を列記します。

  • HTMLソースをUIから選択して見れる
  • 外部CSSをHTMLから参照してくれる
  • そのページを取得するまでに何秒かかったか / ファイルをいくつ参照したかがわかる

HTMLソースをUIから選択して見れる

opera_dragonfly_amazon

↑こんな感じで、UIから部分を選択してソースを検証できます。

クロームその他のディベロッパーツールでは、「ソースを選択→UIの該当部分を表示」というあんばいですが、Opera Dragonflyでは違います。UIを選択すると該当ソースが、ソースを選択すると該当UIがと、どちらからでも検証できるのです。

たとえば「この画像にどんなalt属性(画像の代替となるテキスト要素)が記載されているかどうか見たい」と思った時には、Dragonflyを起動してその画像をクリックすることで調べられるわけです。

外部CSSをHTMLから参照してくれる

opera_dragonfly_source

また、Dragonflyはlink要素で参照されている外部CSSファイルも読み込んでくれます。たとえば、先の画像がimgでなくbackground-imageであった場合にも、その記述を確認することができるわけです。

また、そこで不適切にtext-indentが使用されていないか等も、あわせてチェックできます。

そのページを取得するまでに何秒かかったか / ファイルをいくつ参照したかがわかる

opera_dragonfly_resource

そのページがどれだけのHTML、画像、CSS、Javascriptファイルを呼び出しているかを確認することができ、またそれらを呼び出すのにどれだけの時間、バイト数を要したかを項目別に一覧することができます。

つまり、読み込みがものすごく遅いページがあり、ユーザビリティやクローラビリティを損なうと考えられる場合に、いったい何がその原因なのかを判断することができるのです。

(ただ、この機能は今はまださほど完成度が高くないので、やたらめったら時間のかかる場合もあります。)

ほか詳しくは書きませんがこんなこともできる

  • Javascriptだけひっぱってきて検証できる (Scripts)
  • W3C Validationを瞬時にかけられる (Errors)
  • ピクセルをマウス指定してそのカラーコードやRGBを取得できる (Utilities)
  • ページ内のオブジェクトの大きさをピクセル単位で測れる (Utilities)

まとめ

まとめると、Operaを使うとこのような機能がデフォルトで利用でき、とても便利なのです。

とはいえ、率直にいえばこれらの機能は他のブラウザでもアドオンやエクステンション次第でほとんど実現できるので、絶対にOperaでなければならない強烈な理由があるかと問われれば、やっぱり見当たりません。

Opera最強伝説?

あとこれは補足なんですが、Operaは基本的にGoogleとの相性が良くありません。一例としては、Google docsが見れないことがよくあります。おまけにキーワードツールも使えません。そして、なににつけ「クロームのような最新のブラウザにしませんか?」とか提案されて涙目です。Operaも最新のブラウザなのに。

例えばOperaからAdWordsキーワードツールを開くと、”Your Browser is no longer supported” だなんてけんもほろろの素っ気なさです。

opera_adwords

結論

つまるところ、Operaを使う理由は、その機能面にではなく、全体としてのまとまりのよさ、使いやすさにあるのです。

さて、そんなこんなで不遇の感があるOperaですが、私がもともと根っからのOperaユーザなのでこんな記事を書いてみました。でも、少なくともSEOに関わる方であれば出来ればChromeなどその他のブラウザを利用することをお薦めせざるを得ません。

皆さま、今後ともOperaをよろしくお願いします。

文責 : 植木

おすすめの記事

リンク否認ツールの使い方・注意点・使用事例などまとめ

昨年10月にリンク否認ツールが公開されてから早4ヶ月が経ちまして、リンク否認ツールを使用した後に再審査リクエストに成功する事例なども見受けられるようになってきました。今回のブログでは、改めて否認ツールについての簡単なおさらいや、いくつかの事例のご紹介を致します。

リンクの否認ツールとは

何のためのツールか

googleのウェブマスター向け公式ブログでは否認ツールについての記事が2つあります。昨年10月17日の記事には

この新しいツールは、サイトへの不自然なリンクを理由に手動によるスパム対策が実施されているというメッセージが Google から届いた際に、ウェブマスター向けガイドライン違反となる箇所の違反状態を解消するためにお使いいただけます。サイトへの不自然なリンクに関するメッセージが届いていない場合は、このツールを使う必要はありません。

というように書かれており、手動ペナルティに対する再審査リクエストのためのツールと説明されています。しかし10月26日の記事のQ&Aの中では、

質問: 「サイトへの不自然なリンク」の通知を受け取っていなくても、予防策としてリンク ファイルを作成すべきですか?

回答: 通称 “Penguin” アップデートの影響がサイトに及んでおり、スパムの疑いのあるリンクや低品質なリンクを設定したことが原因ではないかと思う場合は、サイトへのリンクを調査し、Google のウェブマスター向けガイドラインに違反するリンク プログラム などによるリンクを否認することをおすすめします。

というQ&Aが記載されており、手動ペナルティを受けた状態でなくとも、粗悪なリンクによる悪影響を取り除くためにも使用したほうが良い、としています。

後ほどの注意点にも書いてある内容になりますが、Googleは否認ツールについて、「本当に必要な時にしか使用すべきでない」と何度も解説しています。前者の記事で手動ペナルティを受けた状態で使用するツールであると説明しているのは、「なぜ貼られているのか不明で大した恩恵もなさそうなリンクはとりあえず全部否認してしまおう」というような使い方を防止するためのものでしょう。したがって、手動ペナルティ時に限らず粗悪なリンクによる影響やリスクを取り除きたいときに、やむなく使用するツールといえます。

否認ツールの使い方

否認前後のフロー

否認するリンクを1行1URLずつ、プレーンテキスト(.txtのファイル)に記載します。ドメイン単位で否認することも可能で、その場合「domain:www.example.com」というように書きます。なお否認するリンクについては、WMTから確認できる被リンクの他、Majestic SEOOpen Site Explorer等のツールから検出できるリンクも合わせて精査することで、より多くのリンクをチェックすることができます。
否認リンクリスト

ファイルを準備したら、WMT上の設定画面より、下図のようにファイルをアップロードできます。
リンク否認フロー
なお、リンク否認が正しく行われると、以下のようなメッセージが届きます。
否認確認メール
また、否認ツール使用後はリンク登録画面が下図のようになります。否認したリンクの確認や、否認の解除を行うことができます。もちろん新たにリンクを否認することも可能です。
否認編集

使用上の注意点

あまり安易に使わないことがまず重要です。Google公式ブログなどでも度々言及されていますが、まず粗悪なリンクについては削除を試みることです。削除を試みた上で、どうしてもできないものに限り否認を使う、というようにするのがよいでしょう。

また、上図でも度々使用を確認されていますが、使用に当たっては慎重になる必要があります。間違って否認をしてしまった場合、内容を差し替えることはできますが、それが反映されるまで更に数週間かかると言われているからです。また、ドメイン単位で否認する際はそのドメインから正当なリンクを受けていないか確認した方がよいでしょう。

リンク否認後の順位推移

順位推移事例1

否認ツールを使用した事例です。もともと上位を維持していたキーワードでしたが徐々に順位が下がってきており、特に昨年12月頃から下降のペースが上がってきていました。SEO目的の粗悪なリンクが設置されており、前々から削除を試みてはいましたが、削除しきれないものも多くありました。具体的には無料なディレクトリ型検索サイトからのリンクや、昔ながらのワードサラダで生成したテキストからのキーワードリンクがその大半を占めていました。そのような中で、12月中旬より大きく順位が下がったためリンクの否認を行う運びとなりました。

リンクの否認後もしばらくは下がっていましたが、2週間ほど経った頃から順位が回復していき、1か月後には下がる前の水準まで戻りました。googleの公式ブログでも、否認後効果が出るまで数週間の期間を要することもあると書かれていますが、ちょうどそれに該当する時期での回復となります。

順位推移事例2

こちらも同様の事例で、どうしても粗悪なリンクが削除できていなかったため、順位の下降後リンクの否認を行いました。約2週間後に順位がある程度回復しています。これだけで否認の効果があるとは全く断定できませんが、このような事例はけっこうあるため、使う価値はあるでしょう。

まとめ

仮に粗悪でリスクを伴う不自然なリンクであっても、上位表示という恩恵を受けているケースは今でもまだまだあります。しかし、ペナルティなど明らかな下落は起きておらずとも、粗悪な被リンクにより順位が安定しないことや、伸び悩んでしまうことも現実には多くあります。

そのような場合、どうしても問題の解消が不可能な場合は、リンク否認ツールの使用により改善が見込める可能性はありそうです。しかし、実際に否認ツールを使っても再審査リクエストに合格できない事例や、特に何の変化が見られないというような事例も多くあります。

どちらにせよ問題を解決してくれる万能ツール、というわけではないことは間違いなさそうですので、不自然なリンクが多く残っている場合には、まずはそれらのリンクの削除を試みた上で、否認ツールはどうしても削除が難しい場合の「最終手段」として使用する、くらいが現時点ではちょうど良さそうです。

文責 : 志水

おすすめの記事

FeedlyでSync’ing feedly. Please wait…が無限ループする

Feedly8.0で「Sync’ing feedly. Please wait…」無限ループについて解決方法を探しまくってたら情報を見つけたので。

Firefox9にFirebugとFeedlyがインストールされている環境下だと動作しなくなるようです。現時点ではFirebugを無効化するしかなさそうなので気長にアップデートを待つこととします。

あ、だいぶ遅いですけど、あけましておめでとうございます。