GoWindGoWind
Home
Framework
GoWind Toolkit
  • Open Source

    • GoWind Admin (Admin Platform)
    • GoWind CMS (Content Management)
    • GoWind UBA (Behavior Analytics)
    • GoWind Shop (E-commerce)
    • GoWind Kanban (Kanban Boards)
    • GoWind Ledger (Personal Finance)
    • GoWind ShortPlay (Short Drama)
    • GoWind Ops (Operations Platform)
    • RushWind (Rust Ecosystem)
  • Open Core (Community + Enterprise)

    • GoWind OA (Office Collaboration)
    • GoWind ERP (Procure-to-Pay)
    • GoWind WMS (Warehousing)
  • Commercial

    • GoWind IM (Instant Messaging)
    • GoWind IoT (IoT Platform)
    • GoWind Edu (AI Education)
    • GoWind MES (Manufacturing Execution)
    • GoWind CDC (Data Pipeline)
    • GoWind SDP (Zero-Trust Gateway)
    • GoWind Quant (Quant Research)
    • GoWind Trade Radar (Export Sourcing)
    • GoWind Game Radar (Game Greenlight)
  • 简体中文
  • English
GitHub
Home
Framework
GoWind Toolkit
  • Open Source

    • GoWind Admin (Admin Platform)
    • GoWind CMS (Content Management)
    • GoWind UBA (Behavior Analytics)
    • GoWind Shop (E-commerce)
    • GoWind Kanban (Kanban Boards)
    • GoWind Ledger (Personal Finance)
    • GoWind ShortPlay (Short Drama)
    • GoWind Ops (Operations Platform)
    • RushWind (Rust Ecosystem)
  • Open Core (Community + Enterprise)

    • GoWind OA (Office Collaboration)
    • GoWind ERP (Procure-to-Pay)
    • GoWind WMS (Warehousing)
  • Commercial

    • GoWind IM (Instant Messaging)
    • GoWind IoT (IoT Platform)
    • GoWind Edu (AI Education)
    • GoWind MES (Manufacturing Execution)
    • GoWind CDC (Data Pipeline)
    • GoWind SDP (Zero-Trust Gateway)
    • GoWind Quant (Quant Research)
    • GoWind Trade Radar (Export Sourcing)
    • GoWind Game Radar (Game Greenlight)
  • 简体中文
  • English
GitHub
  • Introduction

    • GoWind UBA Product Introduction
  • Architecture Reference

    • UBA System Architecture
    • UBA Backend Module Overview
    • UBA Backend API Contract
    • UBA Frontend Architecture
  • Developer Guide

    • UBA Installation Guide
    • UBA Code Generation Pipeline Tutorial
    • Adding an External Service Tutorial
    • Adding a Business Entity Tutorial
    • Adding a Frontend Page Tutorial
  • Operations Guide

    • UBA Docker Deployment Guide
    • UBA Configuration Reference & Security Checklist
    • UBA PM2 Deployment Guide
    • UBA Superset BI Deployment Guide
  • Analyst Guide

    • Data Analyst Getting Started Guide
    • Basic Aggregation

      • Event Trend Analysis
      • Active Users Analysis
      • Group By Aggregation
    • Conversion & Paths

      • Funnel Analysis
      • Retention Analysis
      • Top Conversion Paths
      • Behavior Sequence Analysis
    • User Depth

      • Attribution Analysis
      • Distribution Analysis
      • User Segmentation
      • Click Heatmap
      • Interval Analysis
    • Lifecycle

      • User Lifecycle
      • Churn & Reactivation Analysis
      • New vs Returning Users
      • Matrix Quadrant Analysis
    • Revenue & Value

      • Revenue Analysis
      • Whale Tier (Payer Segmentation)
      • Historical LTV Analysis
    • Sessions & Anomalies

      • Session Analysis
      • Period-over-Period Comparison and Anomaly Detection
    • Gaming

      • Level Analysis (Game)
      • Server Retention (Game)
      • Online Stats Analysis (Game)
      • Economy Analysis (Game)
    • OLAP Cookbook
  • SDK Integration

    • Web SDK Integration Guide
    • C# SDK Integration Guide (Unity / Godot / .NET)
  • Appendix

    • UBA Appendix: Ports, Glossary, Known Limitations & FAQ

User Segmentation

User Segmentation (Segmentation) filters a list of target user IDs using conditions of the form "has / has not performed certain events". It corresponds to the backend AnalyticsService.Segmentation.


1. What Questions It Answers

  • Find users who "added to cart in the last 30 days but never ordered" (cart-abandonment audience) for win-back marketing.
  • Which are the highly active users who "logged in 3+ consecutive times in the last 7 days"?
  • Select players who completed level_5_finish but not level_6_finish (stuck players).

2. Segmentation Conditions

Condition TypeMeaningExample
include (has done)Events that must have been triggered (any one qualifies the user for the "has-done set")add_to_cart
exclude (has not done)Events that must not have been triggered (any one disqualifies the user)pay_success

Each condition (SegmentCondition) can carry min_times (minimum trigger count, default 1 = "has done").

Logic: a user is selected only if they satisfy "has done include" AND "has not done exclude".


3. Backend API

gRPC: AnalyticsService.Segmentation

FieldTypeDescription
time_rangeTimeRangeAnalysis time range
includeSegmentCondition[]Events that must have been done (with event_name / min_times)
excludeSegmentCondition[]Events that must not have been done
app_iduint32 (optional)Filter by app
limituint32 (optional)Maximum number of users returned, default 5000

Response SegmentationResponse: user_ids[] (list of matched user IDs), total (total matches).

HTTP (admin proxy)

POST /admin/v1/analytics/segmentation
Content-Type: application/json

{
  "timeRange": { "startMs": 1718169600000, "endMs": 1718774399000 },
  "include": [{ "eventName": "add_to_cart", "minTimes": 1 }],
  "exclude": [{ "eventName": "pay_success", "minTimes": 1 }],
  "limit": 1000
}

4. Typical Scenarios

Churn win-back audience

include=cart_add, exclude=pay_success: select users who added to cart without paying, then push coupons to them.

High-value active audience

include=[{eventName: app_open, minTimes: 3}]: users who opened the app 3+ times in the last 7 days.

Stuck players

include=level_5_finish, exclude=level_6_finish: players who passed level 5 but are stuck at level 6.


5. Notes and Caveats

  • total vs user_ids: total is the total number of matches; user_ids is truncated by limit — for large audiences only the first N IDs are returned.
  • Behavior, not attributes: Segmentation is based on "has/has not performed events", not static user attributes (e.g. age, region). For the latter, query the users_dim table in Superset.
  • Time range: both "has done" and "has not done" are judged within time_range; behavior outside the interval does not count.
  • Combine with behavior sequences for drill-down: after selecting an audience, use Behavior Sequence to inspect an individual user's full behavior.

6. Related Documents

  • Behavior Sequence
  • User Lifecycle
  • Data Analyst Getting Started Guide
  • Backend API Contract
Edit this page
Last Updated:: 11/3/26, 2:14 PM
Contributors: Bobo
Prev
Distribution Analysis
Next
Click Heatmap