A separate version of the software for every customer sounds tempting at first.
The application already works, and the next customer only needs a few changes. Copying and adapting the software seems like the obvious step. That way, everyone gets exactly what they need.
The consequences often become clear only later. A new feature needs to be available to all customers. A bug has to be fixed everywhere. An update has to work with different customizations.
The further the versions diverge, the more work every shared improvement takes. That is why it pays to consider early on how individual requirements should fit into the product over time.
I have supported the development of several multi-tenant applications, including a B2B SaaS platform in a regulated environment. For decisions like these, I find it useful to consider shared software development and operations separately.
Several customers can use the same codebase while each has their own installation. Features and bug fixes are developed together, while operations remain separate.
Alternatively, several customers can use one shared platform. Their data and access rights must then be reliably separated.
Both approaches have benefits and costs.
A shared platform can save resources and standardize operations. It must also ensure that customers cannot access each other’s data or disproportionately affect each other’s experience through their usage.
Separate installations offer more flexibility, for example with updates and additional capacity. At the same time, they create more environments to set up, monitor, and maintain. How independent they really are also depends on the underlying infrastructure.
The right strategy follows from the requirements: How strongly must customers be isolated from one another? How different are their usage patterns? What costs and operational effort are acceptable?
The answer may be a fully shared platform, separate installations, or a combination. A mixed approach brings its own complexity and must justify the extra effort.
This trade-off matters for any software serving multiple customers. AI agents make individual customizations more accessible. That makes it even more important to decide how those customizations will be maintained over time.
Before copying the software for the next customer, it should be clear how they will continue to benefit from shared improvements.