ラベル google の投稿を表示しています。 すべての投稿を表示
ラベル google の投稿を表示しています。 すべての投稿を表示

オンラインサービス「Google Bookmarks」の終了告知

昨日気が付きましたがGoogleが提供するオンラインブックマークサービスの「Google Bookmarks」のサービスが終了するんですね。アナウンスに気づいていなかった...。7月くらいから表示はされていたんだろうか。

 

確かに「ブックマーク」というもの自体、あまりすることがなくなりましたが、エクスポートしてみたHTMLファイルデータも7000行とかあったりするし、使ってない事を考えるとこのまま消してしまっても良いかもしれない...と思いつつ、何か「ブックマーク」という一つの文化が無くなると言うと大げさですが、メンテナンスされないURLメモよりも次々と新しく出てくる洗練されたサービスを探して利用したほうが良いという気持ちもあります。

それでも「あのサイト、名前なんだったっけなー」と思った時にGoogle Bookmarksのtagで見に行ったり、検索できたのは少し便利でした。

今だと普通にブラウザのブックマーク(あまり使っていない...)の他にSlackのグループの皆がメンテナンスしているBookmarkリストをGoogle Spreadsheetで管理されているということもあります。

こういう「このサイトメモをしておこう」という、後で利用するかも分からないリストはどこでどう管理するのが適切なんでしょうね。Read Later系ツールなんでしょうか。

閑話休題

SEOまわりで「うーん」と思わせられる施策を各社サイトで見るようになると、ウェブサイトのソースコードを見ていて苦笑いするしかないですよね...dns-prefetchの山とか。「広告やる気満々だな!」というツッコミと同時に「広告非同期じゃないの?何で?」というモヤモヤ感。

「Google Knowledge Graph Search API」の公開でEntity情報を活用可能に

17日に公開されたGoogle Knowledge Graph Search API
schema.orgのjson-ld形式で返ってくるわけですが、これ英語だけかと思ってたらクエリが日本語でもちゃんと返ってくる!とちょっと驚いたわけですが、日本語だと結構微妙な返り方をする(苦笑

完全な日本語側の対応にも期待です。

今回公開されたナレッジグラフのAPI、即ちGoogleがその事象について知っていることというのは、その情報をウェブサイト側にも利用出来るという意味以上に、その情報以上の情報をウェブサイトで提供することでGoodコンテンツからExcellentコンテンツへの昇華出来る可能性も示唆しています。

まずはサンプルで挙げられているクエリ「Taylor Swift」。

{
  "@context": {
    "@vocab": "http://schema.org/",
    "goog": "http://schema.googleapis.com/",
    "EntitySearchResult": "goog:EntitySearchResult",
    "detailedDescription": "goog:detailedDescription",
    "resultScore": "goog:resultScore",
    "kg": "http://g.co/kg"
  },
  "@type": "ItemList",
  "itemListElement": [
    {
      "@type": "EntitySearchResult",
      "result": {
        "@id": "kg:/m/0dl567",
        "name": "Taylor Swift",
        "@type": [
          "Thing",
          "Person"
        ],
        "description": "Singer-songwriter",
        "image": {
          "contentUrl": "http://t1.gstatic.com/images?q=tbn:ANd9GcQmVDAhjhWnN2OWys2ZMO3PGAhupp5tN2LwF_BJmiHgi19hf8Ku",
          "url": "https://en.wikipedia.org/wiki/Taylor_Swift",
          "license": "http://creativecommons.org/licenses/by-sa/2.0"
        },
        "detailedDescription": {
          "articleBody": "Taylor Alison Swift is an American singer-songwriter and actress. Raised in Wyomissing, Pennsylvania, she moved to Nashville, Tennessee, at the age of 14 to pursue a career in country music. ",
          "url": "http://en.wikipedia.org/wiki/Taylor_Swift",
          "license": "https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License"
        },
        "url": "http://taylorswift.com/"
      },
      "resultScore": 883.004883
    }
  ]
}

では次に、日本語でいくつか投げてみます。

■東京
{
  "@context": {
    "@vocab": "http://schema.org/",
    "goog": "http://schema.googleapis.com/",
    "EntitySearchResult": "goog:EntitySearchResult",
    "detailedDescription": "goog:detailedDescription",
    "resultScore": "goog:resultScore",
    "kg": "http://g.co/kg"
  },
  "@type": "ItemList",
  "itemListElement": [
    {
      "@type": "EntitySearchResult",
      "result": {
        "@id": "kg:/m/07dfk",
        "name": "Tokyo",
        "@type": [
          "AdministrativeArea",
          "Thing",
          "City",
          "Place"
        ],
        "description": "Capital of Japan",
        "image": {
          "contentUrl": "http://t0.gstatic.com/images?q=tbn:ANd9GcSJxjpK7r6C8grUlfZo1m8p4E_Br56BxQOLgnzO3LCA4C-98LrG",
          "url": "https://en.wikipedia.org/wiki/Transport_in_Greater_Tokyo",
          "license": "http://creativecommons.org/licenses/by-sa/3.0"
        },
        "detailedDescription": {
          "articleBody": "Tokyo, officially Tokyo Metropolis, is one of the 47 prefectures of Japan, and is both the capital and largest city of Japan. The Greater Tokyo Area is the most populous metropolitan area in the world. ",
          "url": "http://en.wikipedia.org/wiki/Tokyo",
          "license": "https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License"
        },
        "url": "http://www.metro.tokyo.jp/ENGLISH/"
      },
      "resultScore": 31.502502
    }
  ]
}

■メガネ・・・うーんビミョー過ぎるww
{
  "@context": {
    "@vocab": "http://schema.org/",
    "goog": "http://schema.googleapis.com/",
    "EntitySearchResult": "goog:EntitySearchResult",
    "detailedDescription": "goog:detailedDescription",
    "resultScore": "goog:resultScore",
    "kg": "http://g.co/kg"
  },
  "@type": "ItemList",
  "itemListElement": [
    {
      "@type": "EntitySearchResult",
      "result": {
        "@id": "kg:/m/01whc86",
        "name": "ギラギラメガネ団",
        "@type": [
          "Thing"
        ],
        "description": "Musical Artist"
      },
      "resultScore": 6.196605
    }
  ]
}

まだ日本のGoogleで表示されるようなナレッジグラフは返ってきませんが、現状でも利用できる分野は結構ありそう。(分野によりますが)
日本語で分かりますが、クエリが「メガネ」でも返ってくるnameは「ギラギラメガネ団」ということで部分一致で返ってきます。resultScoreで判断すれば良いような気もしますが、部分一致だと微妙に罠がありそう。。。

これは久しぶりに熱くなりました!

【Google Analytics】Google Spreadsheetで自動集計(レポート作り 5日目:目標設定データの取得)

1日目

少し時間が空きました。最近、Analyticsを使ったユーザ分析を色んな側面からアプローチしているところですが、数字を見ながら仮説、予想をたてて、数字を取得し検証してみるという流れを繰り返し、繰り返し。思わぬ発見もありますが、これがなかなか根気のいる作業。
ただ、一回は影響がないと思えても、全てのデータを取得しておくことが必要だと考えています。適切なKPIの認識だけでなく、顧客の行動や心理がなんとなくでも分かるようになり、ウェブページ構成を考える上で必要となるペルソナの確定にとても重要なデータをもたらします。

今回からはAnalyticsの目標設定や、業種によって異なるレポートになってくる場所なので、本当に参考までとなりますがご紹介します。

【目標到達プロセス】
このシートでは、予め登録している目標設定の到達率(離脱率)を把握するためのシートです。

参考シート

今回のシートでは「注文」と「会員登録」の2つの目標設定を事前に行なっているという前提で話をします。



さて、目標に関するデータの取得方法から始めましょう。
目標に関しては、設定したページのどこで最も離脱が発生しているのかという事を見ることも重要ですが、EFO対策を実施している最中だったり、特段直近で対策を打つ予定がないのであれば、このシートのように到達率という形で、その値が異常値でないかどうかの監視のみをするだけで良いと思います。

では、早速。
Googleのリファレンスを見ると、今回、目標番号の合計開始数を見たいので、「goal(n)Starts」を使います。

これは、目標1であれば「goal1Starts」、目標2なら「goal2Starts」となります。目標番号は、Analyticsを開いて、「コンバージョン」メニューを開くと、「ユーザーが達成したコンバージョン数」のところに、事前に設定した「目標1:~」のような記載があると思います。この数値が目標番号です。

getGAdata(C1,C2,"ga:goal1Starts",B4+1,B5+1,,,,,)

のような形で使います。
次に、終了プロセス数ですが、今度は完了数ということで「ga:goal(n)Completions」を使いましょう。
前と同様に目標1なら「ga:goal1Completions」となります。

真ん中にある四角は、視覚的に見せるためのメーターです。



ここは、色んな見せ方があると思います。私は簡単に、10%区切りでメモリを作って、10%超えるごとに色を付けていくという方法です。

さて、次にあげた購入に直結しているランディングページ、カート投入上位は、どうやってフィルタをかけるかが重要になります。用意したスプレッドシートでは右下の「購入につながるランディングページ」はページのカテゴリ別、右下にある「購入直結ランディングページ」は具体的なページ別の上位を示しています。書き方はお任せしますが、大きく分類で見る方法(森)と、細かくページを見る方法(木)の2種類を用意しています。

上位10ページでは足りない事もあると思いますが、見せる対象者によって変化させて良いと思います。急に売れ始めた商品やカテゴリがわかれば良い、または今一番うれている物がどんなものなのかが分かれば良いと考えるなら、この程度で良いでしょう。まず、詳細に分析する時間が、通常取れないと思いますし。

このあたりは考え方を学んでいただければ良いです。そして、ここがわかれば、あとは自由自在に数値を取得出来るようになるでしょう。

まずは、どうやってデータを取ればいいのかを考えてみてください。

購入であれば、一つはサンクスページを中心に考えるというやり方があります。
フィルタでサンクスページを閲覧した対象のランディングページを上位10ページ並べるという方法はどうでしょう。

式を組み立てる場合、Googleが提供する有効な組み合わせを参考にしてみるのもいいでしょう。

これを見ると、ディメンションカテゴリで「ga:landingPagePath」を指定した場合、有効な統計情報は「ga:visits」等を除くとされています。試しに、visitsを指定するとデータが取得できませんが、ga:pageviewsを指定するとデータが取得できると思います。

したがって、こんな方法はどうでしょう?

getGAdata(C1,C2,"ga:pageviews",B4+1,B5+1,"ga:pagePath=~<サンクスページ>","ga:landingPagePath",,TRUE,10)

サンクスページに来た人でフィルタをかけて、その人達のランディングページをPV上位順に10個並べる。という式ですね。残りの部分についても式を考えてみてください。


<補足 : Google Analyticsの分析は正規表現を理解していることを推奨します>
今回Spreadsheetを使って数字をどんどん好きなように取得していますが、これをマスターしてもWeb版のAnalyticsから離れられるわけではありません。Webとのデータ照合という意味だけでなく、Webの方が簡単に習得できる場合があるからです。
そして、次回話が出来ればと思いますが、Google Analyticsから大量データを取得する場合もWebが必要です。

そこで、大規模サイトになればなるほど、正規表現を覚える必要が出てきます。正規表現についてはGoogle Analyticsのヘルプを参照いただければと思いますが、これを利用すれば的確に、データを取得出来るようになります。

Analyticsでフィルタをかけるときは、普段から正規表現で書いておきましょう。

例えば。。。
/shop/111111/index.html
/shop/222222/index.html
というページがあっても、正規表現で
\/shop\/([0-9]*)\/index\.html
または
\/shop\/(.*)\/index\.html
と書ければ、まとめてデータを取得できます。

[0-9]は、0から9の任意の数字、*はワイルドカードで直前のアイテムを0回以上繰り返す事をしめすので、要するに数字が任意の数入っているという事を示します。

正規表現を利用して、分析データを簡易に素早く取得出来るようにしましょう。

日本のGoogleがPanda Update及びソーシャル検索に対応したらmixiチェックは必ず入ってくるという予想

普段海外仕様のGoogleを利用していますが、米国でソーシャル検索がリリースされた当初から、私のコネクトにはmixiが入っています。



選択肢にないのに、なぜmixiが入ってるのか?
それは、Google Accountに昔からmixiを登録していただけで、Connected accounts画面が出来た時点で自動的に入っていたからです。
今からGoogle Account側にmixiを登録すれば、Connected accounts画面に追加されるかどうかはわかりませんが、少なくとも、この画面にmixiが入っているということは、mixiをソーシャルサービスとして認識しているということです。あとはmixi側がmixiチェックをgoogleに提供するかどうかが問題ですね。

従って!何が言いたいかというと、「パ・ン・ダ!」、「パ・ン・ダ!」と騒ぐのもいいですが、mixiチェックなどのソーシャルサービス親和性も今のうちに高めておいた方がいいんじゃない?という指摘をしたかっただけです。

【Google Analytics】Google Spreadsheetで自動集計(レポート作り 4日目:週分析・曜日分析)

少し間があきましたが、続きをすすめましょう。
4日目は週分析と曜日分析です。
今回は、それほど難しく有りません。エクセルで遊ぶ感覚で作成してみてください。

【週次セッション数遷移】
今までGoogle Analyticsの数値をSpreadsheetで自動的に取得してきました。今回は週ごとの遷移を一目でわかるようにグラフを作成しましょう。2ページ目では日次で取得しましたが、ここで週次でとる理由はなんでしょうか。

ウェブ解析は日々行う短時間の業務と、週次で行う業務、月次で行う業務等、レベルと内容を変えて分析を行うのが通常です。日次で行う確認はAnalyticsの数値が平時と比較して多量のアクセスやアクセスの激減等の現象が計測されていないかを確認するためですが、そのようなアクセスが存在した場合、原因を探るはずです。
そのアクセスが会社にとって良い影響を及ぼしているのか、それとも悪い影響を及ぼしているのか、もしかするとTV等に取り上げられて、販売・マーケティングを行うチャンスなのかもしれません。一方でそのような流入が全く販売、業績に結びつかないものかもしれません。週次でサマリーしてしまうと、そんなアクセスによって右肩上がりのグラフが出来上がっても、結果に結びついていない可能性があるのです。右肩上がりのグラフで上司を喜ばせることができても、その中身がみえていないのでは、もともこもありません。最悪なのはその週に新たに打ち出した施策の好影響だ!と結論づけてしまうことではないでしょうか。

日々の急増、急減でダメージの発生するものについては、即座に報告・連絡をすると思いますが、全社または社長等に報告するまでもないものも存在します。それを補う意味で、日毎と週毎の数値の取得及び遷移グラフが必要という位置づけで作成しています。

では、さっそく週毎の計測に入ります。

まず、計測期間が日曜日~土曜日の方は簡単です。
週計測用のdimensions「ga:week」が存在するからです。
例えば、直近3ヶ月を期間指定して、dimensionで「ga:week」をセットします。

getGAdata(C1,C2,"visits",B4+1,B5+1,,"ga:week",,,)

こんな感じですね。
すると、週番号とセッション数が一発で取得できます。



問題は集計範囲が日曜日から始まらない人。例えば月曜日~日曜日といった範囲で集計する場合は、現状解析開始日と終了日をそれぞれセットするしか有りません。
解析したい期間の開始日、終了日はすぐに分かると思いますが、例えば直近10週を解析する場合、式が10個になります。その場合、Google側の制約等によりタイムアウト等のエラーが発生する率が高くなります。エラーの処理に関しては、2日目の最後に記述しましたので、エラーが発生した場合は、一つずつ潰していきましょう。

【曜日分析】
曜日分析を行っているのは、元々ON/OFF分析、つまり営業日と非営業日の分け方で分析をするという事も念頭にありました。実際には、厳密なON/OFFにはなく、単純な曜日分析になってしまっていますが。

曜日分析はそれほど難しくありませんが、getGAdataで出力される日付は「文字列」だということに注意してください。通常のgetGAdataを日次で出力。

getGAdata(C1,C2,"visits",B4+1,B5+1,,"ga:date",,,)

で出力したあと、その日付(YYYYMMDD)を日付形式に変え、WEEKDAY関数等で曜日を出力してしまってください。
ちなみに、ちゃんとON/OFF分析を行いたい場合は、土日祝日データとそれ以外を分けるか、面倒ですがWorkday関数で営業日だけを取り出すなんていう方法でも良いかもしれません。他にも色々な方法があると思いますが、パッと思いつきませんでした。。。

事前に2011年の祝日リストを日付タイプでリスト化し、営業日をまず出力してしまうといったやり方です。まぁ、どちらの方法でも時間はかからないと思いますが、面倒ですね。




というわけで、今回は簡単ですが、週分析及び曜日分析は終わりです。

【5ページ目を公開しました】
5ページ目

Google Multilingual Voice Search via SEJ(Chrome ver11以上のみ)

今年3月にChromeへ追加されたHTML speech imput APIを使うことで音声からテキストへ変換することが可能となりました。

それを利用してSEJよりGoogle Multilingual Voice Searchの紹介がありましたので、ご紹介いたします。

もちろん日本語もOK。

検索ボックスの右側にあるマイクのマークをクリックすると、「お話しください」と出ますので、しゃべるだけ。


「渋谷」の検索結果です。


スマートフォンでの技術が次々と生かされているという印象です。
ただ、音声入力技術が今後どんな方向へ進むのかが、なかなかイメージ出来ずにいます。職場でブツブツ言うわけにもいかず、マイクロソフトのWordも音声入力を昔から備えていましたが、結局それを利用している人は非常に少ないと思います。精度の問題だったのかもしれませんが。

一つには自宅で何かの雑誌、本等でメモをしておきたい部分を音読するだけでテキスト化するという方法があるでしょう。インタビューの場合は、相手と自分の声をそのままテキスト化すれば編集も楽になるかもしれないので、ボイスレコーダーの代わりにマイクを置いておくという利用方法も出来るかもしれません。ただし、どちらの発言かという点で弱いので、インタビュー前に発言者が何名であるかを事前に登録し、人を分けてくれると良いですね。

改行に関しては時間的な間を取るしか無いかもしれません。何かの記事でちらっと見ただけですが、「改行」という言葉を2回言うと、機能としての「改行」になるなどの動作があると多少は使える物になるのかもしれません。

どちらにしても、PCではメインの機能というよりサポート的な機能のような気もします。スマートフォンではメインの機能として利用される事も多いでしょう。

【Google Analytics】Google Spreadsheetで自動集計(レポート作り 3日目:ソーシャルメディア流入)

1日目 >> 2日目 >> 3日目

1日目2日目に続き、今回はソーシャルメディア流入に関する調査です。

Googleなどの検索エンジンがソーシャルメディアで繋がりのある人が紹介したリンクを検索結果に表示するなど、ソーシャルメディアが従来と比較してさらに重要視されるようになりました。今回のレポート作りではそんなソーシャルメディアからの流入を調査するものです。

ソーシャルメディアから流入した人は直帰率や滞在時間等の数値が高いと言われます。ソーシャルメディア経由のユーザー動向調査を行ったり、単に流入数値の分析を行うなど様々な分析を行うきっかけとなれば幸いです。

【ソーシャルメディア流入計測方法】
まず、ソーシャルメディアとして何を計測するかを決めましょう。

今回は、
mixi
Facebook
Twitter
を取り上げます。

プラス追加で、ウェブメール経由の流入も調査しましょう。メーラー経由での流入はURLにrefコードを付けている、またはHTMLメールでutmコードを付けている場合を別にして、基本的にはdirect経由での流入として計測されます。ウェブメール経由の流入を調査することで、顧客が主に利用しているウェブメールがわかり、HTMLメールを作成する場合も該当ウェブメールへのテスト配信、およびチェックをすることでデザインの崩れ等も見ることが出来ます。活用方法は色々ありますし、時間をどれくらいかけるかという点は各々にお任せしますが、一度計測を行ってから考えてみるというのも良いでしょう。

では、さっそくソーシャルメディア経由の流入計測方法です。

今まで使用してきた関数getGAdataでも、今回は参照元URLを絞り込むことで実現します。Analytics画面でフィルタをかけるのと全く同じです。

参照元URLを取得するにはdimensionsの「ga:source」を使います。
関数は

mixiの場合、
getGAdata(C1,C2,"visits",B4+1,B5+1,"ga:source=~mixi",,,,)

という感じです。
フィルタのかけ方についてはGoogleのページをご参照ください。

今回は演算子「=~」の「正規表現の一致を含む」でフィルタをかけています。
私は正規表現の演算子のみでやっていますが、普通に含む検索として「=@」などを利用してもよいでしょう。

同様にFacebookは
getGAdata(C1,C2,"visits",B4+1,B5+1,"ga:source=~facebook",,,,)

Twitterは
getGAdata(C1,C2,"visits",B4+1,B5+1,"ga:source=~twitter",,,,)

でOKです。
自分で計算式を作るときには、フィルタの書き方に注意してください。

という事で、今回は簡単に3ページ目の補足のようなシートですが、4ページ目のご紹介です。

【4ページ目を公開しました】
4ページ目

1日目 >> 2日目 >> 3日目

【Google Analytics】Google Spreadsheetで自動集計(レポート作り 2日目)

1日目 << 2日目 >> 3日目

1日目に引き続き、2日目を投稿します。

まずは、1日目を投稿してみて、意外と反応があり恐縮です。
マーケティングレポートは、コンサル系会社やツール提供会社が出すものばかりで、他社がどんなものを使って分析をしているのかは、全くわかりません。私自身は、レポートというものを殆ど見たことがないので、自分で作り会社で公開しているだけです。
A4、A3サイズ1枚で簡単なレポートが出来れば週次のレポートとしては素晴らしいものになると思いますし、報告対象者が社員向けか、役員向けか社長向けかによって内容も変わります。今回公開しているものは社員・役員両方に向けていますので、簡単な内容から予実管理への言及まで全て入れています。そのあたりも考慮いただければと思います。

【1日目のご意見等を受けて】
レポートのレイアウトをGoogle DocのTemplateで公開しました。
表紙
2ページ目

別にTemplateじゃなくても。。。という印象ですよね?(笑)
参考にしつつ、独自のレポートを作成してみてください。

【2日目開始】
3ページ目は、今のところ集客系の簡易レポートとしています。
3ページ目もレイアウトを公開しました

さて、たぶん見ていただければ分かってしまうと思いますが、「滞在時間」部分はあとで付け足しました(苦笑)
他のページで入れる部分がなかったからです。
省いていただいて全く問題ありませんので、テンプレートは好きなように煮たり焼いたりしてください。

【流入経路分析】
集客ルート、新規顧客流入率、滞在時間を調べるには、「segment」を使います。

<参考 - 決められたセグメントコード>
gaid::-1 全セッション
gaid::-2 新規ユーザー
gaid::-3 リピーター
gaid::-4 有料の検索トラフィック
gaid::-5 無料の検索トラフィック
gaid::-6 検索トラフィック
gaid::-7 ノーリファラー
gaid::-8 参照トラフィック
gaid::-9 コンバージョンが達成されたセッション
gaid::-10 トランザクションの発生したセッション
gaid::-11 モバイル トラフィック
gaid::-12 直帰以外のセッション

※アドバンスドセグメントを利用している場合は、これ以外にさらに他のセグメントコードが割り振られます。
アドバンスドセグメントのセグメントコード取得はツール開発者のSpreadsheetを利用するのが一番早いと思います。
Analyticsログイン用のアドレス、パスを入れるか、Tokenがわかっていれば、Token欄に直接Tokenを貼りつけてみてください。

1日目で使い方を説明しているので数式の使い方の説明はしません。



1日目に作成したシートを例にとって数式を作ってみると。。。

direct : getGAdata(C1,C2,"visits",B4+1,B5+1,,,"gaid::-7",,)

となります。本当でしょうか?
※ここでは若干数式の後半を省略していますが、気にしないでください。



Analyticsで見てみると、directの数値が89.00ですね。問題ありません。
同様に

検索エンジン経由 : getGAdata(C1,C2,"visits",B4+1,B5+1,,,"gaid::-6",,)
外部サイト経由 : getGAdata(C1,C2,"visits",B4+1,B5+1,,,"gaid::-8",,)

となります。あとは、全体のセッション数から見た比率を求めて円グラフを完成させましょう。
utm経由の流入は「その他」になりますが、その部分は今回含めていません。

【新規顧客流入率】
流入経路分析と同様にsegmentをセットします。

新規 : getGAdata(C1,C2,"visits",B4+1,B5+1,,,"gaid::-2",,)

となります。ここもちゃんとWeb表示データと相違ないか、確認してみましょう。
注) 数式や指標等を覚えてくると、ここでMetricsにある「ga:newVisits」と勘違いすることがありますが、「ga:newVisits」は新規ユニークユーザーの事なので間違えないようにしましょう。

【滞在時間】
このシートに似合わない指標、「滞在時間」です。
ここでは新規顧客とリピーターで滞在時間がどの程度違うかを明示しているだけです。

サクっと計算してしまいましょう。

サイト滞在時間は専用metricsが存在します。「ga:timeOnSite」です。
ただし!計算してみればわかりますが、計算結果は「秒」で返ってきます。

新規の滞在時間 : getGAdata(C1,C2,"timeOnSite",B4+1,B5+1,,,"gaid::-2",,)



出来ましたか?
どんだけ弱小サイトだよ!っていうツッコミは受け付けません(笑) ちなみに、このサイトではありません(笑)

あとは、画面キャプチャどおりに秒を時分秒の形式にしましょう。
ここはExcelの知識でOKです。

やり方は色々ありますが、ここでは簡単にtext関数を利用します。

text(time(0,0,A9/A8),"hh:mm:ss")

関数で取得した秒を一人当たりの秒数に換算します。で、time関数の秒にその値をぶち込んで、text関数で書式を整える。そんな流れです。
ここでも時差の関係かもしれませんが、私の設定ではhhの部分が12と入ってしまうため、「"hh:mm:ss"」の部分を「"00:mm:ss"」としてしまっています。Web画面の数値とイコールになることが確認できれば問題ありません。
なお、小数点のまるめ処理等で若干Webの数値と一致しない場合がありますが、1秒程度のずれとなっているはずです。

2日目は以上で終了です。

【補足(解析の手間をできるだけ省くために)】
自動計算とはいえ、関数がデータを取得するのは時間がかかるため、なるべく計算は少なくしましょう。TOKENや解析期間は1箇所で管理し、Importrange関数で引っ張ってしまう方が良いです。



私の場合は、「表紙」がトリガーになっており、「表紙」で解析期間を選択すると1ページ目以降はすべてImportrangeで期間を取得するため、基本的にはSpreadsheetを開くだけで自動計算され、マーケティングレポートが完成します。

あとは、関数でエラーが出た場合の対処のみを行うという方法です。

【関数でエラーが出た場合の対処方法】
取得するデータ量により、関数でエラーが出る場合があります。その場合は次の方法で回避が可能です。

 ・metricsまたはdimensionsの「ga:」を入れてみる、または抜いてみる。
 ・暫定的に隣のセル等、未使用セルに同じ数式をコピーする。
 ・一旦Spreadsheetを閉じて、時間をおいてからアクセスする。

一つ目の方法を私はよく使います。面倒ですけど、一番簡単で、すぐに再計算可能だからです。Templateを見ていただければ分かると思いますが、Sheet1はレポート用、Sheet2は計算用で、計算結果をSheet1へ引っ張っているので、二つ目の方法をとると、若干厄介ですね。
特に急いでいなければ三つ目の方法でも良いと思います。

エラーを未然に防ぐ方法としては

 ・関数を出来る限り減らす。(1日目でも述べましたが、Google側の制限で一度に10個までしかクエリを受け付けません)
 ・開発者サイトにある通り、スクリプトをいじる。

スクリプトをいじって、改善したという実感がないので、個人的には一つ目の関数を限りなく減らす方法を推奨します。

というわけで、2日目はここで終わりです。
皆さんが作成している解析レポートもぜひ見てみたいと思っています。
では。

【参考】
3ページ目のテンプレート

1日目 << 2日目 >> 3日目

【Google Analytics】Google Spreadsheetで自動集計(レポート作り 1日目)

1日目 >> 2日目

Google Analyticsを利用してサイトの分析をしている企業の方も以外と多いはず。ただ、どんなレポートを作ればいいか分からないという方や、Analyticsのデータをコピーして、Excelに貼りつけなんてやっていると時間がもったいない。とにかく、自動化しましょう。
Analyticsのカスタムレポートという機能をフル活用されている方も多いと思いますが、自分で好きなように、好きな位置に、役立つものだけを配置して、自分で作るからこそ最適なレポートが出来上がると思います。自分自身も、まだ試行錯誤しながら新規に指標を取り入れたり、省いたり、月次集計ページを付け足したりとしていますが、今私が作っているレポートをどんどん公開してしまおうと思います。
まぁ、私が全て勝手に作っているものなので。。
レポートをどういうふうに作ればいいかわからない、または、他の人がどんなものを作っているのか気になるという人は、覗いてみてくださいね。

では、前置きはこの程度にして、始めましょう!

マーケティングレポート作り 1日目
1.表紙を作る
⇒ここは当たり前。どんなレイアウトでもいいです。
社名、「社外秘」、分析期間、分析者など、必要事項をちりばめてしまいましょう。

ちなみに、私は別にデザイナーでもなんでもないので、いたってシンプルです。

どうです。このシンプルさ。
別に隠す必要のない部分まで隠してますけど、とりあえず分析者は今は私だけなので特に書いていなかったりします。

2.2ページ目の作成(PV、セッション等)
ここからが本番です。本格的にPV、セッション等の定量的な数値を取得していきます。


(無理やりデータをけしているのもあって、汚さが増してます。。。)

【下準備】
Google Spreadsheetで自動計算させるための、スクリプトをインストールします。
スプレッドシートを開いたら、「挿入」のメニュー内にある「スクリプト」を選択します。


(画像は英語版になっています。)

表示された画面で「analytics」を検索してください。



この「Google analytics Data Fetch Functions」こそが、自動取得ツールになります。作成者のMikael Thunebergさんのサイトで詳しい使い方も載っています。一応このページを読めば、日本語で作り方がわかるかと思いますよ。

「インストール」を押して、警告画面が出たら「Authorize」を選択してください。


(すみません。キャプチャを撮った時点で、何語か分からない警告画面になってしまいましたw)

【準備】
さて、スクリプトをインストールしたら、魔法の数式が使えるようになります。
利用出来る関数は

・getGAaccountData
・getGAauthenticationToken
・getGAdata

の3つ。
PV、セッション等のデータ取得には、getGAdataだけを利用しますが、その他の関数は準備段階で必要になります。
まずは、getGAdata関数に必要となる数値を取得します。

1つ目はTOKEN。
TOKENは月に1回ほど変わりますので、常に関数を使って最新のTOKENを取得してください。
TOKENの取得方法は、Analyticsに入るためのIDとパスワードが必要です。

数式は

getGAauthenticationToken("ID","Password")

です。


こんな感じです。
B1セルには長ったらしいパスワードが入っていますが、数式にIDとパスワードを入れてあげると、これまた長いTOKENが発行されます。どんだけ長いかは皆さんの目で確かめてみてくださいね。

2つ目に必要なデータとしては、Profile ID。
確認方法は、Google Analyticsのプロファイル一覧画面から、解析したいウェブサイトの一番右「編集」リンクを叩いてください。

そのページの画面上の方に、解析するアドレスが出ており、すぐ下にIDが載っています。


もっと簡単にProfile IDを取得する方法として、作者のページに置いてあるスプレッドシートを利用するという方法があります。(一度自分のアカウントのGoogle Docにコピーする必要があります。)

AnalyticsにログインするためのEmailとPasswordを入れれば、トークンとProfilesを得られます。ちなみに、デフォルトで分析も出来ますので、これを使ってしまうほうが早いのかもしれませんね。

【解析開始】
最初にデータを取得するためのgetGAdataの関数を見てみましょう。

getGAdata(TOKEN,Profile ID, metrics, startDate, endDate, filters, dimensions, segment, sort, includeHeaders, maxRows, startFromRow)

です。
ただし、入力必須なのは
TOKEN、Profile ID、metrics、startDate、endDateです。

では、サイトのPVを取得しましょう!
期間は 2011/5/1 から 2011/5/24まで。

その場合、こんな感じになります。


Profile IDが変わっていますが、ここではどういう風に関数を使うかを理解してください。

ここで入れている数式は

getGAdata(C1,C2,"pageviews",B4+1,B5+1,,,,,)

です。
C1のTOKENと、C2のProfile IDは問題ないでしょう。
次のmetricsはGoogle先生が沢山用意してくれています。これです。ここではmetricsに"pageviews"と記述しましたが本来は"ga:pageviews"となります。
これは、スクリプト側で先頭の「ga:」が欠けていた場合、自動的に補ってくれるからです。
ただし、一気に複数のmetricsを取得することもできるのですが、先頭以外に関してはちゃんと「ga:」を付けなければいけません。

例えば、PVとセッションを両方取得したい場合は
"pageviews,ga:visits" または"ga:pageviews,ga:visits"
となります。
PVはpageviews、セッションはvisitsです。まだ出てきていませんが、ユニークユーザーはvisitorsです。

このあたりは、色々と解析し始めると自然と覚えますし、英語でGogle Analyticsを利用している場合は、書かれている名称そのままなので、利用しやすいと思います。

次に、分析期間について。
なぜ、開始日と終了日にそれぞれ1を足しているのでしょうか?

この部分については不明瞭なのですが、おそらくは時差が関係していると思っています。
早速、検証してみましょう!

試しに先程の数式を以下の数式に書き換えてみてください。

getGAdata(C1,C2,"pageviews",B4+1,B5+1,,"date",,,)



dimensionsの欄に「date」または「ga:date」を入れてみただけです。
そうすると、日付別にPVの数字が現れます。

データの開始日が5月1日になっているのがわかると思います。
あと、Analytics側とも比較してみましょう。



あっていますね。
日本でこのスクリプトを利用する場合は、開始期間と終了期間に、それぞれ1を足す必要があることがわかります。

さて。これがわかれば、あとはレポート作りです。
まず、2ページ目はサイトのPV、セッション、直帰率を出していきましょう。
(参考: Google先生のページ)

PV : getGAdata(TOKEN,Profile ID,"ga:pageviews",startDate+1,endDate+1,,,,,)
セッション : getGAdata(TOKEN,Profile ID,"ga:visits",startDate+1,endDate+1,,,,,)
直帰率 : getGAdata(TOKEN,Profile ID,"ga:visitBounceRate",startDate+1,endDate+1,,,,,)

です。

今まで直帰率は、直接求める指標がなかったので、直帰者数を流入セッション数で割っていたのですが、問い合わせが沢山いったのでしょうか?(苦笑)
サイト分析者なら、求め方も知っていなければ分析を間違えます。
一旦、直帰者数を全体のセッション数で割って求めて確かめてみましょう。

これで、レポートに必要なデータの求め方はわかりました。
では、レポート作りです。

エクセルで少なからずレポートを書かれている方は、結構実感されているところもあると思いますが、自分は、ます目を細かくして、必要なセルは結合して使います。



2ページ目はだいたいこんなレイアウトで作成しています。



ちょうど今作成している会社は複数のウェブサイトを運営しているので、サイトごとに数値を出すイメージです。
一つのサイトの場合は、グラフを充実させるのが良いと思います。

対象期間のセッション数等の求め方はわかったと思います。
30日間の平均は、単純に対象期間を30日間にして、1日あたりの平均を求めたり、対象期間日数分の数値を出したりすれば良いです。
この30日というのも、どう取るかを環が魔性。
例えば、分析期間が5/1から5/6だった場合、その期間を含まず4/1から4/30の30日間をとれば良いのか。という部分です。

前年の数値については、対象期間から365日前を引いたり、直接日付を入れれば終了です。

最後に、Spreadsheetでこのスクリプトを使って自動集計する時の、"運用上の"注意点です。
このスクリプトはGoogle側の制限で一度に10個までしか受け付けられません。そのため、レポートは1ページずつスプレッドシートを分けることを推奨します。作者ページに回避方法が一応載っていますが、私自身、かなり多くの計算をさせているため、最終的に1ページずつ分けて作成することにしました。
PDFは1ページごとに作成して、あとでマージしています。
では、表紙と2ページ目の作成はこれで終了です。質問はコメントいただければ、分かる範囲で3ページ目の作成時の最初にお答えしようかと思います。

3ページ目公開!

【今回作成しているレポートのテンプレート】
表紙
2ページ目
※Google Spreadsheetではグラフや画像を縮小すると印刷時、非常に荒くなります。あくまで社内用で用いるのが良いと思います。

<参考> Google Spreadsheetを利用するには、必ず Importrange関数を覚えましょう。

ImportRange(spreadsheet_key, [sheet!]range)
例) importrange("[key]","Sheet1!E3")
⇒ ここでいう[key]とはアドレスバーに出ている「・・・&key=●●●●&hl・・・」の●の部分です。


見えないと思いますが、黒い部分です。

分析期間やTOKEN等は、1箇所にまとめて、あとはImportrange関数で引っ張ればイイと思います。
ちなみにrangeという名のとおり、1セルだけじゃなくて、複数セルをまとめて引っ張ることが出来ます。

1日目 >> 2日目

[Google Shopping]ショッピングリストページを表示するには?

Googleショッピングにリスト機能が追加された!と言われて、色々登録しているものの、あとでリストを表示させようとしても、どこから行けばいいのか分からない。。。という不親切さ。
今後改善されていくと思いますが、現在の状況でも一応リストを参照することが出来ます。

手順としてはまず、Googleショッピングページを表示してから、検索ボックス右下にある「ショッピング検索オプション」を押します。


オプション画面が表示されたら、画面右上にある設定アイコンを押すと。。。


リストへ遷移できるメニューが表示されました!
Appleのデザイン方針からすると、かなり外れた、見つけるためにウロウロしなければ行けない場所にありますが、Google先生のUI改善まで待ちましょう。

【Panda Update】現在分かっている事

Panda Updateは、Googleが2011年2月25日に公式アナウンスされた大規模なGoogle検索アルゴリズム変更の事で、品質の悪いページ(コンテンツファームを含む)を検索から除外、及びスパムサイトの除外を行うことを目的としたものですが、サイトを常識的に、きちんと作るべきであることが重要なので、あまり言及も必要がないかと思っていますが、SEWの記事も踏まえて、少しだけ整理してみます。

<海外リリース履歴>
Panda 1.0 : 2/24 米国サイトの12%へ影響
Panda 2.0 : 4/11 米国サイトの2%へ影響
Panda 2.1 : 5/10頃 軽微な修正

<現在明確に分かっている事>
・重複コンテンツは削除すべき
・URLが相違し、コンテンツが重複する場合は301リダイレクトを利用すべき(URLのパラメーター含む)
・301リダイレクトが難しい場合はmetaタグとしてcanonicalタグを定義すべき(headタグ内以外は非評価)
・検索結果のようなコンテンツやタグクラウドのようなコンテンツはmetaタグでnoindex指定をすべき
・ページ表示速度を改善すべき

<明確ではないものの推奨される事・方針>
・スクロール無しで見える画面(Above the fold)に有用な情報を載せ、広告で埋まることが無いようにすること
※GoogleからAbove the foldとなるheight数値は明らかにされていない
・コンテンツはユニーク、トピックを絞った、十分な内容が必要。
・ウェブサイト自体はどのキーワードで誘導するかが明確となっていること。

こんなところでしょうか。
以前から言われていることもあるので、それほど大きな内容はないと思いますが、今後も海外事例は引き続き追っていこうと思います。

そういえば、海外で先行していたソーシャルサーチがやっと日本にも導入されたようですね。ソーシャルサイトへの親和性も高めておきましょう。自分のソーシャルサイトにはmixiも含まれていますが、検索結果には現在のところ表示されていないようです。今後出てくるようになるでしょう。

Adplannerのユニークユーザー計測方法が変更

マーケティング担当者なら誰もが知っているAdplannerですが、Unique Visotors(Users)の計測方法が変更されたようです。
この影響で、ユニークユーザーが前月までよりも、ほとんどのサイトで上ブレしています。

ちょうどデータが更新されていたので、前月の他社動向分析をしていたのですが、estimated cookiesよりも計測方法がかなり分かりづらい部分ですよね。私だけかもしれませんが。

estimated cookiesはクッキーベースの評価ということですが、恐らくtracking cookieもある程度関係あるのかなぁと思ったりしています。ただ、usersの方は視聴率調査という位置づけでしたが、Googleの発表を見る限りはアルゴリズムなんですよね。日本では最近でも視聴率という位置づけですが、実際、それほど大きくデータが外れているわけではないので、今後も視聴率として取り扱って特に問題はないでしょう。

GoogleがGrouponと同様のサービスGoogle Offersを開始

GoogleがGrouponを60億ドルで買収しようとしたのは記憶に新しいのですが、ついにGoogleが地域を限定してGoogle Offersを開始しました。まだサービスはミニマムで、メール通知のみという内容です。



GigaOMによれば、GoogleはGoogle Placeを通じて募集をかけているとのこと。実際のGoogle取り分は不明のためGrouponに対し、どの程度競争力があるのかは分かりません。一方のGrouponはGroupon Nowを通じてタイムセールやロケーションベースのサービスが開始されているのと、Facebookはソーシャルグラフを活用したコマースへ積極的に乗り出しているので、それに対するGoogleサービスは見劣りしてしまいます。

Panda Update(UK) : Who got two black eyes from Google?

ちょっと視覚的に面白かったので。(こちらの記事)


The panda update was one of the first algorithm updates to actively survey 'real people' and use their input and quality assessment to benchmark it's algorithm.

Whilst the data visualization below is not an indicator of any traffic reduction to those sites (many are upbeat and defiant about the impact of the panda update on their business), it is a useful indicator of where Google's latest algorithm has focussed it's efforts.

どんなサイトが一番Panda Updateの影響を受けるか。。。というのを示した図です。
(PDF版)

[Google Adwords]ランディングページの規約違反ステータス「Site Suspended」

Google AdwordsブログによればAdwords画面において規約違反に該当するキーワードについてはStatusを「Site suspended」とし、広告は表示されないこととした。



広告が安全かどうか、信頼に足りるかどうかを自動的に判断し、ガイドライン違反については厳しく対処するというもの。

Google Social Search アップデート

GoogleはSocial Search機能をアップデートしました。
Social Search機能はデフォルトではOFFに設定されていますが、ONにするには、Googleの「Account settings」画面から「Connected accounts」のリンクを選択します。



その画面からFacebook,Flicker,LinkedIn,Quora,Twitter,yelpといったサイトを登録します。
一度登録すると、友人がウェブ上でシェアしたコンテンツに関連したキーワード検索を行った場合、検索結果に友人のツイートが表示されるようになります。



Googleの+1といい、Pandaアップデートといい、コンテンツファームに対して厳しく対応しているだけでなく、検索結果が人それぞれ変わってくる事から、今後はSEO対策ではなく完全にソーシャルメディアへの対策へ舵を切らなければならなくなる可能性があります。もちろん、ソーシャルメディア上の情報だけが表示される検索結果ではないので、SEOが効果を失うことはないでしょうが、ソーシャルメディアとともにバランスをとりながら対策を打ち出していく必要があるでしょう。

また、Googleとしては先程の「Connected accounts」画面でユーザーが選択出来ることで、各個人が情報の制御を行うことが出来るため、MicrosoftのBingとは異なる戦略をとっています。BingではFacebookとTwitterだけのところを、Googleは更に多くのサービスへ範囲を広げています。あとは、デフォルトでOFFになっている事と、管理画面へのリンクがやや分かりにくいと思われる事で、急激に利用者が増えたり、現在の検索順位がユーザーごとにバラバラになってしまうという事は少ないと思われます。

海外で日々調査され続けているPandaアップデートでは、特に大量商品を取り扱うEコマースサイトで影響が出るのではないかという予測も出てきております。それは、売り文句や商品が他サイトと被る事から、複製サイトと見なされるのではないかという憶測から発生しています。実際にEコマースサイトに影響がでていれば、そろそろレポートが出てきてもおかしくないと思いますので、個人的にはそれほど大きな影響はないのではないかと考えてはおりますが、油断は出来ません。

<追記>
Social Searchではウェブ解析側から見ると検索エンジン経由で見えることが一番難しくするポイントのような気がします。検索エンジン経由での訪問におけるキーワードを抽出し、そのキーワードの単純な検索順位を分析。50位外であれば、ある程度Social Searchのフィルタを通っている等、何か一定の基準を設けておく必要があるかもしれません。

[Google Spreadsheet]ある文字列を含むリストを表示させる

エクセルまたはGoogle Spreadsheetで部分一致検索を行う場合、ちょっと迷ったりしませんか?
vlookupだとうまく当たらない事しか経験したことがなくて、ちょっとSpreadsheetで作ってみたので公開します。といっても、キーワード設定が必要なパターンですが、あるキーワードにマッチしたリストを自動的に表示するというものです。
数式が汚いのでちょっと整理しないといけませんが、ご参考になればと思います。

Spreadsheetはこちらです

<使い方>

◆簡単な説明
1.dataシートに元データが入りますが、そこで検索用キーワードをセットします。
2.「result」シート(上のキャプチャ)の「Search Keyword」にキーワードを挿入すれば、下に該当キーワードがセットされたリストが自動的に表示される。

という流れです。
別にフィルタで十分ってこともありますが、Spreadsheetの場合、なぜかフィルタをかけた結果2,3行のデータをコピーしようとすると、コピー範囲がフィルタ前データで1000セル超えている場合、1000セル超えのエラーが出てしまうわけです。。。
そのうち改善されるとは思うのですが、すぐには難しいので、こんなシートもあれば便利かなぁと思いました。

※汎用化させるため、indirect関数を用いたりしているので、列等を追加する場合はご注意ください。