RFM 模型用戶分層提示詞(最近消費、消費頻次、消費金額打分規則 + SQL / pandas 實現 + 八類客戶運營策略)

電商、零售、會員制業務想把客戶分成「重要價值客戶」「需要喚回的客戶」等幾類,分別制定營銷策略時用:AI 根據你的訂單數據和業務週期確定 R、F、M 的計算口徑與分段閾值,寫出計算代碼,輸出各類客戶的規模與特徵,並給出每類客戶的運營動作和效果評估方法。

NNathaniel bigo··原創首發·AI 輔助撰寫
通用大模型 對話模型通用
你是一名有零售和電商經驗的用戶運營數據分析師。請幫我做一次 RFM 客戶分層。

- 業務類型與購買週期:[業務與購買週期](例:母嬰電商,復購週期約 1 個月)
- 訂單數據的字段:[訂單字段](例:訂單號、用戶編號、支付時間、實付金額、訂單狀態)
- 數據時間範圍與規模:[時間範圍與規模]
- 實現工具:[實現工具](例:MySQL、Hive、pandas)
- 分層後的用途:[分層用途](例:給不同人群發不同的優惠券和短訊)

請按以下步驟:
1. 口徑定義:
   - 只統計有效訂單(排除未支付、已全額退款、測試訂單);
   - R:統計截止日距最近一次購買的天數;F:統計期內的購買次數(按訂單還是按天計,說明理由);M:統計期內的實付總額(是否扣除退款);
   - 統計期的長度根據購買週期確定。
2. 分段方法:按分位數打 1 到 5 分,或按業務閾值劃分(例如「30 天內購買過」),對比兩種方法的優缺點並給出建議;注意 F 值大量集中在 1 時分位數分段會失效,需要特殊處理。
3. 分群:按 R、F、M 各自高於或低於均值(或中位數)組合為八類客戶,給出每類的名稱、定義與典型特徵。
4. 計算代碼:用我選擇的工具寫出完整實現,包括清洗、計算、打分、分群。
5. 結果解讀模板:每類客戶的人數、佔比、貢獻的銷售額佔比,以及應該關注的現象(例如重要價值客戶佔比很小卻貢獻大部分銷售額)。
6. 運營策略:每一類給出具體的運營動作(觸達渠道、內容、優惠力度),避免對高價值客戶過度打折。
7. 效果評估:怎麼設定對照組,評估運營動作是否真的帶來了增量。
8. 侷限:RFM 不考慮商品品類和客戶生命週期,什麼情況下需要更復雜的模型。

高亮處換成你自己的內容:[業務與購買週期]、[訂單字段]、[時間範圍與規模]、[實現工具]、[分層用途]

ChatGPT Plus 充值

已被複製 0 次

使用說明

怎麼填變量:[業務與購買週期] 決定統計期和 R 的閾值:生鮮復購以周計,家電覆購以年計,用同一套閾值毫無意義。[訂單字段] 中一定要說明有沒有退款和訂單狀態字段,否則 M 值會被未支付和退款訂單誇大。

常見坑:

  • 很多業務中大部分客戶只買過一次,F 按五等分打分時,多個分段的邊界都是 1,分段失去意義。可以改為按「1 次、2 次、3 次及以上」這類業務閾值劃分。
  • 統計時包括了未支付、退款和測試訂單,高價值客戶名單裏混進了薅羊毛和刷單的帳號。
  • 分完層就直接給所有「流失客戶」發大額優惠券,沒有對照組,事後無法判斷是優惠券起了作用,還是他們本來就會回來。

追問技巧:追問「每個月自動更新一次分層,並輸出客戶在各層之間的流轉情況(例如從重要價值客戶掉到重要挽留客戶的人數)」。

示例輸出

示例,僅供參考(分群定義與策略節選)
類別RFM運營策略
重要價值客戶高高高專屬客服、新品優先體驗,避免頻繁打折
重要喚回客戶低高高曾經的高價值客戶,近期沒有購買:個性化召回與定向權益
重要發展客戶高低高剛完成大額消費:引導第二次購買
一般挽留客戶低低低低成本渠道觸達,控制營銷預算

(R「高」表示最近購買過,即距今天數少。)

sql
WITH base AS (
  SELECT user_id,
         DATEDIFF('2026-09-30', MAX(DATE(pay_time))) AS r_days,
         COUNT(DISTINCT order_id)                   AS f_cnt,
         SUM(paid_amount)                           AS m_amt
  FROM orders
  WHERE status = 'PAID' AND pay_time >= '2025-10-01' AND pay_time < '2026-10-01'
  GROUP BY user_id
)
SELECT *,
       CASE WHEN r_days <= 30 THEN 5 WHEN r_days <= 60 THEN 4 WHEN r_days <= 90 THEN 3
            WHEN r_days <= 180 THEN 2 ELSE 1 END AS r_score,
       CASE WHEN f_cnt >= 5 THEN 5 WHEN f_cnt >= 3 THEN 4 WHEN f_cnt = 2 THEN 3 ELSE 1 END AS f_score
FROM base;

同款作品

用這條提示詞做出來的作品;原作者會因此獲得積分

做同款

還沒有同款,來做第一個。

Nathaniel 的更多內容

同主題

同模型

0 條評論

登入 後參與評論

還沒有評論,來搶沙發~