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 Lifecycle

User Lifecycle (Lifecycle) classifies users into stages by activity status and reports the distribution across stages, answering "which lifecycle stage is a user in". It corresponds to the backend AnalyticsService.Lifecycle.


1. What Questions It Answers

  • Among current users, how many are new, how many are active long-time users, and how many have churned?
  • Is the share of churned-stage users growing? (churn early warning)
  • How many users have been reactivated (previously churned but came back)?

2. Lifecycle Stages

StageIdentifierMeaning
New usernew_userRegistered within the last new_user_days (default 7 days)
ActiveactiveRecently active, not a new user
RetainedretainedContinuously active long-time user
ChurnedchurnedLast active more than churn_days ago (default 30 days)
ReactivatedreactivatedPreviously churned, recently active again

The reference date for classification is time_range.end_ms (treated as "today").


3. Backend API

gRPC: AnalyticsService.Lifecycle

FieldTypeDescription
time_rangeTimeRangeTime range (end_ms is the reference date)
app_iduint32 (optional)Filter by app
new_user_daysuint32 (optional)Days defining a new user, default 7
churn_daysuint32 (optional)Days defining churn, default 30

Response LifecycleResponse: stages[] (LifecycleStage contains stage / stage_label Chinese name / user_count / percentage), total_users.

HTTP (admin proxy)

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

{
  "timeRange": { "startMs": 1718169600000, "endMs": 1718774399000 },
  "newUserDays": 7,
  "churnDays": 30
}

4. Typical Scenarios

User health overview

Query the current stage distribution and plot it as a pie chart. The ideal structure is dominated by "active + retained", with a steady inflow of new users and a controlled churn share.

Churn early-warning monitoring

Compare the churned-stage share across points in time; if the churned share keeps rising, trigger a churn alert and drill deeper with Churn & Reactivation Analysis.

Onboarding effectiveness evaluation

Adjust new_user_days and watch how the new-user stage size changes to evaluate acquisition and onboarding effectiveness.


5. Notes and Caveats

  • Thresholds are adjustable: new_user_days and churn_days determine stage classification; different businesses (high-frequency tools vs low-frequency SaaS) should use different thresholds.
  • The reference date is end_ms: "today" is defined by time_range.end_ms, not the server's real time.
  • Depends on activity records: stage classification is based on each user's last active time, and requires events to be reported continuously to be accurate.
  • Stages are mutually exclusive: each user belongs to exactly one stage; the sum of all stages' user_count equals total_users.

6. Related Documents

  • Churn & Reactivation Analysis
  • New vs Returning Users
  • User Segmentation
  • Data Analyst Getting Started Guide
  • Backend API Contract
Edit this page
Last Updated:: 11/3/26, 2:14 PM
Contributors: Bobo
Next
Churn & Reactivation Analysis