Anyone searching for “software development costs” or “how much does software cost” usually wants to understand what drives the budget before making an enquiry. For decision-makers, it is not a single price that matters, but the interplay of scope, risks, operational requirements and how clearly the requirements have been defined. This article offers practical guidance without price lists or day rates: first on typical cost drivers, then on how providers estimate effort and how to assess proposals, followed by budget control with a requirements specification and MVP, and finally on ongoing costs after go-live. For an initial estimate, the cost calculator or a project check can help.
What bespoke software costs depend on

The cost of bespoke software is made up of many building blocks. That is why proposals are only meaningfully comparable if the scope of services is described with a similar level of clarity. Even small differences in the task can significantly affect the effort involved. If you document processes properly in advance, you can read and assess proposals more effectively. It also helps to look at the typical project process.
One major cost driver is the functional scope. Each additional feature usually involves more than just another screen: processes, inputs, validation rules, approvals, notifications and edge cases all need to be considered, implemented and tested. Especially with portals and internal line-of-business applications, the effort quickly increases when processes run across several steps. The article on portals and processes shows how such workflows can be structured.
User roles are another factor in their own right. If case handlers, managers, external partners or citizens are all using the same software, they often need different views, permissions and approval steps. This increases the complexity of both the security logic and the user interface.
There are also interfaces with other systems. Connections to ERP, CRM, Microsoft 365, specialist applications or identity services such as Entra ID create value, but also increase the effort required for coordination, data mapping, error handling and testing. Data mapping means assigning content from one system to the appropriate fields and rules in another system. The article on synchronising data and systems is helpful when planning such connections.
Data migration is often underestimated. If existing data is to be transferred from legacy systems, it needs to be checked, cleansed, mapped and imported on a trial basis. The more inconsistent the source data, the greater the effort involved.
Design also affects the budget. A bespoke design, clear user journeys and clean interfaces save time in day-to-day use, but they require planning and coordination. A web application is software that runs in the browser without users needing to install it in the traditional way. What matters here is explained in the article on planning a web app.
The overall calculation also includes quality assurance as well as hosting and operations. Tests, process checks and controlled sign-off reduce the risk of errors in live operation. Automated tests check recurring functions by machine so that changes do not silently break existing processes. After that, the application needs a technical environment for deployment, security, monitoring and updates. Hosting means that the software runs on managed infrastructure, for example in the Microsoft Cloud Azure. You can find an overview of development, hosting and operations in the services section.
How providers estimate effort and how proposals differ
A reliable estimate starts with a clear description of the project. This includes goals, user groups, core processes, interfaces, quality targets and identifiable risks. Quality targets describe, for example, how stable, secure and maintainable an application should be in everyday use. The clearer this basis is, the easier it is to understand what a calculation is based on.
In practice, a structured approach helps. If you organise requirements and processes internally in advance, you will spot gaps earlier and be able to answer providers’ questions more precisely. The article “Digitising processes: How to proceed in a structured way” is a useful preparation for this.
Differences between proposals often arise not from the project title, but from the assumptions behind it. Pay particular attention to:
- what is explicitly included,
- what is mentioned only as an assumption,
- which open points still need to be clarified,
- how changes during the project are handled.
Contract and billing models can also differ. For assessing them, the label matters less than whether the model suits the current stage of the project. If requirements are still evolving, the project often needs more flexibility. If the scope has been clearly defined from a business perspective, the framework is usually clearer.
That is why a proposal that openly documents assumptions, boundaries and change processes is helpful. For preparation, the requirements specification template with structure and contents is suitable. The article “Change request in a software project explained simply” explains how changes can later be assessed properly.
How a requirements specification and MVP make the budget manageable

A requirements specification is one of the most important tools for budget control. It describes from the client’s perspective what is to be achieved: goals, user groups, functions, interfaces, framework conditions and priorities. This is particularly helpful for decision-makers because it clarifies not only the idea, but also the business purpose and the boundaries of the project.
What matters here is this: a good requirements specification does not have to define every technical detail. Its main purpose is to reduce misunderstandings and make proposals more comparable. If providers calculate on the basis of the same functional foundation, differences in scope and assumptions are easier to assess. If you would like to clarify questions about this, you can use contact and a no-obligation initial consultation.
An MVP is just as helpful. An MVP is a deliberately small first version with the most important functions, allowing the benefits to be tested early and the budget to be used more selectively. Instead of funding every idea straight away, the core processes are implemented first. Extensions then follow step by step according to their actual value.
In practice, a clear distinction between the following works well:
- Must-have requirements
- Should-have requirements
- Could-have requirements
This keeps the project manageable even if new insights emerge or budget limits become tighter. Change requests arise in almost every project. If priorities are defined early on, their impact on scope and budget remains easier to control. The article on structured release planning shows how later expansion stages can be planned.
A typical example is a CRM for an insurance broker. The first version may cover contacts, cases and follow-ups. Additional reports or assistants can be added later. Functions such as assessing push notifications sensibly also belong more in this second stage, once the core benefit is already in place.
AI features should be treated as a separate budget item. Assistants, knowledge search or document extraction can be useful, but they increase the requirements for data sources, permissions, testing and operations. Azure OpenAI is a service in the Microsoft Cloud for AI functions such as text processing and search. You can find examples of similar projects in the reference projects and client testimonials. If you would like to discuss a project directly, you can book a no-obligation 30-minute initial consultation via Microsoft Teams online.
Planning for ongoing costs after go-live
Budget planning does not end at go-live. After launch, there are usually ongoing costs for operations, maintenance and further development. If this phase is considered too late, you are only planning the creation of the software, not its day-to-day reality.
Recurring costs initially include hosting. Its scale depends, among other things, on:
- how many functions run in the background,
- how much data is processed or stored,
- what level of availability is expected in operation.
Maintenance is added to this. It includes security updates, technical updates, monitoring and adjustments when connected systems or platforms change. This is particularly important for interfaces, because it is not only your own software that continues to evolve.
Functional enhancement is also not a special case, but part of the normal lifecycle. Requirements change, processes are adapted and new interfaces are added. That is why it makes sense to distinguish, even before the project starts, between a one-off project budget and an ongoing operations and development budget.
CI/CD refers to automated processes by which changes are built, tested and deployed in a controlled way, making releases more reliable to prepare.
A practical example is an extension that connects Azure DevOps with planning software. Azure DevOps is a platform for planning, developing and delivering software. Here there is not only initial development effort, but later maintenance effort as well when systems, processes or data structures change. Structured release planning helps with later expansion stages.
Frequently asked questions about budget planning for bespoke software
Why do proposals for the same software idea often differ so much?
Because the same idea is often thought through to very different extents in different proposals. The title of a project may sound comparable at first glance, but in detail the assumptions often vary considerably.
Typical differences lie in:
- planning effort and workshops
- design and user guidance
- depth of testing and sign-off
- interfaces and data migration
- project management and coordination
- support after go-live
In addition, some providers calculate only the core functions, while others already take account of edge cases, permission concepts or future extensibility. That is why you should not look only at the total figure, but at the scope of services included.
Is a fixed price always the safer choice for bespoke software?
Not necessarily. A fixed price can work well when requirements, boundaries and acceptance criteria are clearly described. It creates a fixed framework, but assumes that this framework is itself reliable.
If key points are still open, the sense of security is often only apparent. Changes, new findings or additional requirements are then dealt with separately. For early project phases, a more flexible approach may therefore be a better fit for the reality of the project.
How detailed should a requirements specification be before I approach providers?
Detailed enough for the goal, users, core processes, interfaces, priorities and framework conditions to be understood. It does not have to contain every technical detail. More important is that a provider can see what is to be implemented, what is essential and where clarification is still needed.
A distinction between must-have, should-have and could-have requirements is helpful. This improves comparability and makes later decisions easier.
What should still be included in my budget after go-live, even though the software is already live?
The live phase includes more than mere operation. You should plan budget for, among other things:
- hosting and monitoring
- maintenance and technical updates
- adjustments to interfaces or platform changes
- bug fixing and support
- functional enhancement
- testing and controlled deployment of new versions
This gives a more realistic picture of the software’s full lifecycle.
Next steps for your budget planning
If you want software developed, first define the scope at a high level. Then compare proposals only on the basis of the same assumptions and, from the outset, include operations, maintenance and later enhancement in your planning as well.
ballmüller solutions has been developing bespoke software with Microsoft .NET in Berlin for over ten years. Since 2022, the company has worked according to Clean Code Development and provides planning, development, quality assurance, operations, support and further development with its own developers and designers, 100 per cent in Germany.
The following approach is suitable for the next steps:
- Use the cost calculator for an initial rough cost range.
- Use the project check if a description or requirements specification is already available.
- Arrange a no-obligation initial consultation to assess open points.
