commercial-forecaster

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

commercial-forecaster

commercial-forecaster

Purpose

用途

Help Commercial leaders answer three questions at the forecast moment:
  1. What's the commit / best-case / pipe-only number? (3-tier bookings forecast with disclosed assumptions)
  2. Which cohorts are leaking, and is the consolidated NRR hiding the leak? (per-cohort NRR/GRR projection over horizon)
  3. Which funnel stages are reliable, and which are statistical noise? (per-stage coefficient-of-variation confidence band)
The skill recommends three forecast numbers + an explicit assumption block. The CRO presents the number, the board sees the assumptions, the theatre dies.
帮助商业领导者在预测阶段回答三个问题:
  1. 承诺值/最佳情况值/仅管道值分别是多少?(包含公开假设的三层预订量预测)
  2. 哪些Cohort正在流失,汇总NRR是否掩盖了流失问题?(预测周期内的Cohort级NRR/GRR)
  3. 哪些漏斗阶段可靠,哪些是统计噪声?(基于变异系数的各阶段置信区间)
该工具建议输出三个预测数值 + 明确的假设模块。CRO展示数值,董事会查看假设,无需再做无依据的“表演”。

When to use

适用场景

  • Building the quarterly bookings forecast for the board
  • Preparing the QBR forecast where the CFO will ask "what's the commit, what's the best-case, what's the pipe-only"
  • Projecting ARR for next 4-8 quarters using cohort retention data
  • Suspecting a consolidated NRR number is hiding a leaky recent cohort
  • Pipeline-coverage is shrinking and you need to know which stages are still trustworthy
  • You're being asked for a "single number" and you need the structured answer that surfaces the assumption
Do not use for:
  • Backward-looking financial close + reporting →
    finance/financial-analysis
  • Strategic financial planning (multi-year, scenario, fundraise) →
    c-level-advisor/cfo-advisor
  • "Should we hire a VP Sales?" / territory design / comp plan →
    c-level-advisor/cro-advisor
  • Setting prices → sibling
    pricing-strategist
    (projects revenue at prices already set)
  • Per-deal discount approval → sibling
    deal-desk
  • 为董事会构建季度预订量预测
  • 准备QBR预测,此时CFO会询问“承诺值是多少,最佳情况值是多少,仅管道值是多少”
  • 利用Cohort留存数据预测未来4-8个季度的ARR
  • 怀疑汇总NRR数值掩盖了近期流失的Cohort
  • 销售管道覆盖率下降,需要了解哪些阶段仍值得信赖
  • 被要求提供“单一数字”时,需要结构化的答案来呈现背后的假设
不适用于:
  • 回顾性财务结账与报告 →
    finance/financial-analysis
  • 战略财务规划(多年期、场景分析、融资) →
    c-level-advisor/cfo-advisor
  • “我们是否应该招聘销售副总裁?”/区域设计/薪酬计划 →
    c-level-advisor/cro-advisor
  • 定价设置 → 同类工具
    pricing-strategist
    (基于已设定的价格预测收入)
  • 单笔交易折扣审批 → 同类工具
    deal-desk

Workflow

工作流程

Step 1 — Intake pipeline + cohort + historical conversion data

步骤1 — 导入管道、Cohort及历史转化率数据

Fill
assets/forecast_intake_template.md
(≈ 20 min). Captures: opportunity list with stage/amount/close-date/age/last-activity; historical stage-to-stage conversion across last 4Q and last 12Q; per-cohort ARR + per-quarter retention + expansion data; funnel stage names with 12-quarter conversion history.
填写
assets/forecast_intake_template.md
(约20分钟)。内容包括:包含阶段/金额/关闭日期/时长/最后活动时间的机会列表;过去4个季度和过去12个季度的跨阶段历史转化率;Cohort级ARR + 季度留存 + 拓展数据;包含12个季度转化历史的漏斗阶段名称。

Step 2 — Run 3-tier bookings forecast

步骤2 — 运行三层预订量预测

scripts/bookings_forecaster.py --input intake.json --profile saas --output markdown
Outputs three numbers — commit, best-case, pipe-only — each with the conversion rate applied, the data window used (last-4Q vs. last-12Q weighted 70/30), and the time-to-close probability adjustment. Surfaces variance between commit and pipe-only as the pipeline-risk indicator.
The assumption block is non-optional. If you remove it, the forecast becomes theatre.
scripts/bookings_forecaster.py --input intake.json --profile saas --output markdown
输出三个数值——承诺值最佳情况值仅管道值——每个数值都会标注所应用的转化率、使用的数据窗口(过去4季度 vs 过去12季度,权重70/30),以及关闭时间概率调整。承诺值与仅管道值之间的差异将作为管道风险指标呈现。
假设模块为必填项。如果移除该模块,预测就变成了无依据的“表演”。

Step 3 — Project cohort-level ARR

步骤3 — 预测Cohort级ARR

scripts/cohort_arr_projector.py --input intake.json --output markdown
Computes per-cohort NRR + GRR over the projection horizon. Flags any cohort whose NRR is declining vs. the trailing-cohort average — these are the leaky cohorts that the consolidated number will hide for 2-3 quarters before the leak surfaces in the topline.
Output includes the consolidated NRR/GRR trajectory + the cohort heatmap + a leaky-cohort callout.
scripts/cohort_arr_projector.py --input intake.json --output markdown
计算预测周期内的Cohort级NRR + GRR。标记任何NRR低于同期Cohort平均值的群体——这些就是被汇总数据掩盖的流失Cohort,其流失问题会在2-3个季度后才体现在整体数据中。
输出内容包括汇总NRR/GRR趋势 + Cohort热力图 + 流失Cohort标注。

Step 4 — Score per-stage funnel confidence

步骤4 — 为各漏斗阶段的可信度打分

scripts/funnel_confidence_scorer.py --input intake.json --output markdown
Per stage: mean conversion %, standard deviation, coefficient of variation (CoV = StDev / Mean), confidence band (HIGH < 10%, MEDIUM 10-25%, LOW 25-50%, VERY LOW > 50%). Recommends treatment per stage: extend-data-window, treat-as-soft-floor, or commit-quality.
scripts/funnel_confidence_scorer.py --input intake.json --output markdown
针对每个阶段:计算平均转化率、标准差、变异系数(CoV = 标准差 / 平均值)、置信区间(高可信度 < 10%,中等可信度10-25%,低可信度25-50%,极低可信度 > 50%)。针对每个阶段给出处理建议:扩展数据窗口、视为低可信度下限、或作为承诺级阶段。

Step 5 — Assemble the forecast deck

步骤5 — 组装预测汇报材料

Take the 3-tier bookings number + cohort heatmap + funnel confidence into the QBR / board deck. The assumption block goes on the slide with the number. If the slide has a single number and no assumption block, the slide is theatre.
将三层预订量数值 + Cohort热力图 + 漏斗可信度分析整合到QBR/董事会汇报材料中。假设模块必须与数值放在同一张幻灯片上。如果幻灯片只有单一数值而没有假设模块,那就是无依据的“表演”。

Scripts

脚本说明

  • scripts/bookings_forecaster.py
    — 3-tier bookings forecast (commit / best-case / pipe-only) with disclosed conversion-rate + data-window + weighting block
  • scripts/cohort_arr_projector.py
    — per-cohort NRR/GRR projection over horizon with leaky-cohort callout
  • scripts/funnel_confidence_scorer.py
    — per-stage CoV-based confidence bands with treatment recommendation
All scripts: stdlib only.
--help
and
--sample
work on all three.
  • scripts/bookings_forecaster.py
    — 三层预订量预测(承诺值/最佳情况值/仅管道值),附带公开的转化率、数据窗口及权重模块
  • scripts/cohort_arr_projector.py
    — 预测周期内的Cohort级NRR/GRR,附带流失Cohort标注
  • scripts/funnel_confidence_scorer.py
    — 基于变异系数的各阶段置信区间,附带处理建议
所有脚本:仅使用标准库。三个脚本均支持
--help
--sample
参数。

References

参考资料

  • references/saas_forecasting_canon.md
    — Skok, Tunguz, OpenView, BVP, Pacific Crest/KeyBanc, ProfitWell, Patrick Campbell
  • references/cohort_analysis_canon.md
    — Andrew Chen (a16z), Brian Balfour, Skok, Ramanujam, OpenView, Lenny Rachitsky, Reforge
  • references/forecast_anti_patterns.md
    — McKinsey, Tunguz, OpenView, MIT Sloan, Bain, Forrester, Pacific Crest
  • references/saas_forecasting_canon.md
    — Skok、Tunguz、OpenView、BVP、Pacific Crest/KeyBanc、ProfitWell、Patrick Campbell
  • references/cohort_analysis_canon.md
    — Andrew Chen(a16z)、Brian Balfour、Skok、Ramanujam、OpenView、Lenny Rachitsky、Reforge
  • references/forecast_anti_patterns.md
    — McKinsey、Tunguz、OpenView、MIT Sloan、Bain、Forrester、Pacific Crest

Assumptions

核心假设

  • Historical conversion is the prior, not the truth. Last 4Q is weighted 70%, last 12Q is weighted 30%. The blend captures regime change (recent slowdown) without overfitting to a single bad quarter. Window + weighting are surfaced in every output.
  • A forecast without a disclosed assumption block is theatre. This is the skill's hard rule. The CLI refuses to omit the assumption block.
  • Cohort decomposition reveals leaks 2-3 quarters before the consolidated number does. Reporting NRR without per-cohort breakdown hides the leak.
  • CoV (coefficient of variation) is the right discipline for stage confidence. A stage with mean conversion 40% and stdev 4% (CoV 10%) is HIGH confidence; mean 40% stdev 20% (CoV 50%) is VERY LOW. The same average masks very different reliability.
  • Industry profile tunes priors, not truth. Profile shifts default stage-conversion rates by industry; your historical data overrides.
  • The skill emits three numbers and an assumption block. The CRO picks the commit number, owns the trade-off, and walks the board through the variance.
  • 历史转化率是参考而非事实。过去4季度权重70%,过去12季度权重30%。这种混合方式既能捕捉近期变化(如增速放缓),又不会过度拟合单一表现不佳的季度。数据窗口和权重会在所有输出中明确标注。
  • 未附带公开假设模块的预测都是无依据的“表演”。这是该工具的硬性规则。CLI会拒绝省略假设模块。
  • Cohort拆解比汇总数据早2-3季度发现流失问题。仅报告NRR而不做Cohort拆解会掩盖流失问题。
  • 变异系数(CoV)是衡量阶段可信度的恰当指标。平均转化率40%、标准差4%(CoV 10%)的阶段属于高可信度;平均转化率40%、标准差20%(CoV 50%)的阶段属于极低可信度。相同的平均值背后可能是截然不同的可靠性。
  • 行业配置调整参考值而非事实。行业配置会根据行业调整默认阶段转化率;您的历史数据会覆盖默认值。
  • 该工具输出三个数值和一个假设模块。CRO选择承诺值,权衡利弊,并向董事会解释数值间的差异。

Anti-patterns

反模式

  • Single-number forecast with no confidence band. The board asks for "the number"; the discipline is to present three with named assumptions. See
    forecast_anti_patterns.md
    .
  • Using last-12-quarter conversion blindly. Hides recent slowdown. The 70/30 blend on last-4Q vs. last-12Q corrects this.
  • Reporting NRR without cohort decomposition. The consolidated number can be flat while a recent cohort is leaking 15 pp; the leak surfaces in the topline 2-3 quarters later. Always decompose.
  • Treating best-case as commit. The CFO will eat you. Best-case includes weighted-stage opps that have a < 50% time-to-close probability; commit only includes commit-grade stages.
  • Hiding the assumption block. The skill refuses; if you remove it manually, you own the theatre.
  • No leaky-cohort callout. If
    cohort_arr_projector.py
    flags a cohort and you suppress the flag in the deck, the leak owns you next quarter.
  • Ignoring late-stage opp age. A "verbal" deal that's been verbal for 180 days is not a commit. The bookings forecaster downweights stalled opps automatically; do not re-up them by hand.
  • No pipeline-coverage check. Industry rule of thumb: forecast > pipeline ÷ 3 is anti-pattern. The tool surfaces the ratio; respect it.
  • 仅提供单一数值预测而无置信区间。董事会要求“一个数字”,但正确的做法是呈现三个附带明确假设的数值。请参考
    forecast_anti_patterns.md
  • 盲目使用过去12季度的转化率。会掩盖近期增速放缓。过去4季度与过去12季度的70/30混合方式可纠正此问题。
  • 仅报告汇总NRR而不做Cohort拆解。汇总数据可能持平,但近期某个Cohort可能流失15个百分点;这种流失会在2-3个季度后才体现在整体数据中。必须进行拆解。
  • 将最佳情况值当作承诺值。CFO会质疑您。最佳情况值包含权重后关闭概率<50%的阶段机会;承诺值仅包含承诺级阶段的机会。
  • 隐藏假设模块。该工具会拒绝此类操作;如果您手动移除,就要承担无依据“表演”的风险。
  • 未标注流失Cohort。如果
    cohort_arr_projector.py
    标记了某个Cohort,而您在汇报材料中隐藏该标记,那么下季度流失问题会影响您的业绩。
  • 忽略晚期机会的停留时长。一个停留了180天的“口头协议”不能算作承诺。预订量预测工具会自动降低停滞机会的权重;请勿手动重新提升其权重。
  • 未检查管道覆盖率。行业经验法则:预测值 > 管道值 ÷3 属于反模式。该工具会呈现此比率;请予以重视。

Distinct from

与其他工具的区别

  • finance/financial-analysis
    — backward-looking financial close, GAAP/IFRS reporting, variance vs. budget. commercial-forecaster is forward-looking pipeline math.
  • c-level-advisor/cfo-advisor
    — strategic multi-year financial planning, fundraise scenarios, runway. commercial-forecaster is one input to the CFO, not the strategy.
  • c-level-advisor/cro-advisor
    — strategic CRO judgment: "do we hire a VP Sales?", territory design, comp plan, when to add a sales engineer. commercial-forecaster is the math the CRO uses; cro-advisor is the judgment the CRO applies.
  • sibling
    pricing-strategist
    — sets the price (model + range). commercial-forecaster projects revenue at those prices. Pricing comes first; forecast comes after.
  • sibling
    deal-desk
    — per-deal scoring + discount approval routing. commercial-forecaster aggregates the pipeline that deal-desk operates on day-by-day.
  • finance/financial-analysis
    — 回顾性财务结账、GAAP/IFRS报告、与预算的差异分析。commercial-forecaster是前瞻性的管道运算工具。
  • c-level-advisor/cfo-advisor
    — 战略多年期财务规划、融资场景分析、现金流规划。commercial-forecaster是CFO的输入之一,而非战略工具。
  • c-level-advisor/cro-advisor
    — CRO的战略判断:“我们是否应该招聘销售副总裁?”、区域设计、薪酬计划、何时添加销售工程师。commercial-forecaster是CRO使用的运算工具;cro-advisor是CRO应用的判断工具。
  • 同类工具**
    pricing-strategist
    ** — 设置价格(模型+范围)。commercial-forecaster基于已设定的价格预测收入。定价在前,预测在后。
  • 同类工具**
    deal-desk
    ** — 单笔交易评分+折扣审批路由。commercial-forecaster汇总deal-desk日常处理的管道数据。

Forcing-question library (Matt Pocock grill discipline)

强制问题库(Matt Pocock质询准则)

Walked one at a time by
/cs:grill-commercial
or the orchestrator. Recommended answer + canon citation per question. Never bundled.
  1. "What conversion rate are you using, and is it last-4Q or last-12Q?" Recommended: a 70/30 blend (last-4Q weighted 70%, last-12Q weighted 30%). Last-12Q alone hides recent slowdown; last-4Q alone overfits one bad quarter. Canon: Tomasz Tunguz (Theory Ventures) — forecasting studies show single-window conversion estimates miss regime change at ~3-quarter lag.
  2. "What's your pipeline coverage ratio, and is your commit above pipeline ÷ 3?" Recommended: 3x coverage is the SaaS-industry floor; below 3x means your commit is structurally unsupported. Canon: Pacific Crest / KeyBanc SaaS Survey — top-quartile SaaS companies maintain 3.0-4.5x pipeline coverage against committed bookings.
  3. "Can you show me NRR by cohort, not just consolidated?" Recommended: never report a consolidated NRR without the per-cohort breakdown. Leaky cohorts hide in averages. Canon: Patrick Campbell (ProfitWell) + David Skok — cohort-driven retention decomposition surfaces leaks 2-3 quarters before consolidated NRR moves.
  4. "What's the variance (CoV) on each stage's conversion rate over the last 12 quarters?" Recommended: CoV < 10% → commit-grade; 10-25% → moderate; 25-50% → soft floor only; > 50% → do not use this stage for forecasting. Canon: MIT Sloan forecasting research / Hyndman & Athanasopoulos (Forecasting: Principles and Practice) — CoV on the input series predicts forecast accuracy more reliably than mean.
  5. "How long has each late-stage opp been in late-stage?" Recommended: stage-age > 2x the median stage-duration → treat as stalled, exclude from commit, keep in pipe-only. Canon: David Skok (For Entrepreneurs) — stalled-opp identification by stage-age is the #1 forecast hygiene practice in top-decile SaaS pipelines.
  6. "Is your best-case forecast within 30% of your pipe-only?" Recommended: if best-case is < 50% of pipe-only, your stage-conversion assumptions are pessimistic and you're sandbagging; if best-case > 80% of pipe-only, you're hockey-sticking. Canon: McKinsey research on forecast bias + OpenView SaaS benchmarks — most teams operate in one of two failure modes: sandbagging (commit << earnings) or hockey-sticking (commit >> earnings).
  7. "What assumption block accompanies the number on the board slide?" Recommended: every forecast number on a board slide names (a) the conversion rate, (b) the data window, (c) the weighting choice, (d) the pipeline-coverage ratio. No assumption block = the slide is theatre. Canon: Bain & Company commercial-forecasting practice + Forrester pipeline-coverage research — undisclosed-assumption forecasts have 2.3x higher variance against actuals than disclosed-assumption forecasts.
Walk depth-first. Lock 1-3 before opening 4-7. After all 7 are answered, invoke
bookings_forecaster.py
cohort_arr_projector.py
funnel_confidence_scorer.py
in sequence.
/cs:grill-commercial
或编排器逐一提出。每个问题都有推荐答案和参考资料。请勿批量回答。
  1. “您使用的是哪种转化率,是过去4季度还是过去12季度的?” 推荐答案:采用70/30混合权重(过去4季度权重70%,过去12季度权重30%)。仅使用过去12季度的数据会掩盖近期增速放缓;仅使用过去4季度的数据会过度拟合单一表现不佳的季度。 参考资料:Tomasz Tunguz(Theory Ventures)——预测研究显示,单一窗口转化率估计会滞后约3个季度发现模式变化。
  2. “您的管道覆盖率是多少,承诺值是否超过管道值÷3?” 推荐答案:3倍覆盖率是SaaS行业的下限;低于3倍意味着您的承诺值缺乏结构性支撑。 参考资料:Pacific Crest / KeyBanc SaaS调查——顶级SaaS公司针对承诺预订量维持3.0-4.5倍的管道覆盖率。
  3. “您能否展示按Cohort划分的NRR,而不仅仅是汇总数据?” 推荐答案:绝对不要仅报告汇总NRR而不提供Cohort拆解数据。流失Cohort会隐藏在平均值中。 参考资料:Patrick Campbell(ProfitWell)+ David Skok——基于Cohort的留存拆解比汇总NRR早2-3季度发现流失问题。
  4. “过去12个季度中,每个阶段转化率的变异系数(CoV)是多少?” 推荐答案:CoV < 10% → 承诺级;10-25% → 中等可信度;25-50% → 仅作为低可信度下限;>50% → 不要将该阶段用于预测。 参考资料:MIT Sloan预测研究 / Hyndman & Athanasopoulos(《预测:原理与实践》)——输入序列的CoV比平均值更能可靠地预测准确性。
  5. “每个晚期机会在晚期阶段停留了多久?” 推荐答案:阶段停留时长 > 该阶段中位时长的2倍 → 视为停滞机会,排除在承诺值之外,保留在仅管道值中。 参考资料:David Skok(For Entrepreneurs)——通过阶段停留时长识别停滞机会是顶级SaaS管道中最重要的预测规范之一。
  6. “您的最佳情况值是否在仅管道值的30%范围内?” 推荐答案:如果最佳情况值 < 仅管道值的50%,说明您的阶段转化率假设过于悲观,存在留一手的情况;如果最佳情况值 > 仅管道值的80%,说明您的预测过于乐观。 参考资料:McKinsey关于预测偏差的研究 + OpenView SaaS基准——大多数团队会陷入两种失败模式之一:留一手(承诺值 << 实际收入)或过于乐观(承诺值 >> 实际收入)。
  7. “董事会幻灯片上的数值附带哪些假设模块?” 推荐答案:董事会幻灯片上的每个预测数值都必须标注(a)转化率,(b)数据窗口,(c)权重选择,(d)管道覆盖率。没有假设模块的幻灯片就是无依据的“表演”。 参考资料:Bain & Company商业预测实践 + Forrester管道覆盖率研究——未公开假设的预测与实际值的差异是公开假设预测的2.3倍。
按深度优先顺序回答。回答完1-3题后再回答4-7题。所有7个问题回答完毕后,依次调用
bookings_forecaster.py
cohort_arr_projector.py
funnel_confidence_scorer.py