你有没有试过给自家开发的内部系统定价?不是卖给别人,而是向财务、向管理层、向审计证明它值多少钱。我花了两天测试了所有单维度模型,全部失败。最后逼出一个四维度叠加的方法——没有权重,纯加法,外加一条我花了一周才写对的SQL去重规则。

这个系统叫Rembrandt,91,000行代码,服务六校区的职业培训中心。没有ARR,没有市场价,没有可替代SaaS能覆盖它的核心逻辑。怎么估值?这篇文章是试错全记录,以及最终跑通的TypeScript函数、SQL去重查询、每周定时快照。

打开网易新闻 查看精彩图片

第一刀:ARR,十五分钟死亡

ARR(年度经常性收入)是SaaS估值的黄金标准。干净、通用、投资人秒懂。我打开表格,敲了三行公式,十五分钟之后确认:这东西没有收入。

Rembrandt是内部工具,不是对外销售的产品。没有订阅费,没有合同,没有流失率。ARR模型要求的是"客户付你多少钱",而内部系统的经济关系完全倒过来——是你付成本养它。这个维度在十五分钟内被证伪。

但ARR的死亡暴露了一个更深层的问题:我们缺的不是数字,是"谁在为价值买单"这个基本设定。外部产品有价值交换,内部系统只有成本中心。传统估值框架在这里集体失效。

第二刀:替代SaaS成本,周日晚上的误判

第二个思路:如果Rembrandt不存在,L'Atelier Palissy(我的机构)得买多少SaaS来替代?

我列了Odoo、Brevo、Monday、Digiforma、Edusign。月费合计约425欧元,五年折现后约十万欧元。这个数字能过审计,专家会计师认。但它在核心处是错的。

市场没有任何SaaS能覆盖Rembrandt的特定功能:每年四个周期的补课追偿逻辑,六校区联动,叠加Qualiopi合规规则。这10,000行业务逻辑是机构运营的命脉,也是市场产品的空白地带。

替代成本法的致命伤是"可替代幻觉"——它假设市场有完美替代品,从而系统性低估差异化内部系统的价值。周日晚上的表格很漂亮,周一早上我关了它。

第三刀:使用价值,表格未填先死

第三个方向最符合经济直觉:Rembrandt为Françoise、Hélène、Catherine、Claire四位同事节省了多少小时?

这是唯一锚定真实生产力的维度。但测量成本社会性地过高——办公室计时带有监控暗示,季度自报又被当日情绪污染。我打开Google表单开始设计,又关上。模型在出生前死亡。

使用价值的困境是方法论与组织现实的冲突。理论上完美,执行上不可行。这个失败比前两个更痛,因为它本可以是最扎实的锚点。

诊断:复合资产的四个不可约维度

三次失败后,问题清晰了。Rembrandt是四类东西的叠加:代码、数据、避免的生产力损失、战略选择权。任何单一指标必然压扁至少三个维度。

四个维度各自看见其他三个看不见的东西:

维度1(等效SaaS成本)看见市场价格,看不见独特性;

维度2(使用价值)看见人力时间,看不见数据资产;

维度3(数据价值)看见信息遗产,看不见日常使用;

维度4(战略价值)看见未来可能性,看不见当下存在。

它们不可相互归约。这不是技术限制,是本体论事实。四维度不是妥协,是结构必然。

维度拆解与去重机制

最终方案:四个维度纯加法,无权重。但加法需要解决重复计算——同一笔价值可能被多个维度认领。

核心突破是SQL去重规则,花了一周才写对。逻辑是:当两个维度对同一功能模块估值时,取较高者,而非叠加。TypeScript consolidation函数处理维度内聚合,SQL处理维度间冲突,每周cron生成可辩护的快照。

等效SaaS成本维度:基于市场替代品定价,但仅计算功能重叠部分。Odoo的CRM模块算,它的补课追偿逻辑不算——后者进入维度4的战略独特性

使用价值维度:放弃精确计时,改用"全人工替代成本"——如果四位同事完全不用系统,纯手工处理同等业务量需要的额外人力。这是上限估计,但可辩护。

数据价值维度:历史数据的重构成本。五年运营数据如果丢失,重新录入、清洗、验证的费用。这是遗产视角,与日常使用率脱钩。

战略价值维度:未来18个月可能开通但尚未实施的功能,按机会成本定价。这是唯一前瞻维度,也是最难量化的——我们用了"竞品同类功能定价×实施概率"的保守估计。

为什么无权重

加权平均的诱惑很大,但它隐藏了价值判断。给维度1权重40%、维度2权重30%,等于预设了"市场可比性比内部效率更重要"——这个预设在不同决策场景下是变动的。

纯加法迫使决策者面对全部四个数字,而不是被一个综合分麻醉。审计问"这个系统值多少",我们给出四个数,说明它们为何不可加总,比给出一个"加权估值"更诚实。

SQL去重规则的技术细节:维度间冲突用功能模块ID关联,同一模块被多维度认领时,取max(维度估值),记录被抑制的维度来源。这个设计保留了信息——我们知道哪些价值被"挤掉"了,必要时可手动复核。

运行中的系统

现在每周一早八点,cron触发完整流程:TypeScript拉取四维度原始数据,SQL执行去重,生成PDF快照存档。快照包含四个原始值、去重调整项、最终总和、以及一条人工复核建议(当某维度调整幅度>20%时触发)。

这套系统的真正产品不是数字,是可辩护性。面对审计、董事会、潜在收购方,我们能说清每个数字的来源、假设、局限。这比一个"准确"的估值更重要——因为内部系统本就没有真实市场价格,只有不同场景下的谈判立场。

四维度法的意外收获:它暴露了组织的知识盲区。维度3(数据价值)最初估值极低,因为我们从未系统备份过元数据。这个发现推动了数据治理项目——估值工具变成了诊断工具。

维度4(战略价值)的季度复盘也改变了产品路线图。过去"可能做"的功能躺在待办列表里,现在它们被明确定价,优先级排序有了经济语言。

这套方法最反直觉的点是:它不追求精确,追求诚实。四个维度的并置本身就是信息——当维度1和维度4差距过大时,说明系统要么被严重低估(独特性强),要么被严重高估(战略幻想)。这个信号比任何单一数字都有价值。

最后的技术细节:去重SQL的核心是窗口函数,按模块ID分区,取各维度估值的最大值,同时用array_agg记录被排除的维度来源。TypeScript层处理维度内部的聚合逻辑,保持SQL纯粹做跨维度仲裁。这个分层让调试变得可追踪——我们知道问题发生在维度内还是维度间。

91,000行代码的系统,最终估值落在四个数字的矩阵里。没有终极答案,只有每周更新的谈判立场。这可能才是内部软件资产的真实状态:不是被发现的,是被持续构造的。

(完)