Fixed price or time and materials for custom software?
Both arrangements can work and both can fail badly. The choice should follow how well the work is understood, not which one feels safer — because the one that feels safer is usually paying for certainty you were not offered.
Fixed price fits work that is genuinely well defined, where scope can be written down and both sides accept a change process. Time and materials fits work where the scope will legitimately change as you learn. Most projects are best served by a fixed-price discovery that produces enough definition for the next phase to be priced honestly.
What a fixed price actually buys
Certainty about the number, in exchange for rigidity about the scope. That trade is reasonable when the scope is genuinely knowable, and expensive when it is not, because the supplier has priced their uncertainty into the number and you paid for it whether or not it materialised.
A fixed price also changes the incentive at the boundary. Every ambiguity becomes a negotiation, because the supplier absorbs the cost of the generous interpretation. That is not bad faith, it is arithmetic, and it is why fixed-price work needs a written specification precise enough to settle arguments.
It fits best where the work resembles something done before: a defined integration, a migration with a known shape, a site with agreed pages and content, a discovery phase with a fixed set of outputs.
It fits worst where the interesting part is unknown — a novel AI behaviour, an undocumented legacy integration, a product whose shape will change once real users see it.
- You pay for the supplier's uncertainty whether or not it happens
- Every ambiguity becomes a negotiation at the boundary
- Works where the shape of the work is genuinely known
What time and materials requires from you
Flexibility about the number, in exchange for flexibility about the scope. It is the honest arrangement for work where learning changes the plan, which is most product work.
It requires something in return: someone on your side who can prioritise weekly and make decisions without convening a committee. Time and materials with an absent client produces a large invoice for work nobody chose.
It also needs visible progress. Reviewable increments, a shared backlog and a burn rate you can see are what make an open-ended arrangement accountable. Without them you are buying hours rather than outcomes.
A cap with a stop-and-review point is the usual middle ground: work proceeds hourly, and at an agreed figure both sides stop and decide whether to continue, rescope or finish.
Change control that works in either
Every project changes. The difference between arrangements is what happens when it does, and that process should be written down before the first change rather than improvised during it.
A workable process: changes are described in writing, estimated before being accepted, and either added with an explicit budget increase or traded against something already in scope. That last option is the one most often missing, and it is the one that keeps a fixed-price project sane.
Beware of change control that is either too heavy or absent. Too heavy and nobody uses it, so scope creeps informally until the relationship breaks. Absent, and every conversation becomes a negotiation about what was implied.
Warning signs on both sides
A fixed price quoted without a specification. The supplier has either padded heavily, misunderstood the work, or intends to argue about scope later. None of the three is good, and the first is the most expensive for you.
A fixed price identical to a competitor's within a few percent, for a brief neither could have fully understood. That usually means both priced the words rather than the work.
On the other side: time and materials with no cap, no review point and no visible increments. And any arrangement where you cannot tell what was delivered last week.
And in both: no named acceptance criteria. If nobody has written down how you will know the work is finished, the contract shape is the least of the problems.
- A fixed price with no specification behind it
- Quotes that match to the percent on an ambiguous brief
- Open-ended hours with no cap and no visible increments
- No written definition of what finished means
What we usually recommend
A fixed-price discovery, priced on its outputs rather than its hours, producing the definition the next phase needs: prioritised scope, key journeys, acceptance criteria in observable terms, the integration realities, and an estimate you can hold someone to.
Then fixed price for the parts that discovery made genuinely definable, and time and materials with a cap for the parts where the uncertainty is real and honest to name.
Paying to remove uncertainty is almost always cheaper than estimating around it, and it is the recommendation we would give even when it means a smaller first engagement. Our guide to what custom software costs covers what moves the number once the shape is settled.
Questions people also ask
Is fixed price safer for the client?
It transfers overrun risk to the supplier, and you pay a premium for that. It also removes flexibility: every change becomes a negotiation. It is safer where the scope is genuinely knowable and more expensive where it is not, because you funded uncertainty that may never have occurred.
How do you stop time and materials running away?
A cap with an agreed stop-and-review point, weekly prioritisation by someone on your side who can decide, reviewable increments, and a visible burn rate. Open-ended hours without those four is buying time rather than outcomes.
Can one project use both?
Routinely, and it is usually the best structure. Fix the price on the parts discovery made definable, and run time and materials with a cap on the parts where uncertainty is genuine. Naming which is which is more useful than choosing one label for everything.
What should a proposal include either way?
Deliverables, acceptance criteria in observable terms, exclusions, assumptions, who is responsible for what, third-party costs, the change process, and what happens after launch. Those matter more than the pricing model, and their absence is the real warning sign.