
IT研发外包,选固定总价还是按人天计费?这事儿真得掰开揉碎了聊
说真的,每次跟朋友聊起外包开发,最后总会绕到这个经典问题上:到底签固定总价(Fixed-Price)合同好,还是按人天(Time & Materials)计费更划算?
这感觉就像你去装修房子,包工头给你两个选择:要么一口价全包,我用什么材料你别管,反正最后给你弄好;要么按天算钱,我用多少工、买什么牌子的料,你都看得见,最后花多少算多少。
哪个更让你安心?好像都不太踏实。
在IT研发这个圈子里,这个问题更复杂。代码这东西,看不见摸不着,需求又总在变。选错了合同方式,轻则预算超支、项目延期,重则团队扯皮、朋友反目。我见过太多项目,一开始大家笑嘻嘻,最后因为合同模式没谈拢,闹得不欢而散。
所以,咱们今天不聊虚的,就从一个“老司机”的角度,把这两种合同模式掰开揉碎了,看看它们到底适合什么场景,坑又在哪。
先搞明白,这两种合同到底是个啥
别看名字挺正式,其实核心逻辑很简单。
固定总价合同(Fixed-Price):我给你个准数儿

这种合同的核心就是“范围锁定,价格锁定”。
甲方(就是出钱那个)心里想的是:“我就要个这样的东西,你告诉我多少钱,什么时候能做完。别到时候跟我扯别的,多一分钱我都不出。”
乙方(接活那个)想的是:“行,需求我都搞明白了,技术方案也定了,我评估一下需要多少人、干多少天,再加点风险缓冲,报个总价给你。只要需求不变,我就是996也得按时按质给你交付,不然我就亏了。”
这种模式下,风险主要在乙方这边。如果项目过程中发现技术比预想的难,或者团队效率没那么高,那多出来的成本就得乙方自己消化。当然,如果乙方管理得好,成本控制住了,那利润也就更高。
按人天计费合同(Time & Materials):花多少算多少
这种模式的核心是“按实际投入结算”。
甲方想的是:“这事儿挺复杂,我一开始也说不太清楚具体要啥,或者市场变化快,需求得边做边调。我找个靠谱的团队,让他们按天干活,我随时能盯着,灵活调整。”
乙方想的是:“需求不明确,风险太大,固定总价我没法报。反正我按人头和时间跟你算钱,你投入的资源越多,时间越长,我收的钱就越多。我得保证我的人有活干,别闲着。”
这种模式下,风险主要在甲方这边。如果项目范围无限扩大,或者团队效率低下磨洋工,那最后的账单可能会变成一个无底洞。
掰扯掰扯各自的优缺点,别光听名字好听

光说概念太空洞,咱们结合几个真实场景聊聊。
固定总价的“爱”与“恨”
先说优点,对甲方来说,简直是福音:
- 预算可控,心里有底。 这是最大的好处。你很清楚项目要花多少钱,财务做预算、老板批款项都非常方便。不会出现项目干到一半,钱不够了的尴尬。
- 风险转移。 只要合同签得严谨,项目交付过程中的延期、技术难题等风险,大部分都由乙方承担了。你只需要在关键节点验收成果就行。
- 乙方效率高。 因为乙方想多赚钱(或者说少亏钱),他们会想尽办法提高效率,尽快完成项目。对于需求明确的项目,这是好事。
但恨起来,也能让你牙痒痒:
- 变更成本高到离谱。 这是固定总价的死穴。市场瞬息万变,你的产品上线前,竞争对手可能已经出了新功能。你想加个小功能?对不起,这属于“范围变更”,得重新评估、报价、签补充协议,一来二去,时间和钱都耗进去了。乙方甚至可能因为不想增加风险而拒绝变更。
- 前期沟通成本极高。 为了锁定范围,你得在项目开始前,把需求文档写得跟“法典”一样细,每个按钮、每个流程都得定义清楚。这非常耗时耗力,而且很多时候,需求是写不全的。
- 质量可能被牺牲。 乙方为了控制成本、按时交付,可能会选择“走捷径”。比如,代码写得能跑就行,不考虑可维护性;测试能省就省,上线后Bug一堆。他们交付的是“合同里写的东西”,而不是“你真正想要的东西”。
- 容易陷入“甲乙方对立”。 一个想压低成本,一个想增加利润,大家在需求细节上斤斤计较,关系变得很紧张。
按人天计费的“得”与“失”
它的“得”在于灵活和透明:
- 极致的灵活性。 这是它最大的魅力。需求可以随时调整,今天觉得这个功能不重要了,明天市场又冒出个新热点,团队可以立刻掉头去实现新的想法。非常适合产品探索期和需求不明确的项目。
- 过程透明,随时介入。 你可以随时了解团队每天在干什么,遇到了什么困难。作为甲方,你可以深度参与项目管理,和团队一起讨论方案,确保产品方向不跑偏。
- 更注重价值交付。 因为不是按功能付费,而是按投入付费,甲乙双方的目标更容易统一到“如何用最合理的资源创造出最大的商业价值”上,而不是纠结于某个功能的实现细节。
- 启动速度快。 不需要前期花几个月去写几百页的需求文档,只要有个大概方向,就可以快速组建团队开干。
但“失”也同样明显,尤其对甲方管理能力要求很高:
- 预算无底洞,最怕“失控”。 这是所有甲方的噩梦。项目可能永远做不完,成本可能无限增加。如果缺乏有效的监督,乙方可能会为了多赚钱而故意拖延进度,或者安排经验不足的员工来“磨洋工”。
- 甲方需要投入大量精力。 你不能当甩手掌柜。你必须深度参与,懂技术、懂管理,能看懂进度报告,能识别风险,能有效管理需求的优先级。如果你自己不懂,很容易被乙方“忽悠”。
- 对乙方的信任度要求高。 你得相信乙方是专业的、诚实的。你需要开放你的业务细节,和他们紧密合作。如果双方缺乏信任,这种模式很难成功。
一张图看懂怎么选:场景决定模式
说了这么多,其实没有绝对的好坏,只有合不合适。下面这张表,是我根据这些年踩过的坑、总结的经验整理的,你可以对号入座。
| 维度 | 固定总价合同 | 按人天计费合同 |
|---|---|---|
| 项目类型 | 需求明确、技术成熟、范围固定的项目。比如:企业官网、功能明确的后台管理系统、一次性数据迁移等。 | 需求模糊、探索性强、需要快速迭代的项目。比如:创新型App、市场验证期的SaaS产品、需要长期维护和开发的平台。 |
| 甲方角色 | “监工”型。前期投入大,定义清楚后,主要在关键节点进行验收。 | “战友”型。需要全程深度参与,和团队一起工作,共同决策。 |
| 预算控制 | 严格。适合预算卡得很死的项目。 | 灵活。需要有持续的资金投入,更看重投资回报率。 |
| 对乙方的要求 | 有成熟的项目管理流程,对需求范围有很强的控制能力。 | 技术能力强,沟通顺畅,能快速响应变化,值得信赖。 |
| 核心风险 | 范围变更困难,质量可能妥协,后期维护成本高。 | 成本失控,进度不可控,需要甲方有强大的项目管理能力。 |
聊聊那些合同里没写,但你必须知道的“潜规则”
合同是死的,人是活的。再完美的合同,也管不了人心。
固定总价的坑,往往从“差不多就行”开始
我见过一个项目,甲方要开发一个电商App,需求文档写了80页,自认为很完美。签了固定总价合同。开发过程中,甲方发现竞品上线了一个“拼团”功能,也想加。乙方一算,这得额外投入3个人月,报价20万。
甲方炸了:“就加个小功能,你们要20万?抢钱啊!”
乙方也委屈:“大哥,这得改架构、写新代码、做测试,20万都是友情价了。合同里可没写这个。”
最后结果?要么甲方忍痛掏钱,要么项目延期,要么就是乙方硬着头皮做,但把其他一些“看不见”的地方(比如代码规范、异常处理)给简化了,为以后埋下雷。
所以,如果你选固定总价,一定要做好两件事:第一,需求文档要写到“像素级”,能多细就多细,把所有可能的歧义都消灭掉。第二,合同里必须预留一笔“变更预算”,比如总价的10%-15%,专门用来应对那些不得不做的需求变化。这样,真要变更时,大家不至于谈崩。
按人天计费的坑,多在“看不见的消耗”里
另一个朋友,做了一个SaaS平台,用的人天模式。他觉得挺省心,每天看看日报就行。过了三个月,他想上线一个核心功能,结果被告知还需要两个月。
他纳闷了:“我每天看日报,你们人也都在岗,怎么三个月就做了些皮毛?”
后来他深入一了解,发现团队每天都在“优化代码”、“重构架构”、“研究新技术”,但就是不产出能直接给用户用的功能。乙方的理由也很充分:“基础不牢,地动山摇,我们现在慢一点,是为了以后快。”
这就是人天合同的软肋:乙方有动机让你的项目“永远在路上”。因为只要项目不结束,他们就有稳定的收入。
所以,如果你选人天模式,也必须做两件事:第一,建立严格的验收和汇报机制。不要只看日报,要看每周的可运行成果(Demo)。第二,明确团队构成和人员要求。在合同里写清楚,核心人员不能随意更换,如果需要更换,必须经过你同意。并且,要定期(比如每月)评估团队效率,如果发现产出长期不达标,要果断介入。
有没有第三条路?成年人的世界不做选择
聊到这,你可能觉得头大。固定总价太僵化,按人天又太不可控。难道就没有完美的方案吗?
其实,在这两种极端模式之间,有很多混合模式,或者说,更聪明的玩法。
“阶梯式”的固定总价
对于一个长期项目,可以把它拆分成多个阶段。第一阶段,用固定总价做一个核心功能的MVP(最小可行产品),快速验证市场。这个阶段需求相对明确。
上线后,根据市场反馈,再决定后续开发什么。后面的阶段,可以采用按人天计费,或者再签一个新的固定总价合同。这样既保证了初期的成本可控,又保留了后期的灵活性。
“带上限”的按人天计费
这是对甲方非常友好的一种方式。合同还是按人天算,但设置一个总预算上限(Not-to-Exceed)。
比如,合同约定总价不超过50万。乙方按人天干活,当累计费用达到45万时,必须停下来和甲方重新评估。如果项目还没做完,双方再商量是追加预算,还是调整范围。这样既给了乙方一定的灵活性,又给甲方的预算上了个保险。
“目标成本”模式
这种模式更高级,需要双方有很高的信任度。双方共同设定一个项目的目标成本和目标交付日期。
如果乙方能用低于目标成本的钱,在目标日期前完成项目,那么节省下来的钱,可以按一定比例(比如50/50)作为奖励分给乙方。如果超支了,超出的部分也由双方共同承担。
这种模式把甲乙双方的利益彻底捆绑在了一起,大家的目标不再是“你多赚我就多亏”,而是“如何一起把蛋糕做大,然后一起分”。
最后,回到人本身
聊了这么多合同模式,其实我想说的是,合同只是底线,合作才是关键。
我见过最好的项目,合同签得稀里糊涂,但甲乙双方负责人是大学同学,彼此信任,有问题随时沟通,项目做得又快又好。
我也见过最糟的项目,合同条款一字一句抠得清清楚楚,但双方互相提防,邮件抄送一堆人,开起会来官话连篇,最后项目一地鸡毛。
所以,在你纠结用哪种合同之前,先问问自己:
- 我跟这个外包团队熟吗?信任他们吗?
- 我自己的团队,有没有能力管理好一个复杂的外包项目?
- 我对这个项目的目标,是“必须按时按预算完成”,还是“做出一个能打市场的产品”?
想清楚这几个问题,答案其实就在你心里了。
合同是工具,不是目的。找到一个靠谱的团队,比签一份完美的合同重要一百倍。毕竟,代码是人写的,项目是人做的。人心顺了,事儿就成了一半。
外贸企业海外招聘
