web-dev-qa-db-ja.com

Google Analyticsでユーザーの状態と購入を追跡するにはどうすればよいですか?

Googleアナリティクスで簡単なサブスクリプション製品を追跡し、(a)ユーザーの状態、および(b)サブスクリプションのコンバージョン率を最適に追跡する方法を決定する必要があります。

ユーザーはいつでも次のことができます。

  1. ゲスト:ログアウト
  2. メンバー:ログインしていますが、有料サブスクリプションではありません
  3. 購読者:有料購読の場合

session-level Custom Dimension( "User State")を使用してこれを追跡する予定です。ユーザーが1つのカテゴリから別のカテゴリに移動すると値が変わります。

さらに、非サブスクライバーはいつでもサブスクリプションを購入できます。これは、目標に関連付けられたイベント(「購入プラン」)を通じて登録されます。

私の質問は:

  1. ユーザー状態にヒットレベル、セッションレベル、またはユーザーレベルのカスタムディメンションを使用する必要がありますか?
  2. セッションレベルまたはユーザーレベルのディメンションを使用している場合、ユーザーがセッション中にログアウトし、アクティビティ全体が「ゲスト」として分類されるケースに対処するにはどうすればよいですか?たとえば、「購読者」が20ページを表示してからログアウトすると、すぐにそのセッション全体が「ゲスト」セッションとして配置されます。
  3. 「購入プラン」のコンバージョン率を見ると、クリーンレートを取得するために、分母から既存のサブスクライバーを除外できますか?

この最後のケースでは、「ユーザータイプ=ゲストまたはメンバーを持つユーザーを含める」ように設定されたアドバンスセグメントを使用して、このセグメントのコンバージョン率を調べます。

ただし、サブスクリプションを購入したユーザーはすぐにUser State = Subscriberに変更されるため、(セッションレベルまたはユーザーレベルの)スコープカスタムディメンション全体がそのように分類され、アドバンスセグメントは価値がなくなります(つまり、ユーザーのそのセグメントにはアクティビティは存在しません)。

もう1つのオプションは、代わりにユーザー状態をヒットレベルのスコープに設定して、サブスクリプションイベントの前後でユーザーのアクティビティを区別できるようにすることです。

この状況にどのように対処できますか?どんな助けも大歓迎です。

2
Ralph

それは本当にあなたが期待するクエリに要約されます。

ヒットスコープを使用すると、セッション内で実行されるアクションを区別するセグメントを作成できます。したがって、ユーザーはゲストとして開始し、ログインしてメンバーになり、サブスクリプションの支払いをしてサブスクライバーになり、最後にログアウトして再びゲストになることができます。ヒットスコープディメンションを使用すると、これらすべてをクエリできますが、クエリは非常に複雑になる可能性があります。

セッションスコープを使用する場合、カスタムディメンションに最後に送信した値がセッション全体に適用されます。したがって、粒度が失われます。セッションスコープの良い点は、一度送信するだけで済むことです。セッションのすべてのヒットに自動的に適用されます。

ユーザースコープはセッションスコープに似ていますが、ユーザーが同じクライアントIDを持っている限り、最初に設定されたときから適用されます。

これにどのようにアプローチするかは、3つのレベルを調べることです。メンバーとサブスクリプションは明らかにユーザーを対象としています。なぜなら、あなたがいる場合は、アップグレードするまでその中にいるからですよね?

一方、ゲストはユーザーレベルについては何も伝えません。サブスクライバーである可能性がありますが、ログインしていません。

だからここに私がそれを追跡する方法がある

1)ゲストをまったく追跡しません。ユーザー状態のカスタムディメンションにMember | Subscriberが含まれていないすべてのセッションのセグメントを作成することにより、ゲストを照会できます。

2)メンバーとサブスクライバーをユーザースコープのディメンションとして追跡します。

3)イベントとしてログインとログアウトを追跡し、現在のユーザー状態をイベントラベルまたはヒットスコープのカスタムディメンションとして送信します。

これら3つを使用すると、次のことができます。

  • ユーザーがログインしなかったセッションを追跡し(イベントカテゴリ=ログインのセッションを除外)、ユーザースコープのディメンションと組み合わせて、メンバーとサブスクライバーがログインせずにサイトを閲覧する頻度を確認することもできます。

  • ログインしていないセッションでもメンバーとサブスクライバーのトラフィックを追跡します(ユーザースコープのディメンションのおかげ)

  • ユーザーがメンバーとしてログインしたセッション(イベントカテゴリがログインで、イベントラベルがメンバーであるセッションを含む)を追跡しますが、状態はサブスクライバーです。これは、これらのセッションがユーザーがサブスクリプションをアップグレードしたことを意味します。

等々。

シモ

1
Simo Ahava

この回答は、@ Simo Ahavaによる優れた回答と、外部ディスカッションに投稿したアプローチ( Advertiser Community Thread )に基づいています。

簡単な背景:

ユーザーが各状態(「ゲスト」、「メンバー」、「サブスクライバー」)で閲覧すると、まったく異なるエクスペリエンスが得られるため、セッション中に状態間でアクティビティを区別することが重要です。したがって、セッションまたはユーザースコープのカスタムディメンションのみに依存することに対する私の最初の不安。

BigQueryのGAデータにもアクセスできるため、ヒットレベルでユーザーの状態を追跡することは、より詳細な分析に役立ちます。

修正された追跡アプローチ:

2つのカスタムディメンションを設定できます。

  1. ユーザー状態(ユーザースコープ):値は「メンバー」または「サブスクライバー」であり、ユーザーがログアウトしてもリセットされません。ログアウト時にユーザーが再分類されるのを避けるために「ゲスト」を設定しないというSimoのアイデアが好きです。サブスクライバーはいつでもダウングレードでき、「メンバー」として分類されますが、それでいいと思います。

  2. ページ状態(ヒットスコープ):値は「Guest」、「Member」、または「Subscriber」のいずれかで、ディメンションはすべてのページおよびイベントヒットで送信されます。

「登録済み」、「ログイン済み」、「購入済みプラン」、「ログアウト済み」のイベントも送信します。登録およびログインイベントで既にイベントラベルを使用して、認証の種類(サイトアカウント、Facebookなど)を示しています。

ページ状態ディメンションを使用すると、Simoの質問に答えるのに役立つアドバンスセグメントを作成できるようになるはずです。

任意の期間...

  1. メンバーセッションのコンバージョン率はいくらですか? (ページ状態=メンバーおよびイベントアクション=購入プランのセッションを含む)
  2. ログアウトしてログインしたことがないサイトを閲覧したサブスクライバーの数(ユーザー状態=サブスクライバーおよびページ状態=ゲストおよびイベントアクション!=ログインまたは登録済みのセッションを含む)
  3. ユーザーがメンバーとしてログインしているが、状態はサブスクライバーであるセッションはいくつありますか? (ユーザー状態=サブスクライバ、およびページ状態のシーケンス=「メンバー」の後にイベントアクション「ログイン」が続くセッションを含む)
  4. ユーザーがプランを購入したセッションの「メンバー」ページビューと「サブスクライバー」ページビューの内訳は何ですか? (カスタムレポートを使用するか、Big Queryで「購入プラン」イベントが発生したセッションを確認し、ページ状態=メンバー対ページ状態=サブスクライバーのページビューをカウントする)

このアプローチには欠点がありますか?

1
Ralph