Skip to content
BunnyDevs
Product8 min

Fixed Price or Time and Materials? Which Contract Actually Protects You

Fixed price feels safer and quietly shifts risk back to you in ways that only appear at week nine. Here is what each model rewards, and the structure we use instead.

BunnyDevs

Fixed price feels like the safe option. You know the number, the risk sits with the supplier, and the finance team is happy.

It is also the model that produces the most unhappy software projects we see, and the reason is structural rather than anyone behaving badly.

What fixed price actually does

A fixed price is a bet on a guess. Nobody knows exactly what a piece of software will take, so the supplier estimates, adds a margin for the unknown, and quotes.

That creates three effects, all of them predictable:

The price includes insurance you pay whether or not you claim. A responsible fixed-price quote carries a contingency. If the project goes smoothly, you paid for a risk that never materialised.

Everything becomes a scope conversation. Once the number is fixed, the only variable left is what counts as "in". So the relationship shifts. You ask for something obvious that was not written down; the supplier has to decide whether to absorb it or raise a change request. Do that twenty times and the collaboration is gone, replaced by two people reading a document adversarially.

Change becomes expensive precisely when it is most valuable. Ten weeks in, you have learned things about your users you did not know at the start. That is the project working. Under fixed price, acting on it costs a change order and a schedule negotiation, so teams often ship the thing they now know is wrong because changing course is too expensive.

The irony is that fixed price transfers cost risk to the supplier while transferring outcome risk to you. You are protected against paying more and exposed to receiving the wrong thing.

What time and materials actually does

You pay for the work done. Change is cheap, discovery is welcome, and the supplier has no incentive to argue about scope.

The obvious failure mode is equally structural: nothing in the model rewards finishing. Without a cap, without visible progress, and without the ability to walk away, you are relying entirely on the supplier's integrity. Most are fine. The ones that are not can run a project for a very long time.

Pure time and materials with no ceiling is not a contract, it is a subscription.

The structure that works

Neither extreme, and it is not a compromise so much as a different shape.

Phase one: a paid discovery, fixed price. One to three weeks. It goes faster if you arrive with a brief worth quoting from. It produces a written scope, the technical approach, the risk list, and an estimate for the build with a stated range. It is fixed price because it is genuinely knowable, and it is paid because free discovery is sales, and sales-driven discovery finds the answer that sells work.

At the end of it you own the documents. If you take them to another supplier, that is a legitimate outcome and it should be said out loud at the start.

Phase two onward: capped phases against a fixed scope. Each phase has a defined deliverable, a not-to-exceed figure, and a review at the end. Within the phase, the team works to the agreed scope. Overruns inside the cap are the supplier's problem — which is the useful part of fixed price, kept.

Change is handled by re-prioritising, not by change orders. New idea in week six? It goes into the backlog and displaces something of equal size, or it moves to the next phase. No negotiation, no invoice, no argument.

You can stop at any phase boundary. This is the clause that matters most and the one most often missing. It caps your exposure at one phase rather than the whole project, and it changes the supplier's incentives entirely: they have to earn the next phase every time.

Questions worth asking any supplier

"What happens when we change our minds in week six?" The answer reveals the real model regardless of what the contract says. If it is immediately about change orders, expect friction.

"What is in the estimate for the unknown?" Anyone quoting fixed price has added contingency. A supplier who will discuss it openly is one who has thought about risk. A supplier who claims there is none is either inexperienced or not being straight.

"Can we stop after phase one?" If stopping is awkward, uncomfortable or expensive, the structure is not protecting you.

"Who owns the code, the repository and the infrastructure accounts?" Should be you, on payment, in writing. Check rather than assume.

"What do you do when you are running late?" The signs a project is drifting show up weeks before anyone says so. The honest answer is that they tell you early and you decide together what comes out. If the answer implies it does not happen, they are describing a project they have not had yet.

The uncomfortable part

Any estimate given before discovery is a guess dressed as a number. We give ranges early and firm figures after a scoping phase, and we would rather lose work than quote a number we would have to defend by arguing about scope later.

That is not a sales position. It is the only way we have found to keep the second half of a project as pleasant as the first.

What we would tell you to avoid

A fixed price for a product nobody has specified. The number is fictional and the argument is scheduled for week nine.

Payment weighted heavily to the start. Milestones should follow working software, not the calendar.

A supplier who will not put an estimate range in writing. Ranges are honest; refusing to give one is not.

Any arrangement where you cannot see the code as it is written. You should have access to the repository from day one, not at handover.

If you are comparing proposals and want a second opinion on the structure rather than the price, send them over — we will tell you what the terms will feel like in month three.

Questions people ask

Is fixed price ever the right choice?

Yes — when the scope is genuinely known and small. A defined integration, a redesign of an existing site with settled content, a migration with a clear inventory. The test is whether both sides could write down what done looks like and agree on it today. If not, fixed price is a guess with a signature on it.

What stops time and materials running forever?

A cap, a cadence and the ability to stop. Agree a not-to-exceed figure per phase, review working software every two weeks, and keep the right to end at any phase boundary. A supplier who resists all three is telling you something useful.

Who owns the code?

You should, on payment, in writing, including the repository history and any infrastructure configuration. This is worth checking rather than assuming — arrangements where the agency retains ownership or hosts everything on their own accounts are common and are difficult to unwind later.

What if we run out of money halfway?

With phased work you stop at a boundary and keep something that runs. That is the main practical argument for phases: the project can end early without ending in nothing. A single fixed-price build that stops at sixty per cent typically leaves you with nothing you can use.

Want this done rather than explained?

That is the job. Tell us what you are building and we will scope it properly.

Start a project