How We Price Projects We Can't Fully Scope Yet
How do you price a project you can't fully scope until discovery is done? Honestly: in bands that double, narrowed by discovery, then committed as a watermark figure with a visible contingency ceiling. Here's the model we use, including the bit we get wrong.
Why we quote in bands, what the low watermark model looks like, and why a contingency number is honesty rather than padding.
After my Codegarden talk, the first question from the audience was the one every agency owner braces for: how do you actually show customers the pricing breakdown? Hourly rates? A number plucked from the air?
It's a fair challenge. The whole series so far has argued that mid-market projects carry hidden complexity (the iceberg, the ERP, the data), which raises an awkward question: how do you put a price on something you can't fully scope until discovery is done? Here's our honest answer.
We stopped selling hours years ago
We moved away from time and materials pricing a long time ago. Unless a project is genuinely T&M, where the client knowingly pays for every hour, what you're really doing is making a value-based pitch with a fixed price. So we lean into that and price the outcome, not the timesheet.
That only works if you're upfront about uncertainty, which brings us to bands.
Quote in bands that double
Early on, we talk to customers in ranges, roughly t-shirt sized, where each band is about double the one below. Not "this will cost £212,400" but "this is going to land between £150k and £300k".
The customer's next question is always the same: "Well, is it £150k or is it £300k?" And that's exactly the conversation you want, as the answer is: that's what discovery is for. The band reflects what we genuinely don't know yet - how messy the ERP data is, how the order flow really works, how much of the checkout is actually "simple". Some of it we can squeeze together: spend less on design, more on integrations, or the other way round, depending on where the value sits for them.
A wide band early isn't evasion. It's the only honest number that exists at that point.
The low watermark model
Once discovery has done its job and we commit to a figure, we use what I think of as a low watermark. We might say: this project is £200k, but you need to hold contingency up to £250k.
The £200k is real - it's what we believe the project costs based on what we now know. The £250k is also real - it's an acknowledgement that mid-market projects surface surprises, and that nobody benefits from pretending otherwise. The deal with my team is that they come back to me the moment something starts getting more complex, so I can have the money conversation with the client early rather than at the end.
I'll be honest, as I was on stage: we sometimes forget. The team gets absorbed in solving the problem, the complexity creeps, and the conversation happens later than it should. The model isn't perfect because people aren't. But it's still far better than the alternatives - a padded fixed price that makes you uncompetitive, or a lowball that turns into a fight at month five.
If you're a business reading quotes
A band with a contingency line is a good sign, not a red flag. It means the agency has thought about where the risk lives and is telling you rather than hiding it in the margin or saving it for a change request.
Be more suspicious of false precision. An agency that quotes £87,350 before anyone has looked at your ERP data is guessing to two decimal places. And when you compare quotes, compare the contingency conversation too: ask each agency what would cause the number to move, and listen for specifics. "Data migration, if your product codes don't match" is a real answer. "Nothing, it's all included" usually isn't.
If you're an agency or Umbraco partner
Three things make this model work. First, the band has to be anchored in pattern recognition - you can only say "£150-300k" with confidence once you've delivered enough similar projects to know the shape. Until then, borrow ranges from the breakdown in the iceberg post and adjust as you learn.
Second, discovery has to be positioned as the thing that narrows the band, which makes it easy to sell rather than awkward. The client wants the number pinned down as much as you do.
Third, the watermark needs a habit attached: a standing agenda item, a monthly check, whatever forces the "this is getting complex" conversation to happen on time. Don't rely on the team volunteering it mid-sprint. We've learned that one the slow way.
The takeaway
Price the outcome, not the hours. Quote in honest bands while you're uncertain, use discovery to narrow them, then commit to a watermark figure with a contingency ceiling everyone can see. The number that moves with no warning is the one that destroys trust - the number that moves with an early, evidenced conversation is just a project being managed properly.
Tim Gaunt is the founder and CEO of TSD, a UK e-commerce agency that's been designing, building and supporting complex commerce platforms for over 20 years. This post is part of a series based on his Codegarden 2026 talk, The €200k Sweet Spot, and the questions that followed it.