Custom software quotes vary more than almost anything else a business buys, which makes them hard to judge. Two quotes for what sounds like the same system can differ by a factor of three, and neither is necessarily wrong.
Here’s what actually sets the number, so you can read a quote instead of just comparing totals.
Rough ranges first
A single internal tool — $8,000 to $25,000. One team, one workflow it replaces, a handful of screens. The spreadsheet-and-manual-steps process that’s been annoying one department for two years.
A departmental system — $25,000 to $75,000. Multiple user types, real reporting, integration with one or two systems you already run.
A multi-role platform — $75,000 and up. Several kinds of user with different permissions, complex rules, payments, data migration from whatever came before.
Ranges are a starting point, not a quote. What moves a project inside them — or out of them — is below.
What actually drives the price
Number of distinct user roles
The most underestimated driver by a wide margin. Each role is its own set of screens, its own permissions, and its own testing. A system for “staff” is one build. A system for staff, managers, clients, and an administrator is closer to four overlapping ones.
Integrations, and how well documented they are
Connecting to a major service with real documentation is predictable work. Connecting to an older internal system, or a vendor whose API docs are a PDF from 2019, is not — and anyone quoting it confidently is guessing.
Data migration
Moving existing records into the new system is rarely a simple import, because real data is messy: duplicates, missing fields, three spellings of the same client name, decisions nobody documented. This routinely costs more than a feature people assumed was the hard part.
Compliance and audit requirements
If the system touches health data, payments, or anything with a retention or audit-trail requirement, that’s not a feature you add later — it shapes the architecture. Say it up front; discovering it mid-build is expensive.
Who maintains it afterwards
Software isn’t a one-time purchase. Dependencies need updating, hosting needs watching, and the business will want changes. A quote with no answer for what happens in month seven isn’t cheaper — it’s incomplete.
What costs less than people expect
Visual polish on internal tools, mostly. A tool used by eight people who already know the workflow needs to be clear and fast, not beautiful — and that’s a meaningful saving if you’d rather put the budget into the logic. Hosting is also usually minor for internal systems: real money goes into building, not running.
Build versus keep subscribing
The comparison worth doing is total cost over three years, not build price against monthly fee. Take your per-seat cost, multiply by headcount and by 36, then add what the workarounds cost you in time. That total is what a build is competing against.
Sometimes it’s not close and you should keep subscribing — we’ll say so. The case for building gets strong when per-seat pricing punishes your growth, or when the workarounds have become the system, which is the pattern we described in our post on outgrowing off-the-shelf software.
Why the cheapest quote is often the most expensive
A quote well below the others usually means one of three things: the scope was understood differently, the unpredictable parts were priced as if predictable, or maintenance and handover were left out. None of those savings survive contact with the project — they arrive later as change requests.
What to ask instead of “can you do it cheaper”: what’s included, what’s explicitly excluded, and what happens to the price if an assumption turns out wrong.
How we price custom software
Scoped around your actual workflow rather than a package, and we separate the predictable work from the parts that genuinely aren’t — so you can see which is which instead of getting one averaged number that hides the risk.
Tell us what you’re trying to solve — or read more about how we approach custom software.

