All posts
Process5 min read

Why We Only Do Fixed-Price Contracts (and How We Survive It)

Hourly billing rewards slow delivery. How we make fixed-price contracts work — paid discovery, one-week sprints, Friday demos — and when the model breaks.

An hourly contract pays the agency more when your project takes longer. Every failure mode founders complain about — padded estimates, meetings that multiply, three people on a call where one would do — follows from that single incentive. Nobody has to act in bad faith. The billing model does the damage on its own.

We have run KiswahTech on fixed-price contracts from the start. This post covers why, the machinery that makes fixed price survivable for us, and the cases where we refuse to quote one because it would be dishonest.

What hourly billing actually optimizes for

An hourly estimate is not a commitment. It is an opening bid. Once work starts, every scope conversation happens with the meter running, and every ambiguity resolves toward more hours. The agency is not scheming — it simply has no structural reason to tell you "you don't need that feature" or "there's a simpler way to build this." Under hourly billing, efficiency is a cost center.

Look at who carries the risk. If the build takes twice as long as estimated, you pay twice as much for the same product. The agency cannot lose. You cannot win.

Fixed price inverts this. If we are slow, we eat the difference. Our margin comes from delivering efficiently, which pushes us toward simple architectures, proven patterns, and saying no to complexity the product does not need. The incentive that works against you under hourly billing works for you under fixed price.

Fixed price fails without discipline

The obvious objection: fixed-price projects blow up too. They do — when the price is attached to a vague scope. A fixed price on "build us a CRM" is a dispute scheduled for month three. The model only works with machinery around it. Here is ours.

Paid discovery before any price

We never quote from a sales call. Discovery is a short, paid engagement where we map the data model, the integrations, the risks, and — most importantly — written acceptance criteria for every feature. The test is simple: if we cannot write the acceptance criteria, we cannot price the work, and we say so. The output is a scoped backlog with a fixed price attached. If you take that spec to another team, fine. You own it either way.

One-week sprints

Long milestones hide problems. A three-month milestone can be quietly off course for eleven weeks; a one-week sprint cannot. Every sprint covers a defined slice of the backlog, so a misread requirement surfaces within days, while it is still cheap to fix.

A demo every Friday

Working software, deployed, every Friday. Not slides. Not "90 percent done." If we cannot demo it, it is not done. This is also your control mechanism: you see real progress weekly, and stopping or steering never costs more than one week of work.

Change orders, in writing

When a "small tweak" comes up mid-build, we price it as a change order — even when it is one sentence. This sounds bureaucratic. It is the opposite. You know the cost of every change before you decide, and the budget stays under your control. Scope creep is what happens when nobody writes the change down.

You own everything

Full IP ownership from the first commit, NDA signed before scoping starts. This is not incidental. Fixed price is a trust-dependent model, and trust needs structure, not vibes.

When fixed price is the wrong model

A fixed price is a price on a known outcome. Some work has no knowable outcome, and pretending otherwise is lying to somebody.

We know this from our own product. TeleVox, the voice-AI platform we built and operate, answers business phone calls with a measured voice response of about 0.7 seconds. Getting there meant iterating on voice-activity-detection thresholds, streaming speech-to-text, and text-to-speech chunking — weeks of experiments where each result determined the next step. Nobody could have written acceptance criteria for that work in advance. It was research.

For research-shaped work we do one of two things: scope a fixed-price timebox — a sprint or two whose deliverable is a findings report and a prototype — or decline. You can fix the price of a timebox. You cannot fix the price of an unknown outcome, and anyone who claims they can is misleading either you or themselves.

Fixed price is also wrong when what you actually need is ongoing embedded capacity — a team that flexes with a moving roadmap rather than delivering a defined scope. That is a different engagement shape, and we run it differently as a startup engineering partner.

What it looks like when it works

A real-estate CRM we delivered went through exactly this machinery: paid discovery, a priced backlog, one-week sprints, Friday demos, a handful of change orders along the way. The client knew the total cost before the first sprint started and saw deployed software every week. Its users report a 40% increase in revenue since adopting it. Nothing about that outcome required heroics. It required a scope both sides could point at.

After 11+ years shipping production platforms, our conclusion is boring: alignment beats effort. A disciplined team with aligned incentives will outdeliver a brilliant team billing by the hour.

If you have a product to build and want to know the full price before you commit to it, discovery is where that starts. Get in touch and we'll tell you within a call whether your project is one we can fix-price — and if it isn't, we'll tell you that too.

UKUsama KhalilFounder, KiswahTech — senior software architect, builder of TeleVox AIWork With Us