macOS独立开发Pier

Pier 2.0 开始收费——价格由你定

免费推广期结束,Pier 改为 pay what you want:$0.99 起、建议 $6.99,一次性买断。讲讲一个单人开发者怎么划付费线、怎么定价、怎么给老用户留退路。

Pier 2.0 今天上线,同时结束了从 1.0 开始的免费推广期。定价方式有点少见:pay what you want——最低 $0.99,建议 $6.99,结账时金额自己填,不分档。一次性买断,可在 5 台 Mac 上激活,含所有 2.x 更新。

这篇讲三个决定:付费线划在哪、为什么是 PWYW、老用户怎么办。

付费线:看免费,动手和洞察收费

功能门控最忌讳的是把产品砍成残废。Pier 的划法只有一条规则:查看类全部免费,动作类和洞察类进 Pro

免费保留的是 Pier 作为资源监视器的完整能力:端口列表、进程列表、系统指标、菜单栏实时显示——1.x 用户用到的一切「看」的功能,一个都没有锁。

Pro 锁的是两类:

  • 动作:kill 进程、启停 Docker 容器和 Homebrew 服务、管理 Launch Agents;
  • 洞察:端口的服务识别 chip(这个 3000 是 Vite 还是 Next.js)、项目目录显示与跳转、Docker 容器名反查、菜单栏的 LaunchAgent 异常红点。

这条线的好处是逻辑上能自圆其说:免费版回答「发生了什么」,Pro 回答「这是什么、然后你可以直接处理它」。用户不付费也得到一个完整的监视器,而不是一个到处弹窗的 demo。

上锁的姿势:灰禁,不隐藏

被锁的功能全部保留在界面上,灰色禁用,右键菜单项带 · Pro 后缀。kill 按钮的图标特意选了灰色的 stop.circle 而不是 lock.fill——满屏挂锁的观感太难看了。

不隐藏有两个原因。一是诚实:用户应该在付费前看到全部功能的形状,而不是付完钱才发现「就这」。二是转化本身:藏起来的功能不会带来任何购买动机,摆在手边但按不下去的按钮才会。配套的是偏好设置里的一张 Pro 对比卡:五条 Pro 功能、价格、购买按钮,激活后自动消失。

为什么是 pay what you want

单人开发者定价本质上是拍脑袋——没有定价团队,没有 A/B 测试的样本量,$4.99 和 $9.99 之间的争论只发生在自己脑子里。PWYW 把这个决定外包给了唯一有真实答案的人:付钱的那个。

机制设计上只有两个数字有讲究:

  • $0.99 下限:过滤掉纯粹的 $0 白嫖(那和免费没区别),同时保证任何金额都能覆盖支付手续费;
  • $6.99 建议价:锚点。大多数人不想思考付多少,建议价就是给他们的默认答案。

另一个方向的决定是不做订阅。Pier 是完全本地运行的工具,没有服务器在为老用户持续烧钱,按月收费对不上成本结构。买断 + 大版本付费升级(2.x 全含,3.0 另说)是更诚实的对价。

老用户:一次性的善意重置

推广期装过 Pier 的用户有个尴尬处境:试用期起点如果按「首次安装」算,很多人的 14 天早在几个月前就烧完了,一升级 2.0 直接见到「已过期」——这是对早期用户最糟的问候方式。

处理办法是版本升级时做一次性重置:

// v2 升级一次性重置 trial 起点:推广期老用户的 trialStart
// 是首次装 Pier 那天,关掉免费开关后直接进 expired 体验太差。
if Keychain.get(K.v2TrialReset) == nil {
    Keychain.set(String(Date().timeIntervalSince1970), for: K.trialStart)
    Keychain.set("1", for: K.v2TrialReset)
}

所有人从首次打开 2.0 起重新计 14 天。标记本身也存 keychain,删 app 重装不会再触发第二次。

复盘

  • 付费线要能一句话讲清。「看免费、动手收费」比一张功能对照表好记,也好辩护——每次纠结一个新功能该不该锁,用这条规则判,不用重新开会;
  • 锁的视觉成本要压到最低。灰禁 + 后缀是下限,满屏 lock.fill 是把「你还没付钱」怼到用户脸上;
  • 对老用户的每一分善意都要写成代码。「重新给 14 天」是一句话,v2TrialReset 这个 keychain 标记才是承诺本身。

定价没有正确答案,PWYW 的本质是承认这一点,然后把问题交给市场。三个月后看数据说话。

留言

  • 加载中…

留言先审后发,通过后公开显示;邮箱只有站主可见。