Google Analytics Query Explorerは期間、dimension、metricを決めてAPI実装前に結果を試す
公開日: 執筆:佐藤
Google Analytics APIでreportを作るなら、最初のcodeを書く前にQuery Explorerで一つのqueryを完成させます。profileと期間を選び、数えたいmetricを一つ、分けたいdimensionを一つ指定します。期待する表が返ってから、sortやfilterを加えてください。
Google Analytics Demos & ToolsにはQuery Explorerがあります。選んだ条件からrequestを組み立て、Google Analytics accountのdataを表示します。APIの認証、画面、保存処理を作る前に、質問へ必要なdataを取得できるか確かめられます。
queryは質問を一文にしてから組む
dimensionとmetricを先に並べても、何を調べたいか決まっていなければ、列が増えるだけです。たとえば「11月1日から21日までに、どのpage pathが何pageviewあったか」と一文にします。
この質問は、次の要素へ分けられます。
| 要素 | Query Explorerで指定する値 | 役割 |
|---|---|---|
| 対象 | profile | どのsiteのdataかを決める |
| 期間 | start-dateとend-date | 集計する日付を決める |
| metric | ga:pageviews |
数える値を決める |
| dimension | ga:pagePath |
行を何で分けるか決める |
metricは数値として集計する対象、dimensionはその数値を分ける軸です。質問の述語が「何回あったか」ならmetricを探し、主語や条件が「どのpageか」ならdimensionを探すと、組み合わせを決めやすくなります。
profile、期間、metric、dimensionの順に試す
Query Explorerの公式紹介は、profileを選び、dimensionとmetricの組み合わせ、sort、filterを試し、作ったqueryのpermalinkを使えると説明しています。最初は次の順で入力します。
- Google Analyticsへloginし、対象profileを選ぶ
start-dateとend-dateを固定するmetricsへ一つのmetricを指定する- 必要な場合だけ
dimensionsを一つ加える - 結果を確認してから
sortとfiltersを加える
最初から複数のmetric、dimension、filterを入れると、空の結果やerrorが出たときに原因を分けられません。一項目ずつ加え、直前のrequestと結果を残します。
requestを見れば実装へ渡す条件が分かる
Core Reporting APIのrequestでは、ids、start-date、end-date、metricsが必要です。dimensions、sort、filtersなどは、質問に応じて加えます。
次は説明用の仮例です。
ids=ga:12345678
start-date=2014-11-01
end-date=2014-11-21
metrics=ga:pageviews
dimensions=ga:pagePath
sort=-ga:pageviews
この段階で確認するのは、requestが通ったことだけではありません。返った行がpage pathごとに分かれているか、期間が質問と一致するか、並び順が目的に合うかを見ます。合わなければ、codeではなくqueryの条件を直します。
filterは基本の結果が返ってから加える
特定のdirectoryだけを取得したい場合でも、最初からfilterを入れません。filterなしで対象profileと期間のdataが返ることを確認し、その後で条件を一つ加えます。
同じ方法で、sortも一つずつ試します。値の大きい順ならmetricの前へminus記号を付けるなど、Query Explorerが作るrequestを見ながら調整します。目的の結果が得られたらpermalinkとquery parameterを保存し、実装担当者へ渡します。
Query Explorerの成功とapplicationの完成は分ける
Query Explorerでdataが返っても、applicationの仕事は残ります。認証、権限error、通信error、取得件数、保存形式、再実行の条件は、実装側で決める必要があります。長い期間や細かなdimensionを取得する場合は、samplingの有無も別に確認します。
解析担当者は質問と期待する表を決め、実装担当者は同じqueryを再現できるcodeと運用方法を作ります。外部へ開発を委託する場合も、profile ID、query parameter、permalink、期待する列を自社で保管してください。codeだけを受け取っても、何を数えるreportか分からなければ修正できません。
最初の一手は、APIで答えたい質問を一文にし、Query Explorerでmetricを一つだけ指定することです。結果が返ったらdimensionを一つ加え、行の分かれ方が質問と合うか確かめてください。
関連記事

