基於PowerBI構建動態客戶價值模型RFM驅動客戶營銷

基於PowerBI構建動態客戶價值模型RFM驅動客戶營銷

來自專欄 簡快Excel之PowerBI建模分析

作者:佐羅

概述

在眾多的客戶中找到重點客戶以及對客戶進行動態分類,而後分而治之。

根據美國資料庫營銷研究所Arthur Hughes的研究,客戶資料庫中有三個神奇的要素,這三個要素構成了數據分析最好的指標:

  • 最近一次消費(Recency)
  • 消費頻率(Frequency)
  • 消費金額(Monetary)

因此,稱該研究模型為:RFM

最近一次消費:最近一次消費意指上一次購買的時候,顧客上一次是幾時來店裡、上一次根據哪本郵購目錄購買東西、什麼時候買的車,或在你的超市買早餐最近的一次是什麼時候。

消費頻率:消費頻率是顧客在限定的期間內所購買的次數。我們可以說最常購買的顧客,也是滿意度最高的顧客。如果相信品牌及商店忠誠度的話,最常購買的消費者,忠誠度也就最高。增加顧客購買的次數意味著從競爭對手處偷取市場佔有率,由別人的手中賺取營業額。

消費金額:消費金額是所有資料庫報告的支柱,也可以驗證「帕雷托法則」(Pareto』s Law)——公司80%的收入來自20%的顧客。它顯示出排名前10%的顧客所花費的金額比下一個等級者多出至少2倍,占公司所有營業額的40%以上。如看累計百分比的那一欄,我們會發現有40%的顧客貢獻公司總營業額的80%;而有60%的客戶占營業額的90%以上。

因此,最近一次消費、消費頻率、消費金額是測算消費者價值最重要也是最容易的方法,這充分的表現了這三個指標對營銷活動的指導意義。而其中,最近一次消費是最有力的預測指標。

RFM分群

在實際操作中,可以定義:

  • R:一段時間內,客戶最近一次交易日期,與時間段終點越近越好
  • F:一段時間內,客戶交易的次數,次數越多越好
  • M:一段時間內,客戶的交易度量(如:金額,利潤,利潤率),越大越好

首先,選定客戶群體的每個客戶,計算上述三個指標的值。

其次,從上述結果可以計算選定客戶群體的三個指標的(算術)平均值。

分群方法:

  • 對於某個客戶,如果其R值高於群體平均R值,則該客戶屬於R↑,反之屬於R↓。
  • 對於某個客戶,如果其F值高於群體平均F值,則該客戶屬於F↑,反之屬於F↓。
  • 對於某個客戶,如果其M值高於群體平均M值,則該客戶屬於M↑,反之屬於M↓。

將上述客戶裝入三維空間,則可以形成如下的分群結構:

並作出如下的業務定義:

  • R↑F↑M↑:重要價值客戶
  • R↑F↑M↓:一般價值客戶
  • R↑F↓M↑:重要發展客戶
  • R↑F↓M↓:一般發展客戶
  • R↓F↑M↑:重要保持客戶
  • R↓F↑M↓:一般保持客戶
  • R↓F↓M↑:重要挽留客戶
  • R↓F↓M↓:一般挽留客戶

這裡的業務語義非常清晰,可以直接指導業務對不同群體的客戶產生影響的營銷改善策略。

所需要的表

做RFM計算,最小程度只需要依賴於一個表即可:訂單表。實際中,可以是一種分表的結構,以PowerBI結構為例,如下:

這是一個非常簡單的結構:一個客戶可能產生多個訂單,每個訂單有多條訂單明細。

PowerBI RFM 模型展示

在PowerBI的實現中,可以通過動態的參數化設置,將RFM模型進一步增強以適應更靈活的業務需要:

  • 通過滑桿設定考察RFM的時間範圍
  • 通過滑桿設定RFM的三個分指標的相對權重
  • 通過滑桿設定默認顯示的RFM TOP X具體客戶

時間段

默認情況下,RFM中對R的計算是相對於當前時間的,但對歷史進行計算的時候就需要選定一個時間段了。

RFM權重

RFM不同分指標的R、F、M的權重可能不同,改變RFM的權重可以完全影響客戶的分類結果:

對於 R優先 的情況:

對於 M優先 的情況:

可以看出,分類的結果形態發生了質變。這也是在現實的業務中需要這種動態性的支撐。

參數設置

可以通過PowerBI參數法來實現動態的參數話設置。並使用全局同步切片器來完成參數的同步效果。

DAX

RFM可以通過DAX進行計算,本案例全部使用度量值完成(沒有計算列),使得計算保持動態性。對RFM三個指標的計算在DAX中非常簡單,如下:

RFM.R =AVERAGEX ( DISTINCT ( 客戶[客戶名稱] ), CALCULATE ( AVERAGEX ( 訂單頭, DATEDIFF ( [訂單日期], LASTDATE ( RFM日期[Date] ), DAY ) ), TREATAS ( VALUES ( RFM日期[Date] ), 訂單頭[訂單日期] ) ))RFM.F =AVERAGEX ( DISTINCT ( 客戶[客戶名稱] ), CALCULATE ( COUNTROWS ( 訂單頭 ), TREATAS ( VALUES ( RFM日期[Date] ), 訂單頭[訂單日期] ) ))RFM.M =AVERAGEX ( DISTINCT ( 客戶[客戶名稱] ), CALCULATE ( SUM ( 訂單頭[訂單金額] ), TREATAS ( VALUES ( RFM日期[Date] ), 訂單頭[訂單日期] ) ))

RFM核心計算使用的DAX非常簡單,其他動態擴展需要額外的一些DAX計算式來輔助完成。

思考:從上述DAX中可以卡出本案例並非完美,在實際業務中,可能需要按某種產品類別、品牌、門店來計算RFM,但需要DAX表達式兼顧這些,讀者可自行思考如果基於上述的DAX來優化。

總結

動態效果展示:

該案例進一步證明PowerBI DAX數據建模不同於一般自助BI工具,它使業務人員可以藉助PowerBI強大的數據建模能力使用DAX建立RFM模型,並通過PowerBI可視化及動態參數賦予RFM模型動態性。

歡迎一起交流

weixin.qq.com/r/GXiVjTf (二維碼自動識別)

如需案例源文件,轉發後私信獲取

weixin.qq.com/r/qDqLk2L (二維碼自動識別)


推薦閱讀:

競品分析到底在分析什麼?
在這個知識焦慮的時代,我為什麼選擇學習數據分析
數據分析學習第2關:Python環境配置和基礎學習
大數據精準營銷三部曲
SQL查詢實例

TAG:PowerBI | 數據分析 |