GoogleアナリティクスAPIの使い方【ソート・フィルタ・セグメント】

google-analytics-api-filtering
mono
mono
こんにちは、monoです。

Webマーケティングの仕事をしていると、Googleアナリティクスやスプレッドシートなどを使って、UUやPV、Adsense収益の分析をすることがよくあります。

そのときに便利なのがGoogleアナリティクスのAPIなのですが、Google製品ってこのあたりのマニュアルが読みにくいんですよね……(Googleさんごめんなさい)。

当記事では、

GoogleアナリティクスのAPIをさらに使いこなして、効率的にデータを集計したい

という方向けに、

  1. データを昇順・降順にソートする方法
  2. データを特定の条件でフィルタリングする方法
  3. データにセグメントを設定する方法
  4. データの精度(サンプリングレベル)を変える方法

について解説していきます。

この記事を読んで、GoogleアナリティクスAPIを効率的に使いこなせるようになっていただけたら幸いです。

それでは早速、それぞれの機能の使い方について解説します。

目次

データを昇順・降順に並び替える方法

データを昇順、または降順に並び替えられた状態で取得したい場合は、「Order」項目で条件式を記述します。

並び替えは指標(メトリクス)、分析軸(ディメンジョン)どちらでも可能です。

並び替えを行うと少し計算時間が伸びるので、並び替えの必要がない場合は設定しない方が時間短縮になります。

並び替えすることで関数の処理負荷を減らせる場合のみ、利用すると良いでしょう。

意味 記述方法 使用例
昇順 API名のみ記述 ga:users
降順 API名の頭に「-」を記述 -ga:users

データを特定の条件でフィルタリングする方法

データを特定の条件でフィルタリングしたいときは、「Filters」項目で条件式を記述します。

条件式の書く際には、GoogleアナリティクスAPIが読み取るための記述ルールがありますので、以下の表を参考に記述してください。

指標(メトリクス)で使える演算子

指標(メトリクス)を条件にフィルタリングする際に使える演算子です。

指標(メトリクス)では、比較演算子によるフィルタリングがメインとなります。

演算子 意味 使用例
== 等しい ga:users==100
!= 等しくない ga:users!=100
> より大きい ga:users>100
< より小さい ga:users<100
>= 以上 ga:users>=100
<= 以下 ga:users<=100

※メトリクス「users」を例にしています。

分析軸(ディメンション)で使える演算子

分析軸(ディメンション)を条件にフィルタリングする際に使える演算子です。

分析軸(ディメンション)では、完全・部分一致演算子や正規表現によるフィルタリングがメインとなります。

演算子 意味 使用例
== 完全一致する ga:pagePath==/archives/12345
!= 完全一致しない ga:pagePath!=/archives/12345
=~ 正規表現条件に一致する ga:pagePath=~^/archives/[0-9]+$
!~ 正規表現条件に一致しない ga:pagePath!~^/archives/[0-9]+$
=@ 部分一致する ga:pagePath=~^/archives/[0-9]+$
!@ 部分一致しない ga:pagePath!~^/archives/[0-9]+$

※ディメンジョン「pagePath」を例にしています。

あわせて読みたい
ga:pagePathの使い方は?意味や条件式の書き方についても解説! サイトのページ別KPIの集計、効率化したいですよね。実はGoogleAnalyticsAPIの「ga:pagePath」セグメントを使えば、簡単にページ別KPIを集計することができます。 当記...

複数条件(AND・OR)でフィルタしたいとき

複数条件でフィルタリングしたいときは、最初の条件式の後に「,」または「;」を入れてから、続けて条件式を記述します。

「,」を使うか「;」を使うかによって、OR条件かAND条件か変わってくるので、「自分はどのようなデータが欲しいのか?」をよく考えてから設定するようにしましょう。

演算子 意味 使用例
, OR(A または B) ga:pagePath=~^/archives/[0-9]+$,ga:users<=100
; AND(A かつ B) ga:pagePath=~^/archives/[0-9]+$;ga:users<=100

データにセグメントを設定する方法

Googleアナリティクスからデータを抽出する際に、特定の属性を持ったユーザーまたはセッションに絞る(セグメントを指定する)ことができます。

セグメントは「Segment」項目で指定することができます。

目的に応じてデータをセグメント分けすることで、より効率的にデータを加工できます。

セグメント名 API名
すべてのセッション gaid::-1
新規ユーザー gaid::-2
リピートユーザー gaid::-3
有料検索トラフィック gaid::-4
自然検索トラフィック gaid::-5
検索トラフィック gaid::-6
ノーリファラー gaid::-7
参照トラフィック gaid::-8
CVしたセッション gaid::-9
購入したセッション gaid::-10
モバイルとタブレットのトラフィック gaid::-11
直帰以外のトラフィック gaid::-12
タブレットのトラフィック gaid::-13
モバイルのトラフィック gaid::-14
PCとタブレットのトラフィック gaid::-15
Android OSでのトラフィック gaid::-16
iOSでのトラフィック gaid::-17
Android OSとiOS以外のモバイル流入 gaid::-18
直帰したセッション gaid::-19
過去90日間に1回のみセッションが有るユーザー gaid::-100
過去90日間に2回以上セッションが有るユーザー gaid::-101
過去90日間に1回でもCVしたユーザー gaid::-102
過去90日間に1回もCVしていないユーザー gaid::-103
購入決済に至ったユーザー gaid::-104
サイト内検索を実行したユーザー gaid::-105

データの精度(サンプリングレベル)を変える方法

GoogleアナリティクスAPIから抽出するデータは、データ量が極端に多かったり、フィルタの条件が複雑になったりすると、サンプリング(データの一部をランダムで抽出して、本当の値を推定すること)によって、数値を算出します。

その際に、数値の精度と計算速度のバランスを「Sampling Level」項目で設定することができます。

APIが「v3」か「v4」かによって、設定が変わってくるので、そこだけ注意すれば、そこまで難しくないです。

API利用で速度が求められることなんてそうないので、基本的には「精度優先」にしておくと良いでしょう。

GoogleアナリティクスAPI v3の場合

API名 設定内容
HIGHER_PRECISION 精度優先
DEFAULT バランス
FASTER 速度優先

GoogleアナリティクスAPI v4の場合

API名 設定内容
LARGE 精度優先
DEFAULT バランス
SMALL 速度優先

まとめ

Webマーケターにとって、分析のための集計業務は切っても切り離せません。

そのうち便利なマーケツールなど出ると良いですが、しばらくは難しいんじゃないかなって思います。

とはいえ、今回のように設定さえすれば自動化できるツールはいくつかあるので、頑張って勉強して、より価値のある業務に費やせる時間を増やしましょう!

では、また。

あわせて読みたい
【スプレッドシートの関数一覧】おすすめ関数50選も紹介! スプレッドシートの事務作業、効率的に片付けたいですよね。 当記事では、 「スプレッドシートでおすすめの関数を知りたい」 「スプレッドシートの関数の一覧を知りたい...

あわせて読みたい
Googleスプレッドシートの使い方の勉強におすすめの本11選【実用書・入門書】 スプレッドシートの本選びで、以下のような悩みを抱えていませんか? スプレッドシートの使い方を書籍で勉強したいけど、どれが良い本か分からない 時間に余裕がないか...

この記事を書いた人

28歳♂Webアナリスト/おすすめ本と生活改善グッズ紹介サイトmonoblog.jp他4サイト運営15万PVほど/楽天経済圏/リベ大生/サウナ/筋トレ/お仕事の依頼はこちら

目次