昨天有个粉丝朋友在评论区留言 :客户说「开发个小程序多少钱」我也不知道需求,该怎么报?
现在很多朋友习惯遇事不决,就问AI。你把需求一转手丢给模型,模型开始狂写。AI编程起步阶段,这样最容易做出「什么都像有、什么都不好用」的半成品。
其实问题不在模型笨,在这一句话里缺了太多边界,模型只能猜。
程序员接私活里,这句很常见。这样的单接了需要小心小心再小心,危险的不是对方没想清楚,是你先甩出一个死数字。数字一出口,后面所有讨论都会围着它转:需求做多了你吃亏,做少了像你报价虚、坐地起价。
正确顺序不是先报价,是先把「要报的是什么」问出来。问的方式,可以直接借用「一句话需求」那套五问——只是这五问不是为了喂模型,是为了让价格有范围可站。
空范围上的价格,不是报价
小程序三个字,差别可以说是大到离谱。可能是几页静态页面的展示加一个收集信息的表单,也可能要登录、支付、后台改内容,还要对接旧系统、过审上架、教运营操作。
对方说「不知道具体需求」,等于承认范围还是空的。空范围上的价格就是猜谜、刷流氓:猜高了这单容易黄,猜低了后面每加一项小需求都像撕破脸。所以别急着报8k或3个w。先回范围,再谈钱。
回话可以短,但要把五问塞进去
第一句,承认现状:「需求还没定的时候,没法给准确总价,给了也容易后面扯皮。」
第二句,给路:「咱们先用几分钟对齐五件事——谁用、最关键成功一次是啥、要不要登录、数据放哪、这次明确不做啥。对齐后我们再报『最小版本』固定价,更大功能按项另算。」
第三句,留退路:「如果你只想先要个大概的感觉,我也可以给『仅展示型』和『含登录支付』两个粗区间,但都要写清假设,不作合同依据哈。」
以上三句里没有甩锅吧,也没有假装全会全有。程序员接私活靠的是把不确定说出口,而不是用一个数字把不确定盖住。
五问怎么落到报价上
还没完全探明白之前不必写成合同,临时的答案就够前期报价用:
- 谁用?(顾客 / 店员 / 管理员)
- 最关键的一次成功操作是什么?(例如预约成功、提交成功)
- 用什么账号方式?(微信登录 / 手机号 / 先不做登录)
- 数据存在哪?(先本地、先表格、还是必须联网)
- 这次明确不做哪些?(支付、会员、后台报表……)
前两问决定「最小可交付」;后三问决定你要不要把登录、存储、支付算进这一版。五问齐了,才能说「最小版本固定价 + 超出另算」。五问空着,还不到报价环节。
对方也说不清时,千万别丢开放题,带选项问。例如:「先做顾客端预约,店员端这周要不要?要的话只查看,还是也要改期?」选项越多,对方越容易拍板;「你看着办」越多,后面越容易按「包含一切」理解你的报价。
拍板结果写进聊天框,再让ai据此估工。口头变更没留痕时,你按旧五问报价,对方按新想法验收,两边都会觉得对方有问题。
对方急着逼你「先报个数」时
可以报「带假设的区间」,不要报「拍脑袋的死价」。例如:
「如果只做顾客端预约成功、手机号登录、数据先测试环境、不做支付和店员端,常见会落在 A~B;一旦要支付、会员、多角色后台,通常会到 C 以上。你更靠近哪边?」
区间旁边必须写假设,假设比数字更重要;同时让他选边,等于逼他把五问里至少答出一半。他若连边都不肯选、只要一个心里预期的超低一口价,这单往往后面更难做——你报的死价,会被当成「包含一切」的承诺。
也可以先卖「需求澄清」本身:一次短会议或一页文字,输出功能清单和「不做清单」,再正式报价。对方接受,说明他认真;对方只想免费让你猜到底价,你要自己衡量值不值得耗。
粗数可以给,承诺不能绑
对方明确说只要感觉,你可以给粗估个数,并写明「非承诺、待五问确认后重报」。不该把合同、定金、开工绑在那个粗数上。
若用 AI 辅助估工时,也先把五问答案贴进去,让它列「最小版本任务」,再换算价格;不要让它在需求空白时直接生成一个总价。空白进、空白出,看起来专业,实际更坑。一句话需求可以讨论感觉,不可以直接当报价依据——这点和「先五问再生成」是同一条边界,只是出口从代码换成了钱。
程序员接私活里,报价是对范围的翻译。范围来自五问,不来自「小程序」三个字。下次再听到「多少钱,需求还没定」,先斩钉截铁的回三句:不能一口价、先五问对齐下、再报固定价或带假设区间。钱放在第二步,你和对方都会轻松很多。
最后我给个大家可参考的回复:「小程序范围差很大,需求没定前没法给准确总价。咱们先对齐几个问题:谁用、最关键做成哪一件事、登录怎么做、数据放哪、这次先不做啥。对齐后我报最小版本固定价,其余按新增需求项加;若只是想感觉价格空间,我给带假设的粗区间,不作合同依据的哈。」
有需要的朋友可以收藏下来,比临时编数字稳得多,希望对你有帮助哈哈。