SaaS Multi-Tenancy: Architecture Choices for UK Startups
Compare shared, schema-per-tenant and database-per-tenant models across isolation, cost, UK GDPR and scale, then choose a multi-tenant architecture you can evolve.
Multi-tenancy is the architecture that lets one running system serve many customers, or tenants, while keeping each tenant's data and configuration separate. For a SaaS startup it is one of the earliest decisions with the longest consequences, because it shapes cost per customer, data isolation, security posture, onboarding speed and how painful future change will be.
There is no single correct model. The right choice depends on your customers, the sensitivity of their data, your pricing, your team's operational maturity and the regulatory expectations you must meet. The goal is to pick a starting model that fits today and to design so that moving a tenant to stronger isolation later is a planned migration rather than a rewrite.
1. Define what a tenant is before choosing a database
A tenant is usually a customer organisation, but the boundary is not always obvious. Clarify whether a tenant is a company, a workspace, a team or a single billing account, and whether one user can belong to several tenants. These answers determine your identity model, how data is partitioned, how access is scoped and how billing aggregates usage.
Whatever isolation model you choose, a tenant identifier should be an explicit, first-class part of the design rather than an afterthought bolted onto queries. Every request, record and background job should carry and enforce tenant context, so that access is scoped by construction and a missing filter cannot silently expose one tenant's data to another.
2. Compare the three main isolation models
Most SaaS data architectures fall on a spectrum from fully shared to fully isolated. The three reference points below cover the majority of decisions, and a mature platform often mixes them, keeping most tenants pooled while isolating a few that require it.
- Shared schema with a tenant column: all tenants share tables, separated by a tenant identifier and row-level access rules. Lowest cost and simplest to operate, but isolation depends entirely on correct, enforced filtering.
- Schema or database per tenant on shared infrastructure: each tenant has its own schema or database, giving stronger separation and simpler per-tenant backup and export, at higher operational and migration overhead.
- Isolated stack per tenant: dedicated database and often dedicated services for a tenant, used for the most demanding security, compliance or performance requirements. Strongest isolation, highest cost and slowest to provision.
As a general pattern, early-stage startups serving many small customers benefit from a shared schema for speed and economics, while an enterprise tier with strict data requirements may justify per-tenant isolation. Choosing a model you can evolve matters more than picking a theoretically perfect one on day one.
3. Plan for isolation and the noisy-neighbour problem
Shared infrastructure introduces the noisy-neighbour problem: one heavy tenant can degrade performance for everyone. Address it with query limits, connection pooling, rate limiting per tenant, background-job fairness and monitoring that attributes load to individual tenants. Without per-tenant visibility, you cannot tell whether a slowdown is a code problem or a single customer consuming disproportionate resources.
Data isolation must be enforced by the system, not by developer discipline alone. Techniques such as database row-level security, a mandatory tenant scope in the data-access layer and automated tests that attempt cross-tenant access reduce the risk of a leak. A single query that forgets its tenant filter is one of the most damaging failures a SaaS product can have, so make that mistake structurally hard.
4. Handle security and UK GDPR by tenant
Multi-tenancy has direct data-protection implications. Under UK GDPR you should be able to answer, per tenant, where personal data is stored and processed, how long it is retained, how a data subject request or deletion is fulfilled, and how one tenant's data is kept separate from another's. A shared model can meet these expectations, but only if scoping, export and deletion are designed as tenant-aware operations.
Some customers, particularly regulated ones, will ask about data residency, encryption, sub-processors and the ability to have their data isolated or deleted on exit. Decide early which of these you can meet in a shared model and which require stronger isolation, and involve appropriate privacy and legal expertise for your specific circumstances. Security controls such as encryption, access logging and least privilege apply across every model.
5. Design onboarding, migrations and scaling
Tenant provisioning should be automated from the start. Creating a tenant, seeding default configuration, inviting the first users and enabling billing should happen without manual database work. The more isolated your model, the more this matters, because per-schema or per-database provisioning is where manual processes quietly become a scaling bottleneck.
Schema migrations are harder under multi-tenancy. In a shared schema a migration touches everyone at once, which is efficient but risky; in a database-per-tenant model you must run and verify the same migration across many databases, ideally in controlled waves. Build tooling that applies and reconciles migrations reliably, and rehearse them, because an inconsistent schema across tenants is difficult to diagnose in production.
6. Model cost per tenant honestly
Each model has a different cost curve. A shared schema keeps infrastructure cost low and roughly flat as tenants grow, which suits many small customers on modest plans. Isolation raises baseline cost per tenant through separate databases, backups and operational overhead, which can be acceptable for high-value enterprise contracts but ruinous if applied to a large base of low-paying users.
Align the architecture with the pricing model. If isolation is a premium capability, price it as one and offer it on the tiers that fund it. Instrument resource usage per tenant so you understand true unit economics rather than an average that hides a few expensive customers subsidised by everyone else.
7. Apply a decision framework for UK startups
- Choose a shared schema when you serve many small-to-medium customers, cost sensitivity is high and no tenant has requirements that a well-enforced tenant scope cannot meet.
- Choose schema or database per tenant when customers need clearer separation, per-tenant backup and export, or predictable isolation, and you can afford the operational overhead.
- Choose an isolated stack for a small number of high-value or regulated tenants whose security or compliance requirements justify dedicated infrastructure.
- Prefer a hybrid when most tenants can share while a premium tier is isolated, and defer the decision only until you can name your data sensitivity, pricing and target customer.
8. Plan for change from the start
The most expensive mistake is assuming the first model is permanent. Business needs shift: a shared-schema startup wins a regulated enterprise customer, or an over-isolated platform discovers its cost base cannot support a self-serve tier. Design so that a tenant's data can be exported, moved and re-homed cleanly, and keep the tenant boundary explicit enough that such a migration is mechanical rather than heroic.
Start with the simplest model that meets today's real requirements, invest in tenant-aware isolation, provisioning and observability, and revisit the decision as your customer profile changes. SoftRevery can help design and build a multi-tenant SaaS platform, while the architecture stays grounded in the customers, data sensitivity and economics your business can verify.
Frequently asked questions
What is multi-tenancy in a SaaS application?
Multi-tenancy means one running system serves many customers, or tenants, while keeping each tenant's data and configuration separate. It shapes cost per customer, data isolation, security, onboarding and scalability, which makes it one of the earliest and most consequential architecture decisions a SaaS startup makes.
Should a startup use a shared schema or a database per tenant?
A shared schema suits many small-to-medium customers where cost matters and a well-enforced tenant scope meets requirements. A database per tenant fits customers needing stronger separation, per-tenant backup or predictable isolation, at higher operational cost. Many platforms use a hybrid: pooled by default, isolated for a premium tier.
How does multi-tenancy affect UK GDPR compliance?
You must be able to answer, per tenant, where personal data is stored and processed, how long it is retained, how subject requests and deletion are handled and how tenants are kept separate. A shared model can meet this if scoping, export and deletion are tenant-aware. Involve appropriate privacy and legal expertise for your specific circumstances.
What is the noisy-neighbour problem and how do you prevent it?
On shared infrastructure, one heavy tenant can degrade performance for everyone. Prevent it with per-tenant rate limits, query and connection controls, background-job fairness and monitoring that attributes load to individual tenants. Without per-tenant visibility you cannot distinguish a code problem from a single customer consuming disproportionate resources.
Related services
Explore how to apply these principles to your product or workflow.
