客戶分群(Customer Segmentation)是資料科學在商業場景中最直接、最高 ROI 的應用之一。它讓你把「所有用戶一視同仁」的粗放策略,升級為「不同群體、不同對待」的精準打法。本文以東南亞超級應用 Grab 為例,從商業思維出發,完整拆解客戶分群的策略框架。
注意:文中所有數據皆為假設,僅供說明分析方法使用。Grab 的實際業務數據未公開。
什麼是客戶分群?
客戶分群是把用戶依照行為、屬性或價值的相似度,劃分成若干個有意義的群體。每個群體內部的用戶盡量相似,群體之間盡量不同。
所有用戶(100%)
│
┌────────────────┼────────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ 高價值 │ │ 成長型 │ │ 沈睡型 │
│ 用戶 │ │ 用戶 │ │ 用戶 │
│ 15% │ │ 45% │ │ 40% │
└─────────┘ └─────────┘ └─────────┘
│ │ │
VIP 計畫 交叉銷售 喚醒活動
專屬客服 升級引導 低成本觸達核心理念很簡單:不是每個用戶都值得同等投入。把資源集中在最有價值、最有成長潛力的群體,整體 ROI 自然提升。
分群 vs. 個體化
| 維度 | 分群(Segmentation) | 個體化(Personalization) |
|---|---|---|
| 粒度 | 群體(數千~數十萬人) | 個人 |
| 複雜度 | 中等 | 高(需要推薦系統) |
| 適用場景 | 行銷策略、產品規劃、定價 | 推薦、動態定價、個人化推播 |
| 數據需求 | 中等 | 大量即時行為數據 |
| 落地速度 | 快(1-2 週可產出) | 慢(需要完整 ML pipeline) |
實務建議:先做分群,再做個體化。分群是 80/20 法則的最佳實踐 — 用 20% 的複雜度,抓住 80% 的業務價值。
業務價值
- 行銷效率:針對高價值用戶加大投入,低活躍用戶用低成本觸達
- 產品決策:不同群體有不同需求,功能優先級因此不同
- 留存策略:識別流失風險群體,提前介入
- 定價策略:不同群體的價格敏感度不同
為什麼選 Grab?
Grab 是東南亞最大的超級應用,業務涵蓋叫車(GrabCar)、外送(GrabFood)、支付(GrabPay)、生鮮配送(GrabMart)與金融服務(GrabFinance)。
┌─────────────────────────────────────────────────────┐
│ Grab 超級應用 │
│ │
│ 🚗 GrabCar 🍔 GrabFood 💳 GrabPay │
│ 叫車/機車 外送平台 電子支付 │
│ │
│ 🛒 GrabMart 🏦 GrabFinance │
│ 生鮮雜貨 借貸/保險 │
│ │
│ ───────────────────────────────────────────── │
│ 同一個用戶可能同時使用 3-5 條業務線 │
│ → 行為組合豐富 → 分群價值更高 │
└─────────────────────────────────────────────────────┘一個用戶可能週一通勤叫 GrabCar、午餐叫 GrabFood、週末用 GrabMart 買菜、全程用 GrabPay 付款。這種多業務線交叉行為讓分群更有挑戰,也更有商業價值 — 你不只看單一行為,而是看用戶在整個生態系統中的角色。
分群的完整流程
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ 商業目標 │ → │ 數據準備 │ → │ 選擇方法 │ → │ 結果解讀 │ → │ 落地執行 │
│ 定義 │ │ 特徵工程 │ │ 建模分群 │ │ Persona │ │ 策略行動 │
└──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────────┘
▲ │
└────────────────── 定期迭代(每月/每季) ──────────────────┘很多團隊犯的錯誤是直接從「選擇方法」開始。但分群的起點是商業目標。你是想優化行銷預算分配?提升留存率?還是找到交叉銷售機會?目標不同,特徵選擇和分群策略就不同。
Step 1:定義商業目標
以 Grab 為例,常見的分群目標:
| 目標 | 關鍵問題 | 分群重點 |
|---|---|---|
| 行銷預算優化 | 哪些用戶值得更多投入? | 以價值(消費金額、頻率)為核心 |
| 留存提升 | 哪些用戶快流失了? | 以活躍度變化為核心 |
| 交叉銷售 | 只用叫車的用戶能導入外送嗎? | 以業務線使用組合為核心 |
| 新客培育 | 新用戶從試用到忠誠的路徑? | 以用戶生命週期為核心 |
本文目標:幫 Grab 找到不同業務線的用戶行為組合,制定跨業務線的交叉銷售策略。
Step 2:數據準備與特徵設計
可用數據源
┌──────────────────────────────────────────────────────────┐
│ Grab 數據全景 │
├──────────────┬──────────────┬──────────────┬────────────┤
│ 叫車數據 │ 外送數據 │ 支付數據 │ 用戶屬性 │
├──────────────┼──────────────┼──────────────┼────────────┤
│ 訂單數 │ 訂單數 │ 交易次數 │ 註冊天數 │
│ 總花費 │ 總花費 │ 交易總額 │ 城市 │
│ 最近訂單 │ 最近訂單 │ 線上/線下 │ 設備類型 │
│ 常用路線 │ 偏好菜系 │ 充值頻率 │ 推薦來源 │
│ 平均距離 │ 平均客單價 │ 綁卡狀態 │ 會員等級 │
└──────────────┴──────────────┴──────────────┴────────────┘特徵設計原則
原始數據不能直接拿來分群。好的特徵設計決定了分群的品質。
原則一:反映業務意義
不要用「過去 6 個月 GrabFood 訂單的標準差」這種數據科學家懂但業務團隊看不懂的特徵。好的特徵應該是:
- ✅ 總訂單數(活躍度)
- ✅ 總花費金額(價值)
- ✅ 最近一次活躍距今天數(流失風險)
- ✅ 叫車佔比 vs. 外送佔比(業務線偏好)
- ✅ 平均客單價(消費水平)
- ✅ GrabPay 使用率(生態黏著度)
原則二:時間窗口要一致
所有特徵應基於相同的時間窗口(例如過去 6 個月),否則比較沒有意義。
原則三:處理極端值
少數極端用戶(企業帳號、測試帳號、API 用戶)會嚴重扭曲分群結果。建群前需要做截尾處理(Winsorize)或移除。
Step 3:選擇分群方法
方法論比較
| 方法 | 原理 | 優點 | 缺點 | 適用場景 |
|---|---|---|---|---|
| RFM | 按最近消費、頻率、金額三維度打分 | 簡單直觀、無需建模 | 只看交易行為、維度固定 | 快速分群、電商 |
| K-Means | 最小化群內距離 | 速度快、可擴展 | 需預設群數 K、對異常值敏感 | 通用場景、大數據量 |
| DBSCAN | 基於密度的聚類 | 自動決定群數、能找異常值 | 參數敏感、高維效果差 | 異常檢測、不規則分布 |
| Hierarchical | 層次合併/分裂 | 可視化樹狀圖 | 計算量大 | 小數據集、探索性分析 |
| LTV-based | 按客戶生命週期價值分層 | 直接對應商業價值 | 需要 LTV 預測模型 | 訂閱制、高客單價 |
推薦策略:RFM 先行 + K-Means 深入
┌─────────────────────────────────────────────────────────────┐
│ 分群策略選擇路徑 │
│ │
│ 第一週:RFM 快速分群 │
│ ├── 3 個維度:最近消費 × 頻率 × 金額 │
│ ├── 每個維度分 5 等份,組合成分群標籤 │
│ ├── 產出:Champions / Loyal / At Risk / Hibernating │
│ └── 目的:建立直覺,讓團隊先有東西討論 │
│ │
│ 第二週:K-Means 多維分群 │
│ ├── 8+ 個維度:加入業務線偏好、支付行為、用戶屬性 │
│ ├── 用 Elbow Method + Silhouette Score 選最佳 K │
│ ├── 產出:更精細的 5-7 個群體 │
│ └── 目的:發現 RFM 看不到的隱藏模式 │
│ │
│ 第三週:翻譯成 Persona + 制定策略 │
│ ├── 每個群體命名、建立用戶畫像 │
│ ├── 每個 Persona 配一套行動方案 │
│ └── 目的:讓業務團隊能直接執行 │
└─────────────────────────────────────────────────────────────┘Step 3a:RFM 快速分群
RFM 是最經典的客戶分群框架,三個維度:
- R(Recency):最近一次消費距今多久?越近越好。
- F(Frequency):消費頻率多高?越高越好。
- M(Monetary):消費金額多少?越高越好。
RFM 在 Grab 的應用
高頻率 (F)
▲
│
At Risk │ Champions
很久沒來 │ 最近買、常買、花很多
但以前常買 │ → VIP 計畫
│
─────────────┼──────────────→ 近期活躍 (R)
│
Hibernating │ New Customers
沈睡用戶 │ 最近才來、頻率低
已流失 │ → 新客培育
│將用戶在 R、F、M 三個維度各分成 5 等份(1-5 分),然後根據分數組合分配標籤:
| 分群 | R 分數 | F 分數 | M 分數 | 行動方案 |
|---|---|---|---|---|
| Champions | 4-5 | 4-5 | 4-5 | 獎勵忠誠、VIP 待遇 |
| Loyal Customers | 3-5 | 3-5 | 3-5 | 升級體驗、交叉銷售 |
| New Customers | 4-5 | 1-2 | — | 引導第二次消費 |
| At Risk | 1-2 | 3-5 | 3-5 | 喚回活動、調查流失原因 |
| Hibernating | 1-2 | 1-2 | 1-2 | 低成本觸達或放棄 |
RFM 的侷限
RFM 簡單有效,但有明顯限制:
- 只看交易行為:忽略了用戶的業務線偏好、支付行為等維度
- 分群邊界是人為設定的:閾值的選擇影響結果
- 無法發現隱藏模式:只能在 R/F/M 三維空間內分群
這就是為什麼我們需要 K-Means。
Step 3b:K-Means 多維分群
K-Means 能在任意多維空間中找到自然的群體邊界。
核心概念
Step 1 Step 2 Step 3
隨機選 K 個中心點 每個用戶歸到最近的 重新計算中心點
中心點
· · ★ ····· ★ ····· ★
· · ···· ····
· · ····· ·····
· ★ ····· ★ ····· ★
· · ···· ····
· · ····· ·····
重複 Step 2-3 直到收斂演算法會自動把相似的用戶聚在一起,不需要人為設定閾值。
關鍵決策:選擇 K 值
K 太少(例如 2-3):群體太粗,無法區分細緻差異 K 太多(例如 15+):群體太碎,業務團隊無法為每個群體制定策略
實務上的最佳平衡點通常在 K = 4~7。
兩種輔助工具:
| 方法 | 原理 | 怎麼看 |
|---|---|---|
| Elbow Method | 繪製不同 K 值對應的群內距離總和 | 找曲線「手肘」轉折點 |
| Silhouette Score | 衡量每個用戶與自己群體的緊密度 vs. 與其他群體的分離度 | 分數越高越好(0-1) |
K-Means 在 Grab 的應用
輸入 8 個特徵維度:
┌─────────────────────────────────────────────┐
│ K-Means 輸入特徵 │
├─────────────────────┬───────────────────────┤
│ 活躍度特徵 │ 業務偏好特徵 │
│ • 總訂單數 │ • 叫車佔比 │
│ • 總花費金額 │ • 外送佔比 │
│ • 最近活躍天數 │ • GrabPay 使用率 │
│ • 平均客單價 │ • 帳號年齡 │
└─────────────────────┴───────────────────────┘
│
┌────┴────┐
│ K-Means │
│ K = 5 │
└────┬────┘
│
┌─────┬───────┼───────┬─────┐
▼ ▼ ▼ ▼ ▼
群體1 群體2 群體3 群體4 群體5重要提醒:K-Means 對特徵尺度敏感。花費金額範圍可能是 0-5000,而叫車佔比範圍只有 0-1。必須先做標準化,確保每個維度對距離的貢獻相當。
Step 4:多業務線交叉分群 — Grab 的核心價值
這是超級應用場景的獨特優勢。單一業務線的公司只能看一個維度,但 Grab 可以同時分析用戶在叫車、外送、支付三條線上的行為組合。
業務線活躍度矩陣
外送活躍度
低 中 高
┌─────────┬─────────┬─────────┐
高 │ 通勤族 │ 均衡型 │ 超級用戶│
叫車 │ Commuter│ Balanced│ Super │
活躍度 中 │ 輕度叫車│ 一般用戶│ 外送偏好│
│ │ Moderate│ leaning │
低 │ 沈睡 │ 宅家 │ 外送族 │
│ Light │ 外送族 │ Food │
│ User │ │ Lover │
└─────────┴─────────┴─────────┘再疊加 GrabPay 使用率,就能更精準地識別用戶角色。
Step 5:Persona 建立與落地策略
把分群數字翻譯成業務語言,這是分群能否落地的決定性環節。
Grab 七大 Persona
┌─────────────────────────────────────────────────────────────┐
│ Persona │ 行為特徵 │ 估計佔比 │
├───────────────────┼───────────────────────┼────────────────┤
│ 🌟 Super User │ 叫車+外送+支付全高 │ ~8% │
│ 🚗 Commuter │ 叫車高、外送低 │ ~15% │
│ 🍔 Food Lover │ 外送高、叫車低 │ ~20% │
│ 💳 Pay Power User │ 支付高、訂單少 │ ~12% │
│ ⚖️ Balanced User │ 各業務線均衡使用 │ ~18% │
│ 💡 Light User │ 所有業務線都低 │ ~15% │
│ 📊 Moderate User │ 中度使用、無明顯偏好 │ ~12% │
└───────────────────┴───────────────────────┴────────────────┘每個 Persona 的策略藍圖
Super User(超級用戶)— 佔比 ~8%,貢獻 ~30% 營收
┌─ 目標:留存 + 提高 ARPU ─────────────────────────────────┐
│ │
│ 策略: │
│ • VIP 計畫(專屬客服、優先派車、免運費門檻降低) │
│ • 跨業務線訂閱包(叫車 + 外送月費方案,$29.9/月) │
│ • 驚喜與感謝(生日優惠、里程碑獎勵) │
│ │
│ 風險:一旦流失損失極大,需要專人監控活躍度變化 │
│ KPI:月活留存率 > 95%、ARPU 季增長 > 5% │
└───────────────────────────────────────────────────────────┘Commuter(通勤族)— 佔比 ~15%
┌─ 目標:交叉銷售外送 ──────────────────────────────────────┐
│ │
│ 洞察:每天通勤叫車,但很少用外送。 │
│ 可能的原因:不知道 GrabFood 的便利性 │
│ │
│ 策略: │
│ • 「下班順路叫外送」情境推播 │
│ • 午餐時段 GrabFood 首單 50% 折扣 │
│ • 叫車完成後彈出「順便帶份晚餐?」推薦 │
│ │
│ KPI:外送啟用率、外送轉換後 30 天留存 │
└───────────────────────────────────────────────────────────┘Food Lover(宅家外送族)— 佔比 ~20%
┌─ 目標:交叉銷售叫車 + 提升 GrabPay ──────────────────────┐
│ │
│ 洞察:高頻外送用戶,幾乎不叫車。 │
│ 可能是遠端工作者或在家工作。 │
│ │
│ 策略: │
│ • 週末出遊叫車折扣(「週末出去走走?首趟 $3 off」) │
│ • GrabPay 外送回饋加碼(用 GrabPay 付外送額外 5% 回饋) │
│ • GrabMart 交叉推薦(「叫完午餐,順便補貨?」) │
│ │
│ KPI:叫車啟用率、GrabPay 綁定率 │
└───────────────────────────────────────────────────────────┘Pay Power User(支付族)— 佔比 ~12%
┌─ 目標:導入交易業務 ──────────────────────────────────────┐
│ │
│ 洞察:主要用 GrabPay 做日常支付(便利商店、餐廳), │
│ 但很少叫車或外送。金融黏著度高。 │
│ │
│ 策略: │
│ • GrabPay 專屬叫車/外送折扣(「用 GrabPay 付款省 15%」)│
│ • 消費達標送乘車券(「本月 GrabPay 消費滿 $200 送 $5」)│
│ • GrabFinance 產品推薦(信用額度、保險) │
│ │
│ KPI:訂單啟用率、GrabPay 交易量增長 │
└───────────────────────────────────────────────────────────┘Light User(輕度用戶)— 佔比 ~15%
┌─ 目標:激活 ──────────────────────────────────────────────┐
│ │
│ 洞察:偶爾使用或剛註冊不久。尚未養成使用習慣。 │
│ │
│ 策略: │
│ • 新手任務系統(「完成 3 趟叫車解鎖 $5 折扣」) │
│ • 限時新用戶優惠(7 天內享 3 次免運費) │
│ • 推薦獎勵機制(邀請朋友雙方各得 $5) │
│ │
│ 注意:控制補貼成本,避免吸引只為優惠而來的用戶 │
│ KPI:30 天內第 3 次訂單完成率 │
└───────────────────────────────────────────────────────────┘Balanced User(均衡用戶)— 佔比 ~18%
┌─ 目標:穩定留存 + 推升到 Super User ─────────────────────┐
│ │
│ 洞察:多業務線均衡使用,是最有潛力升級的群體。 │
│ │
│ 策略: │
│ • 忠誠積分計畫(跨業務線消費統一累積) │
│ • 多業務線里程碑獎勵(「本月使用 3 條業務線送 bonus」) │
│ • 個人化推薦(根據使用模式推最可能感興趣的業務線) │
│ │
│ KPI:跨業務線使用頻率、Super User 升級率 │
└───────────────────────────────────────────────────────────┘Step 6:衡量與迭代
群體遷移矩陣
分群不是做完就結束。最關鍵的衡量工具是群體遷移矩陣 — 追蹤用戶在不同時期之間的群體變化。
本季分群
Super Balanced Light At Risk
上 Super [85%] 10% 2% 3%
季 Balanced 8% [72%] 12% 8%
分 Light 2% 15% [65%] 18%
群 At Risk 1% 5% 20% [74%]
對角線 = 留在原群體的比例
非對角線 = 遷移到其他群體的比例怎麼看這張表?
- Super → Super 85%:超級用戶留存率不錯
- Light → Balanced 15%:輕度用戶激活計畫有 15% 轉化
- Balanced → At Risk 8%:有 8% 的均衡用戶開始流失 — 需要調查原因
- At Risk → Light 20%:流失風險用戶有 20% 進一步惡化
這張表直接告訴你:哪些策略有效、哪些群體需要更多關注。
A/B 測試框架
每個 Persona 的策略都應該通過 A/B 測試驗證:
┌──────────────────────────────────────────────────┐
│ A/B 測試設計 │
│ │
│ 對象:Commuter 群體(~15% 用戶) │
│ 假設:「下班推播 GrabFood」能提升外送啟用率 │
│ │
│ A 組(控制組):不推播 │
│ B 組(實驗組):下午 5-7 點推播 GrabFood 優惠 │
│ │
│ 指標: │
│ • 主指標:外送啟用率(7 天內首次外送訂單) │
│ • 次指標:推播後 30 天外送留存率 │
│ • 護欄指標:叫車頻率不下降、退訂率不上升 │
│ │
│ 樣本量:每組 2,000 人,跑 2 週 │
└──────────────────────────────────────────────────┘常見陷阱
1. 特徵選擇偏差
只用消費金額分群,會把「低頻高客單」和「高頻低客單」混在一起。
→ 解法:同時納入頻率、時間、行為類型等多維度特徵。
2. K 值選太多
K=15 的分群結果看起來很精細,但行銷團隊無法為 15 個群體各設計一套策略。
→ 解法:K=4~7 通常是最佳平衡。分群的目標是可行動,不是最小化數學誤差。
3. 忽略時間維度
一個 6 個月前的重度用戶,現在可能已經流失了。靜態分群會把他歸為「高價值」。
→ 解法:加入 Recency 作為關鍵特徵;定期重新分群(每月/每季)。
4. 分群結果不可行動
「Cluster 3 的 avg_order_value 是 $23.7」 — 行銷團隊無法用這個做任何事。
→ 解法:每個群體必須有一個易懂的標籤和明確的行動方案。數據科學家的工作不是跑完模型就好,而是把結果翻譯成業務語言。
5. 只做一次就不更新
用戶行為會隨時間改變。半年前的 Super User 可能已經變成 Light User。
→ 解法:建立分群 pipeline,定期重新執行,用群體遷移矩陣追蹤變化。
6. 忽略分群之間的大小平衡
如果一個群體佔了 60% 用戶,另一個只有 2%,那分群的區分度不夠。
→ 解法:檢查每個群體的大小,確保分布相對均衡。如果某群太大,考慮進一步細分。
結論:分群是一套持續運轉的業務系統
┌─────────────────────────────────────────────────────────────┐
│ │
│ Week 1 RFM 快速分群 → 建立直覺 │
│ ↓ │
│ Week 2 K-Means 多維分群 → 發現隱藏模式 │
│ ↓ │
│ Week 3 翻譯成 Persona → 制定策略 │
│ ↓ │
│ Week 4+ A/B 測試 → 衡量成效 → 迭代優化 │
│ ↓ │
│ 每月/每季 重新分群 → 追蹤群體遷移 │
│ │
└─────────────────────────────────────────────────────────────┘最重要的一點:分群的目標不是最小化 inertia 或最大化 Silhouette Score,而是讓業務團隊能看懂、能行動、能衡量。一個 K=5 但每個群體都有明確策略的分群,永遠比 K=20 但沒人知道怎麼用的分群更有價值。
好的客戶分群不是一份報告,而是一套持續運轉的決策引擎 — 它告訴你的團隊,現在應該對誰、做什麼、期望什麼結果。