營收建構(驅動式預測)
使用時機
當營收應從實際營運驅動因子(而非單一成長百分比)由下而上建構時使用:例如來自行銷支出或漏斗的客戶數、流失率、ARPU,或按產品線的數量乘以價格。適用於需要從驅動因子到營收頂線建立可防禦橋樑的營運計畫、ARR 預測及募資模型。此技能在 Claude 應用程式中使用 openpyxl 建立可下載的 .xlsx 檔案;不使用任何 Excel 增益集或 Microsoft 365 連線。
建構內容
一個包含六個索引標籤的活頁簿:
- 封面:標題、色彩圖例、情境選擇器、營收與成長摘要。
- 驅動因子:所有藍色輸入(起始客戶數、行銷支出、CAC 或漏斗轉換率、ARPU、流失率、價格、情境乘數)。
- 營收建構:逐期客戶或單位排程與營收。
- 摘要:年度營收、成長率、期末客戶數,以及生效中的情境。
- 敏感性分析:以新增客戶數與流失率為變數的資料表,呈現期末 ARR 或營收。
- 檢查:滾動遞迴恆等式與合理性標記。
建構工作流程
- 建立活頁簿及上述順序的六個索引標籤。
- 在「驅動因子」標籤中,以藍色標示每個輸入並附上單位;新增一個情境儲存格(1=Base,2=Bull,3=Bear)命名為
scn。 - 設定期間標題列(月份或季度)並在所有地方參照同一列。
- 在「營收建構」標籤中建立客戶或單位滾動排程:期初、新增、流失、期末。
- 根據排程計算每期營收(客戶數乘以 ARPU,或數量乘以價格)。
- 建立「摘要」標籤,將各期彙總為年度。
- 建立「敏感性分析」標籤作為原生的雙變數資料表。
- 建立「檢查」標籤,包含滾動遞迴恆等式與成長合理性測試。
- 使用 LibreOffice 無頭模式重新計算活頁簿,使所有公式計算出數值。
- 驗證無任何公式錯誤(#REF!、#DIV/0!、#VALUE!、#NAME?);修正錯誤並在迴圈中重新計算,然後交付。
各標籤規格
封面
- 標題儲存格、模型用途說明及建立日期。
- 色彩圖例區塊:藍色色塊標示「輸入」,黑色標示「公式」,綠色標示「跨索引標籤連結」。
- 情境回顯:
=CHOOSE(scn,"Base","Bull","Bear")從「驅動因子」標籤擷取生效中的情境。 - 摘要輸出以綠色跨索引標籤連結顯示:最新年度營收
=Summary!<最新營收儲存格>、期末客戶數及最終年度同比成長率。 - 一行說明文字,註明活頁簿可在 Excel 中即時重新計算,且建立時已驗證無錯誤。
驅動因子
- B2 儲存格為情境選擇器(藍色,1/2/3),命名為
scn。 - 起始客戶數 B5;每期 ARPU B6;每月流失率百分比 B7。
- 獲取:每期行銷支出 B8;CAC B9;來自支出的新增客戶數
=B8/B9(在「營收建構」標籤中計算,非此處)。 - 可選漏斗:潛在客戶數 B10,潛在客戶轉換率 B11。
- 情境乘數為一個 3 欄區塊(Base/Bull/Bear):新增乘數列 C14:E14,流失乘數列 C15:E15。活躍數值:B14
=CHOOSE(scn,C14,D14,E14),B15=CHOOSE(scn,C15,D15,E15)。 - 可選產品線區塊:每條產品線的價格與數量,用於數量乘以價格的建構。
營收建構
- 第 3 列為期間標題 1..N(單一系列,以下所有列參照此列)。
- 期初客戶數:第 1 期
=Drivers!B5;後續期數=<前一期期末儲存格>。 - 新增客戶數:
=Drivers!$B$8/Drivers!$B$9*Drivers!$B$14(支出除以 CAC 乘以活躍新增乘數),或漏斗=Drivers!$B$10*Drivers!$B$11*Drivers!$B$14。整列使用一致公式。 - 流失客戶數:
=期初*Drivers!$B$7*Drivers!$B$15(活躍流失乘數)。 - 期末客戶數:
=期初+新增-流失。 - 營收:
=期末*Drivers!$B$6(客戶數乘以 ARPU),或用於產品線=SUMPRODUCT(價格範圍,數量範圍)。 - ARR(若為訂閱模式):
=營收*12(當期間為月份時),或依情況年度化。
摘要
- 年度營收:
=SUM(<該年度 12 個月份營收儲存格>)。 - 同比成長率:
=今年/去年-1。 - 每年期末客戶數:透過跨索引標籤連結參照該年度最後一期的期末值。
- 生效中情境標籤:
=CHOOSE(scn,"Base","Bull","Bear")。
敏感性分析
- 左上角儲存格參照期末 ARR 或最終期營收
='Revenue Build'!<期末 ARR 儲存格>。 - 欄輸入:每期新增客戶數值。列輸入:流失率百分比值。
- 原生雙變數資料表,列輸入儲存格 = 驅動因子標籤的流失率,欄輸入儲存格 = 驅動因子標籤的新增客戶數驅動因子。
檢查
- 每期滾動遞迴:
=IF(期末=期初+新增-流失,"PASS","FAIL")涵蓋所有期間,然後=AND(...)。 - 連續性:
=IF(當期期初=前期期末,"PASS","FAIL")。 - 成長合理性:若任何同比成長率超過藍色上限輸入或低於下限,則標記。
- 每期客戶數與營收均為非負數。
公式與格式慣例
- 藍色字體用於輸入(僅「驅動因子」標籤)。黑色用於同標籤內公式。綠色用於跨索引標籤連結。
- 公式中不得使用硬編碼數字;常數應以藍色儲存格存在於「驅動因子」標籤。使用絕對參照(
$B$7)指向驅動因子儲存格,以便公式整列複製無需修改。 - 每列使用一致公式,以便水平複製無需編輯。
- 客戶數以整數顯示並加千分位分隔符;ARPU 與營收以貨幣格式顯示;流失率與成長率以百分比格式顯示。
- 命名
scn及期末 ARR 儲存格,以便「檢查」與「敏感性分析」標籤清晰讀取。
檢查項目
- 每期期末 = 期初 + 新增 - 流失(PASS/FAIL)。
- 每期期初等於前期期末。
- 同比成長率位於合理範圍內。
- 客戶數與營收永不為負;流失率介於 0 與 1 之間。
重新計算與驗證
寫入完成後,使用 LibreOffice 無頭模式重新計算,使 openpyxl 公式文字轉換為計算值。掃描每個工作表是否有 #REF!、#DIV/0!、#VALUE!、#NAME?。修正任何錯誤公式或遺漏的命名範圍,並在迴圈中重新計算。僅在「檢查」標籤顯示全部 PASS 且無錯誤字串時交付。
需收集的輸入
- 起始客戶數或單位數,以及 ARPU 或每條產品線價格。
- 獲取機制:行銷支出與 CAC,或漏斗(潛在客戶數與轉換率)。
- 每期流失率及期間長度(月或季)。
- 新增與流失的情境乘數(Base/Bull/Bear)。
- 預測期間數。
範例
假設:起始 1,000 名客戶,ARPU 每月 50 元,每月流失率 3%。每月行銷支出 100,000 元,CAC 為 500 元,因此每月新增 200 名客戶。第 1 個月流失約 30 名客戶,期末約 1,170 名。在 Base 情境下,36 個月內客戶數增加,每月營收成長;Bull 情境套用 1.2 倍新增乘數與 0.8 倍流失乘數。敏感性分析彈性調整新增客戶數從 150 到 300,流失率從 2% 到 5%,以顯示期末 ARR。