主帖(Vlad Shiyan)
我在工厂和零售行业做了 10 多年离线版 Windows 软件。无聊、可靠、本地运行的软件。
现在我正在做自己的产品:LockMargin,一款面向自由职业者的本地优先财务系统。时间追踪、发票和支出,全部集中在你电脑上一个加密的 SQLite 文件里。
每个独立创建者收到的第一个问题都是"你的 MRR 计划是什么?"
我没有 MRR 计划。LockMargin 定价 49 美元买断。没有订阅,也不需要账号。
三个理由,按诚实程度排序:
-
我自己就是目标用户。 过去几年,我每个月付 19 美元,就为了把自己的发票存在别人的服务器上。如果我对同样的事情收"租金",那我就成了自己一直在抱怨的那种房东。
-
定价本身就是产品设计的一部分。 整个理念就是"拥有你的生意,别租它"。把这个理念放在一份永久订阅后面,就会产生一个我无法忽视的矛盾。
-
这是一个我想去验证的假设。 我猜测,在工作没那么顺利的时候,一次性花 49 美元,比再来一笔经常性的账单更容易说服自己。这是一个假设,不是已经验证的洞察。到目前为止我一个客户都没有,所以我也不假装有。
我要放弃的东西,用数学说话:
-
没有复利的 MRR。如果我卖出 100 份,那就是 4900 美元。然后归零,直到下一个 100 份。 -
没有"日落杠杆"。人们会因为 v2 更好而付费,而不是因为被套住。 -
每天早上我都清清楚楚地知道自己有多穷。没有什么经常性收入可以躲在后面。
唯一的加售:老用户买大版本打五折。
好处很简单:客户付一次钱,就拥有那个版本。我必须一直去赢得信任,而不是靠订阅惯性躺着收钱。
状态:Windows 抢先体验版 2026 年 9 月开放。零客户。全程公开构建。
对做过一次性桌面工具的同行:
-
如果今天重新开始,你还会选择一次性定价吗? -
到哪个收入水平,"可预测性"才真的成了问题? -
没有"不更新他们就要退订"这种压力,你是怎么持续推送更新的?
很乐意把我踩过的坑分享出来。
精选回复
XGenHacker
"一次性买断"这个定价让人很感兴趣。作为用户,我原则上非常喜欢;但作为一个白手起家的创始人,它真的会让我睡不着觉。最让我纠结的其实不是买断的固定价格部分,也不是给老用户的折扣。真正的问题是,那个"12 个月的升级"本质上是在免费送出你的改进成果,而且你根本不知道 12 个月到期后,他们还愿不愿意留下来给你回报。
这还会带来一种局面:你开始暗地里跟自己玩心理游戏,纠结"什么算升级,在哪个节点我可能会失去用户?"我几乎能听到自己会怎么和自己吵:"我需要修 X。""但如果我修了 X,那就是一次更新。有些客户得花钱买这次更新才能拿到修复。那个五折能留住他们吗,还是我的用户本来就把我当一次性卖家?"
从某种意义上说,你真正拥有的唯一客户,永远是明天才买东西的那个。每一个过去的客户,都可能已经用完了、走人了,而你永远不会知道。这会让我发疯。我也在想,在零用户的时候,是不是其实根本没有任何数据可分析。有多少人其实更想要订阅,只是被"只能买断"这道坎劝退了?
我在想,你是不是可以在产品网站上做一次临时的 A/B 测试:如果有人买订阅,那就是支持订阅的信号;如果有人买断,那就是支持当前模式的信号。过一段时间,如果某一类特别多、另一类特别少,市场已经表态了。反过来,如果两边都没什么人,那就是别的东西在挡住客户。那可是更有价值的信号。去改营销、改产品,都行。但至少有了这个 A/B 测试,你既给了客户选择,也有了能分析的数据。
Vlad Shiyan 回复:
先纠正一下:你好像多算了一个选项。这里没有"12 个月升级"。你买下 v1,就永远拥有 v1,补丁和平台修复都包含在内。一个大版本是 50% 折扣的新购买,不是续费。"免费改进"的范围比听起来窄:只有你拥有那个版本时随带的补丁和平台修复。其他一切都是新版本。
关于 A/B 测试:我懂这个诱惑,我也想要数据。但 A/B 测试需要足够的统计功效。以我现在的流量,我等于在抛硬币,然后管它叫数据。更糟的是,页面上放一个订阅选项,哪怕只是测试,都会打破这个项目赖以立足的那个承诺。
所以真正的测试,发生在钱真正易手的地方:在上线的时刻。升级率和前一百笔销售,就是市场在表态。无论结果如何,我都会公开这些数字。
你显然认真想过早期信号这件事。在流量几乎为零的时候,你到底会信任什么?
Vlad Shiyan(更新说明)
给一路追着这个帖子的各位更新一下:我把完整的推演写成了一篇长文,包括什么变了、什么没变、还有我哪里仍不确定:
lockmargin.com/blog/how-public-feedback-rewrote-my-license.html
简短版本:许可证现在会记录你买的是哪个版本;v1 到 v2 的规则,在 v2 存在之前就已经白纸黑字写下来;激活永远不会回传服务器。无论结果如何,升级率这个数字照样公开。
AleksandraZhd
有一类产品一直靠离线授权码活着。Sublime Text 用离线许可证密钥跑了好多年,经典共享软件目录里一半也是这么干的。我观察到"服务器悄悄溜回来"的地方,从来不是授权校验本身,而是试用和更新器。限时试用需要一个它能信任的时钟,自动更新需要一条通道,而这两样东西都会带着基础设施一起回来。你把这个泄漏风险定价在 49 美元,正好是押对了地方,所以这套体系站得住。如果你哪天加试用,到时候再决定试用要不要回传,并且把这个决定跟授权分开。授权可以永远是一份签名文件。
Vlad Shiyan 回复:
共享软件货架是"离线密钥能撑起一门生意"最久远的证据,所以我把 Sublime 这个先例当作天气预报,而不是某种指望。
你点出的那两扇门,试用和更新器,我已经把它们当成与授权分开的独立决定写了下来。在试用这一侧,LockMargin 刻意没有倒计时。免费档是按限额来的:5 个客户、每月 5 个项目。限时试用需要一个它信得过的时钟;客户上限只需要本地数据库里的一个计数器。没有时钟、没有通道、没有基础设施。
在更新器这一侧,目前的答案是完全没有通道。新版本就是手动下载,跟你去取任何一份属于自己的文件一样。如果哪天出现更新检查器,它会做成可选的,而且授权校验绝不会跟着它一起跑。
授权保持为一份签名文件。这句话会原样写进构建规格里。
这两扇门,你在实践中通常先看到哪扇打开?试用的时钟,还是更新的通道?
AleksandraZhd 回复:
试用那扇门先开,但更新器是悄悄打开的。试用会在收入压力打败理念的那天被加上去,那是一个响亮的、有人能否决的决定。而更新检查器是以"便利补丁"的身份抵达的,默认开启。在它每次启动都回传、被大家叫作基础设施之前,没人会注意。你基于限额的免费档,等于把试用那扇门焊死了:计数器不需要时钟,所以没有什么会悄悄滋长。剩下值得现在写下来的一个预先承诺:哪天某个安全修复需要一个"请更新"的提示,它就作为一个签名的手动下载加一个可选的检查器一起发布,趁没人流血的时候在规格里定下来。老实说一句:我的位置偏网站侧归因,所以我是从外面看这两扇门,而不是亲手掌门。
Vlad Shiyan 回复:
"安静"那部分,正是我可能会错过的地方。试用是一个响亮的决定,有人能否决它。而更新检查器是以便利补丁的身份抵达、默认开启的。等有人把它叫基础设施的时候,它已经回传服务器一年了。
所以这个预先承诺这周就写进构建规格,用上你那套更锋利的措辞:哪天某个安全修复要求一个"请更新"的提示,它就作为签名的手动下载加可选检查器一起发布,趁没人流血就定下来。我更愿意在冷静的时候写下这句话,而不是在事故现场讨价还价。
那个脚注之所以重要,也是因为同样的原因。手握门的人看见的是便利;门外面的人看见的是铰链。这也是整条帖子保持公开的原因之一。
从你那边,也就是铰链的那一侧,回一个问题:做网站侧归因的时候,哪个便利悄悄变成了基础设施,而且因为没人注意到它来了,所以没人否决它?
AleksandraZhd 回复:
就是追踪 cookie 本身。它以便利的身份来,负责"记住这个访客",没有人否决它,因为根本没有"上线"这件事。浏览器自带它,每个工具默认它存在,归因就这样悄悄变成了"从浏览器里拿东西",而不是"自己造的东西"。三十年之后,出现了一个同意横幅产业,它全部的工作,就是谈判这一个没人否决过的默认值。而"90 天归因窗口"躺在定价页上,仿佛底下那套机制真能兑现它。我们选择自己做服务端,有一部分就是因为:拆除一个便利,比从一开始就不采用它更难。那个默认值,会在第二个工具假设它在的时候接管你。
Vlad Shiyan 回复:
cookie 是这个我们绕了很久的套路最干净的例证,一个在任何人开会之前就变成基础设施的便利。三十年同意横幅,就是一个未被否决的默认值的代价。你那句"第二个工具假设它在",我记下来放在授权规则旁边,因为它们本质上是同一个机制,只是从门外那侧看过来而已。
到头来,我们是从不同那一侧在拒绝同一件事:你不让 cookie 溜回来,我不让授权服务器溜进来。跟这么固执的人做伴,挺好。
hamid_founder26
"这是模式决策,不是价格决策"这个框法很有用。一旦第一批买家冲着"拥有"的承诺买了单,之后想切换就会很痛苦。JetBrains 那种"12 个月更新,之后保留最后一个版本"的折中很有意思,它既保留了一点经常性收入,又没把人套死。对独立创始人来说,纯粹的一次性模式也逼着你做非常诚实的记账,每天早上你都知道自己站在哪个位置。我很好奇,一旦有了真实数字,你打算怎么干净地追踪升级率。这感觉是唯一真正能告诉你假设成不成立的指标。
Vlad Shiyan 回复:
没有 MRR,就没有可以躲的曲线。每个月从零开始,如实告诉你真相。我决定把这当作一个特性。
JetBrains 那种折中保留了一些经常性收入,但也保留了一份需要时常兑现的承诺。我选了更简单的形状:一次购买、一个版本、两边都没有经常性的义务。
关于追踪升级率:应用没有遥测,所以支付处理器是唯一的事实来源。这就够了。v1 的销量是一个条目,五折的升级购买是另一个条目。率就是第二个除以第一个,按批次来。没有仪表盘、没有漏斗。把一个工具的价格数字放进表格软件,对一款本来就是为了替代表格的工具来说,有一点讽刺,所以它会是一份放在数据库旁边的纯文本文件。
难的不是追踪这个数字,而是在它难看的时候把它公开。那个承诺依然成立:无论结果如何,数字都会公开。
你自己做过一次性模式的产品吗?
hamid_founder26 回复:
没有,我没做过。我自己在做订阅产品,所以纯粹的一次性这条路,我是从外面看的。
最戳到我的,是"每个月从零开始"这个说法。去掉经常性数字那层软垫子,有种干净的感觉。它逼出了你描述的那种诚实。
我挺喜欢你决定把升级率放在纯文本文件里。对一个本身就讲"拥有与简单"的工具来说,这种一致性感觉是对的。我们大多数人会条件反射地去开个表格或仪表盘。
等那个数出现的时候我很期待,难看也罢。这种公开承诺,比它理应出现的次数要稀有。
Vlad Shiyan 回复:
那我们就是同一个实验的两面。你拿到曲线,我在零点拿到真相。
等它存在,数字就会出现。难看也罢。而且我想一年后做个对比:你的流失率,对我的升级率。两个诚实的数字,并排摆着。
如果你的订阅哪天开始像房租,你知道该找谁。
hamid_founder26 回复:
哈,公平。两个并行的实验。
我暂时先拿那条曲线,等我真的有客户了,再看看真实的流失数长什么样。等两个数字都存在了,期待那次并排的对比。
邀请也成交。
Vlad Shiyan 回复:
成交。等两个数字都存在,它们并排公开,我的放在这儿,你的放在你习惯的地方。两边都不做手脚。
而且这个邀请没有过期。如果哪天那条曲线开始像房租,门还在老地方。
祝你订阅顺利。这句话是真心的。
Binnen48
这里最让我信服的不是 49 美元本身,而是定价恰好对上了产品的承诺。在订阅制上卖"拥有你的生意,别租它",会反过来削弱整个本地优先、加密 SQLite 的主张。我会盯的风险是:一次性桌面定价往往成也分发、败也分发。没有 MRR,每个月从零开始,所以你的上线渠道,才是真正的产品决策。在 9 月抢先体验之前,我有个具体建议:考虑卖一个价格略高一点的"v1 加首个大版本升级"捆绑包,让早期买家在不发明订阅制的前提下,为你预支 v2 的开发。我也会让那个 50% 的升级折扣从上线第一天就出现在销售页上,它会悄悄回答"这产品会不会被弃养"这种会劝退很多一次性购买的疑虑。真心想问:对那些已经在用表格加银行导出的自由职业者来说,LockMargin 到底在哪个瞬间帮他们省下的时间,足以让 49 美元显得理所当然?
来源
-
原文标题:Why I'm charging $49 once instead of a subscription for my desktop app -
作者:Vlad Shiyan -
发布平台:Indie Hackers(论坛帖) -
原文链接:https://www.indiehackers.com/post/why-im-charging-49-once-instead-of-a-subscription-for-my-desktop-app-aabcd91ddb -
发布/更新时间:2026-08-25
相关链接:
-
lockmargin.com/manifesto.html -
lockmargin.com/blog/how-public-feedback-rewrote-my-license.html
相关阅读:
一个运行了一年的个人 AI Agent:自动整理日历、邮件、会议和工作记忆

