Skip to main content

Blog entry by Jade Bonney

The single largest cost driver is rarely the choice of framework — it is almost always how much is still undecided. Every open question in the requirements becomes a contingency inside the number you receive. A vendor that has no visibility into the edge cases will assume a pessimistic case. Spending a week on a discovery phase often reduces the overall figure far more than haggling over hourly rates.

Integrations are the second big multiplier. A feature that touches only your own data is predictable; the same functionality wired into an old accounting system is a different problem. The unknown hides in the counterparty: rate limits and web development company sandbox access, waiting on someone else's team, inconsistent data. Ask the estimator to price integrations separately, since this is where estimates break.

The requirements nobody writes down quietly rewrite the number. An internal tool used by twenty people has almost nothing in common with the same feature set serving public traffic. Audit and compliance requirements, best app store optimization agency high availability, load handling, traceability and localisation each add weeks of work. State them early or else expect them priced as extras.

The mix of people behind the number matters. A rate card says little on its own: a senior engineer at twice the price frequently turns out to be cheaper overall than two inexperienced developers who need heavy code review. Also ask which roles are billed: delivery management, QA, release engineering and design are legitimate costs, but they should be itemised.

The quoted figure is never the total cost. Plan for infrastructure, paid APIs, observability and an ongoing support budget for every year the software runs. A useful planning figure is that any production system requires a noticeable fraction of the initial investment annually in fixes, updates and small changes. Treating the launch as the finish line is the classic mistake.