このドキュメントでは、Google アナリティクスのセグメントの概要を説明します。
概要
セグメントを使用すると、ビジネスにとって重要なユーザーとセッションを指定して、不明だった情報を明らかにすることができます。たとえば、過去の合計購入額が 10 万円以上で 2 回以上のトランザクションを行ったユーザーや、最初に携帯端末でアクセスした後に PC のブラウザでアクセスしたユーザーなどをセグメントとして指定できます。
このドキュメントでは、Google アナリティクスのユーザーモデルと、セグメントの基本的な作成方法を説明します。
Google アナリティクスのユーザーモデル
はじめに Google アナリティクスのユーザーモデルを確認して、セグメントの概念を掴んでください。
Google アナリティクスのユーザーモデルには、次の 3 つの主要要素があります。
- ユーザー - プロパティのユーザーの基本的な単位です。
- セッション - ユーザーはプロパティにアクセスして接点を持ちます。こうした一連のユーザーとプロパティの接点を、まとめてセッションといいます。
- ヒット - ユーザーはセッションでプロパティと接点を持ち、その個々の接点がヒットと呼ばれます。ヒットにはページビュー、イベント、トランザクションなどがあります。
1 人のユーザーには複数のセッションが発生し、各セッションでは複数のヒットが発生する可能性があります。これを図で表すと次のようになります。

Google アナリティクスのユーザーモデルを理解したら、次はセグメントの作成方法を見ていきましょう。
セグメントの例
セグメントを作成するには条件を設定し、関連するディメンションと指標の値を指定します。
下記の例には、それぞれセグメントの説明、対応するセグメント パラメータ の API 構文、ユーザーモデル表現が示されています。
モデル表現の凡例は次のとおりです。

以下では、次の項目について例を使って説明します。
条件
条件を使って、ディメンションや指標の値に基づいてユーザーやセッションを 選択します。
ディメンション
ディメンションの値に基づいてユーザーやセッションを選択します。
ユーザー
カナダからアクセスしたユーザーを選択します。
users::condition::ga:country==Canada

セッション
カナダからアクセスされたセッションを選択します。
sessions::condition::ga:country==Canada

指標
指標の値(1 つの値や合計値)に基づいてユーザーやセッションを選択します。
ユーザー
1 回のトランザクションの合計収益額が 1 万円を超えたユーザーを選択します。
users::condition::perHit::ga:transactionRevenue>100

1 回のセッションにおける全トランザクションの合計収益額が 1 万円を超えるユーザーを選択します。
users::condition::perSession::ga:transactionRevenue>100

指定した期間の全トランザクションの合計収益額が 1 万円を超えるユーザーを選択します。
users::condition::perUser::ga:transactionRevenue>100

ユーザーを選択すると、デフォルトで指標の値がユーザー単位で合計されるため、この条件文は次のように簡略化できます。
users::condition::ga:transactionRevenue>100
セッション
1 回のトランザクションの合計収益額が 1 万円を超えたセッションを選択します。
sessions::condition::perHit::ga:transactionRevenue>100

1 回のセッションにおける全トランザクションの合計収益額が 1 万円を超えるセッションを選択します。
sessions::condition::perSession::ga:transactionRevenue>100

セッションを選択すると、デフォルトで指標の値がセッション単位で合計されるため、この条件文は次のように簡略化できます。
sessions::condition::ga:transactionRevenue>100
除外条件
NOT 演算子
「!
」 を付けると、その条件に一致するセッションを除外することができます(除外条件)。
離脱ページがルートページ パスに完全に一致するセッションを除外します。
sessions::condition::!ga:exitPagePath==/

条件の組み合わせ
AND 演算子
AND 演算子として「;
」を使って、複数の条件を組み合わせることができます。
たとえば、カナダからアクセスしており、かつ(AND)所定の期間において全トランザクションの合計収益額が 1 万円を超えているユーザーを選択します。
users::condition::ga:country==Canada;users::condition::perUser::ga:transactionRevenue>100

これらは両方ともユーザー条件であるため、この条件文は次のように簡略化できます。
users::condition::ga:country==Canada;ga:transactionRevenue>100
OR 演算子
OR 演算子として「,
」を使って、複数のフィルタを組み合わせることができます。
カナダからアクセスした、または(OR)メキシコからアクセスしたユーザーを選択します。
users::condition::ga:country==Canada,users::condition::ga:country==Mexico

これらは両方ともユーザー条件であるため、次のように簡略化できます。
users::condition::ga:country==Canada,ga:country==Mexico
どちらの条件もディメンションが同じであるため、正規表現を使って次のように簡素化できます。
users::condition::ga:country=~Canada|Mexico
シーケンス
シーケンスを使うと、逐次的な条件群に基づいてユーザーやセッションを選択できます。
モバイル端末からアクセスした直後に PC からアクセスしたユーザーを選択します。
users::sequence::ga:deviceCategory==mobile;–>ga:deviceCategory==desktop

モバイル端末からアクセスした後に PC からアクセスしたユーザーを選択します。
users::sequence::ga:deviceCategory==mobile;–>>ga:deviceCategory==desktop

ユーザーとセッションの併用
ユーザーとセッションを選択してセグメントを作成できます。最初にユーザーを選択して、ユーザーのサブセットとしてセッションを選択します。
携帯端末からアクセスした後に PC 端末からアクセスしたユーザーについて、1 回のトランザクションの合計収益額が 1 万円を超えたセッションを選択します。
users::sequence::ga:deviceCategory==mobile;->>ga:deviceCategory==desktop;sessions::condition::perHit::ga:transactionRevenue>100
次のステップ
セグメントの構文の詳細情報と、Core Reporting API でセグメントのクエリを行う方法については、セグメントに関するデベロッパー ガイドをご確認ください。