Published 2026-08-22 · Jordan Ellis, Founder

Why nuube starts every engagement with a fixed quote, not an estimate

Ask a contractor "how much to finish the kitchen" and you get an estimate — a number built on assumptions, with room baked in for the assumptions to be wrong. Ask "how much for exactly this cabinet, installed, by this date" and you get something closer to a quote. The difference isn't precision. It's who's holding the risk when an assumption turns out wrong.

Software has the same two options, and most dev shops default to the first one without ever naming it as a choice.

An estimate protects the estimator

Hourly billing with a rough estimate attached sounds reasonable: you pay for the work that actually happens, nothing more. In practice, the incentive runs the wrong direction. If a feature takes twice as long as estimated, that's not a loss for the shop billing hourly — it's twice the revenue. The estimate was never a promise. It was a guess, and guesses that run long cost the guesser nothing.

This isn't usually malicious. Software is genuinely hard to estimate, and reasonable people underestimate reasonable things. But "reasonable people make honest mistakes, and you pay for every one of them" is a worse deal than it sounds like on a sales call.

A fixed quote only works if the scope is fixed first

A fixed quote flips the risk, but only if the thing being quoted is actually specific. Quote a vague brief and you've just moved the guessing from hourly billing to a single bad number — which is why we won't fixed-quote something that hasn't been scoped yet. That's the whole reason Forecast exists as its own small, fixed-price engagement: two weeks to turn an idea into the kind of brief a Liftoff or Altitude sprint can actually be quoted against.

SCOPE GROWS →COSTHOURLYCHANGE ORDERFIXED QUOTE

The hourly line keeps climbing because nothing stops it from climbing — every quiet scope addition just shows up on the next invoice. The fixed-quote line is flat because the scope is flat. It only moves when scope genuinely changes, and when it does, that's a conversation and a new number, not a surprise.

What this means for you, concretely

You get a number before any work starts, and that number is the ceiling, not the floor. If something inside the agreed scope takes longer than we planned, that's priced risk we absorbed when we quoted it — not your problem. If you come back in week two wanting to add something real, you get an honest change order, not a quiet overage that only shows up when you ask why the invoice is bigger than expected.

The tradeoff we accept so you don't have to

Fixed pricing means we price in a buffer, and it means we'll say no to quoting something that isn't scoped enough to quote honestly — which is uncomfortable to say on a sales call, but less uncomfortable than a quote neither of us can actually trust. Occasionally something genuinely unknowable surfaces mid-build anyway. When it does, that's ours to absorb, not yours. That's not generosity. It's just what "fixed" has to mean for the word to still be true.

Not sure where this leaves your own product?

A Forecast engagement turns an unscoped idea into a clickable prototype, a technical plan, and a fixed quote — before you commit to anything bigger.

Start with a Forecast →