セグメント - 機能のリファレンス

このドキュメントでは、Google アナリティクスのセグメントの概要を説明します。

概要

セグメントを使用すると、ビジネスにとって重要なユーザーとセッションを指定して、不明だった情報を明らかにすることができます。たとえば、過去の合計購入額が 10 万円以上で 2 回以上のトランザクションを行ったユーザーや、最初に携帯端末でアクセスした後に PC のブラウザでアクセスしたユーザーなどをセグメントとして指定できます。

このドキュメントでは、Google アナリティクスのユーザーモデルと、セグメントの基本的な作成方法を説明します。

Google アナリティクスのユーザーモデル

はじめに Google アナリティクスのユーザーモデルを確認して、セグメントの概念を掴んでください。

Google アナリティクスのユーザーモデルには、次の 3 つの主要要素があります。

  • ユーザー - プロパティのユーザーの基本的な単位です。
  • セッション - ユーザーはプロパティにアクセスして接点を持ちます。こうした一連のユーザーとプロパティの接点を、まとめてセッションといいます。
  • ヒット - ユーザーはセッションでプロパティと接点を持ち、それぞれのインタラクションはヒットと呼ばれます。ヒットにはページビュー、イベント、トランザクションなどがあります。

1 人のユーザーには複数のセッションが発生し、各セッションでは複数のヒットが発生する可能性があります。これを図で表すと次のようになります。

Google アナリティクスのユーザーモデルを表す階層です。親ノードはユーザー、子ノードはセッション、各セッションにはヒットを表す 1 つ以上のノードがあります。
図 1: Google アナリティクスのユーザーモデル

Google アナリティクスのユーザーモデルを理解したら、次はセグメントの作成方法を見ていきましょう。

セグメントの例

セグメントを作成するには条件を設定し、関連するディメンションと指標の値を指定します。

下記の例には、それぞれセグメントの説明、対応するセグメント パラメータ の API 構文、ユーザーモデル表現が示されています。

モデル表現の凡例は次のとおりです。

ノードがセグメントから除外されているか、セグメントに含まれているか、条件に一致するか、シーケンスのステップに一致するかに基づいて、ユーザーモデル階層の各ノードのスタイルを定義する凡例です。
図 2: セグメント例のノードの定義

以下では、次の項目について例を使って説明します。

条件

条件を使って、ディメンションや指標の値に基づいてユーザーやセッションを 選択します。

ディメンション

ディメンションの値に基づいてユーザーやセッションを選択します。

ユーザー数

カナダから来たユーザーを選択します。
users::condition::ga:country==Canada

3 人のユーザーのうち、最初のユーザーとそのユーザーのすべてのセッションがセグメントに含まれます(2 つのセッション レベルの条件が一致するため)。他の 2 人のユーザーのセッションは除外されます。
図 3: ユーザー条件の一致

セッション数

カナダで発生したセッションを選択します。
sessions::condition::ga:country==Canada

3 人のユーザーのうち、2 番目のユーザーとそのすべてのセッションがセグメントに含まれます(2 つのセッション レベルの条件が一致するため)。他の 2 人のユーザーのセッションは除外されます。
図 4: セッション条件に基づく一致

指標

指標の値(1 つの値や合計値)に基づいてユーザーやセッションを選択します。

ユーザー数

1 回のトランザクションの合計収益が 100 ドルを超えるユーザーを選択します。
users::condition::perHit::ga:transactionRevenue>100

3 人のユーザーのうち 2 人目のユーザーとそのすべてのセッションがセグメントに含まれます(ヒットレベルの条件が 1 つ一致したため)。他の 2 人のユーザーのセッションは除外されます。
図 5: ユーザー条件に基づくヒット単位での照合

1 回のセッション内のすべてのトランザクションの合計収益が 100 ドルを超えるユーザーを選択します。
users::condition::perSession::ga:transactionRevenue>100

3 人のユーザーのうち、1 番目と 2 番目のユーザーとその全セッションがセグメントに含まれます(ヒットレベルの条件が 1 つ一致したため)。
3 番目のユーザーのセッションは除外されます。
図 6: ユーザー条件に基づくセッション単位での照合

期間内のすべてのトランザクションの合計収益が 100 ドルを超えるユーザーを選択します。
users::condition::perUser::ga:transactionRevenue>100

ユーザー単位の条件に一致するため、3 人のユーザーのうち 3 人全員とそのセッションがセグメントに含まれます。
図 7: ユーザー条件に基づくユーザー単位での照合

ユーザーを選択すると、デフォルトで指標の値がユーザー単位で合計されるため、これを次のように簡略化できます。
users::condition::ga:transactionRevenue>100

セッション数

1 回のトランザクションの総収益が 100 ドルを超えるセッションを選択します。
sessions::condition::perHit::ga:transactionRevenue>100

3 人のユーザーのうち 2 人目のユーザーと 1 つのセッションのみがセグメントに含まれます(ヒットレベルの条件が 1 つ一致したため)。
他の 2 人のユーザーとそのセッションは除外されます。
図 8: セッション条件に基づくヒット単位での照合

1 回のセッションにおけるすべてのトランザクションの総収益が 100 ドルを超えるセッションを選択します。
sessions::condition::perSession::ga:transactionRevenue>100

3 人のユーザーのうち、1 人目と 2 人目のユーザー、およびユーザーごとに 1 つのセッションがセグメントに含まれます(セッション レベルの条件が 1 つ一致したため)。3 番目のユーザーとそのセッションは除外されます。
図 9: セッション条件に基づくセッション単位での照合

セッションを選択すると、デフォルトで指標の値がセッション単位で合計されるため、これを次のように簡略化できます。
sessions::condition::ga:transactionRevenue>100

除外条件

NOT 演算子

! 文字を使用すると、条件を否定し、その条件に一致するセッションを除外できます。

離脱ページがルートページパスと完全に一致するセッションを除外します
sessions::condition::!ga:exitPagePath==/

3 人のユーザーのうち、最初のユーザーとそのセッションが含まれます。
         2 番目のユーザーには、1 つのセッションが含まれ、1 つのセッションはセッション レベルの条件に一致するため除外されました。3 人目のユーザーのセッションも、セッション レベルの条件に一致するため 1 回除外されました。
セッションの除外: 一致するセッションを除外します。

条件の組み合わせ

AND 演算子

AND 演算子で条件を組み合わせるには、; 文字を使用します。

カナダからアクセスし、かつ、期間内のすべてのトランザクションの合計収益が 100 ドルを超えるユーザーを選択します。 users::condition::ga:country==Canada;users::condition::perUser::ga:transactionRevenue>100

3 人のユーザーのうち、最初のユーザーとその全セッションがセグメントに含まれます(ユーザーおよびセッション レベルの条件が一致するため)。他の 2 人のユーザーとそのセッションは除外されます。
図 10: AND 演算子を使った複数条件に基づく一致

これらはどちらもユーザー条件であるため、次のように簡略化できます。
users::condition::ga:country==Canada;ga:transactionRevenue>100

OR 演算子

OR 演算子でフィルタを結合するには、, 文字を使用します。

カナダからアクセスしたユーザー、またはメキシコからアクセスしたユーザーを選択します。
users::condition::ga:country==Canada,users::condition::ga:country==Mexico

3 人のユーザーのうち、1 人目と 2 人目のユーザーとその全セッションがセグメントに含まれます。これは、最初のユーザーにはセッション レベルの条件が複数あり、2 人目のユーザーは 1 つのセッション レベルの条件に一致しているためです。残りのユーザーとそのセッションは除外されます。
図 11: OR 演算子を使った複数条件に基づく一致

これらはどちらもユーザー条件であるため、次のように簡略化できます。
users::condition::ga:country==Canada,ga:country==Mexico

条件のディメンションが同じであるため、正規表現を使用して次のように簡素化できます。
users::condition::ga:country=~Canada|Mexico

シーケンス

シーケンスを使うと、逐次的な条件群に基づいてユーザーやセッションを選択できます。

モバイルでアクセスした直後にパソコンでアクセスしたユーザーを選択します。
users::sequence::ga:deviceCategory==mobile;–>ga:deviceCategory==desktop

3 人のユーザーのうち 2 人目のユーザーとそのすべてのセッションがセグメントに含まれます。これは、セッションをまたいで次のステップが連続して発生した場合にセッション レベルのシーケンスが一致するためです。残りのユーザーとそのセッションは除外されます。
図 12: 複数のステップが次々と続くマッチング シーケンス

モバイルでアクセスした後にパソコンでアクセスしたユーザーを選択します。
users::sequence::ga:deviceCategory==mobile;–>>ga:deviceCategory==desktop

セッション レベルのシーケンスが一致するため、3 人のユーザーのうち 1 人目と 2 人目のユーザーとそのすべてのセッションがセグメントに含まれます。残りのユーザーとそのセッションは除外されます。
図 13: 複数のステップが次々と続くマッチング シーケンス

ユーザーとセッションの併用

ユーザーとセッションを選択してセグメントを作成できます。最初にユーザーを選択して、ユーザーのサブセットとしてセッションを選択します。

モバイルからアクセスした後にパソコンからサイトを訪問したユーザーの 1 回のトランザクションの合計収益が 1 万円を超えるセッションを選択します。
users::sequence::ga:deviceCategory==mobile;->>ga:deviceCategory==desktop;sessions::condition::perHit::ga:transactionRevenue>100

次のステップ

セグメントの構文の詳細情報と、Core Reporting API でセグメントのクエリを行う方法については、セグメントに関するデベロッパー ガイドをご確認ください。