Why two quotes differ by a factor of ten
Because the brief describes an outcome and not the plumbing. “A system to manage our jobs” is one sentence and at least six different projects, depending on how many people use it at once, whether it talks to the accounts package, whether it works offline in a van, and what happens when two people edit the same job.
The other reason is that “custom software” is not a category of thing, it is a statement about who wrote it. A form that emails a rota and a warehouse system with stock reservations are both custom software, and comparing their prices is not a meaningful exercise.
The five things that actually drive the hours
| Factor | Cheap end | Expensive end |
|---|---|---|
| Systems it must connect to | None, or one with a documented API | Several, one of which has no API at all |
| Who uses it | You and two colleagues | Customers, in public, on their own devices |
| Cost of being wrong | Somebody re-types a row | Money moves, or stock is promised that does not exist |
| Is the process written down? | Yes, and everybody follows it | No, and three people do it differently |
| Data you already hold | Clean, in one place | Three systems disagreeing about the same customer |
Source: Cybrial’s own scoping factors, written from builds. No build-price ranges for the wider market are published here — see the sources at the foot of this page.
The fourth row is the one that surprises people, and it is the one worth acting on before you commission anything. A process nobody has written down cannot be automated, because the first job is discovering that three people do it three different ways and deciding which is right. That is a management decision wearing a software costume, and it is far cheaper to make it before the developer is being paid to sit in the meeting.
The question worth asking first
Does something already exist that does most of this?
It is a genuinely awkward question for anybody who builds software to raise, and it saves clients a great deal of money. Job management, quoting, booking, stock, CRM — all of these have mature products where somebody else carries the maintenance, the security patches and the mobile app. Paying a subscription for 80% of what you want is very often better than owning 100% of it.
Build when the answer is genuinely no: when the thing you do differently is the thing that makes you money, when the software would have to fight the way you actually work, or when the integration between the products you already run is itself the problem. That last case is common and is usually a much smaller project than a full system.
What a developer costs, and why the day rate is not the number
People ask for a day rate because it feels comparable. It is the least useful figure in the conversation: a faster developer at a higher rate is routinely cheaper than a slower one at a lower rate, and neither of you can tell which you have from the number.
What is comparable is a fixed scope with a fixed price, agreed in writing, with an explicit list of what is not included. If somebody cannot give you that for a well-defined piece of work, the work is not well-defined yet — and that is a finding rather than an obstacle.
The figure that matters more than either is the second-year cost. Custom software is not a purchase, it is a commitment: hosting, updates, browser and platform changes, and somebody to call. A build with no plan for year two is not cheaper, it is unfinished.
How to commission it without losing money
- Write down the process as it actually happens, including the exceptions. If you cannot, that is the first piece of work.
- Ask what already exists. Get a straight answer on why it will not do.
- Scope the smallest version that would be genuinely useful, and build that. A system nobody uses because it was too ambitious is a total loss; a small one that works gets extended.
- Agree in writing what is included, what is not, and who owns the code. You should own it.
- Budget for year two before you commit to year one.
The third point does most of the work. Almost every expensive failure in this field is a first version that tried to do everything, delivered late, and was rejected by the people who were supposed to use it.


