The verdict in three sentences
Moving from one installation per client to a multi-tenant SaaS costs between EUR 40,000 and 110,000 (about USD 44,000 to 120,000) for a vertical software vendor, over 4 to 8 months. The structural decision is isolation: a shared database costs roughly three times less to host than a database per tenant, but demands strict discipline on data separation under privacy law (PIPEDA in Canada, GDPR for EU clients). Most mid-size vendors are better off starting with a shared database and row-level isolation, keeping dedicated databases for enterprise accounts that pay for them.
The three isolation models compared
| Model | Principle | Infra cost for 150 tenants (EUR/month) | Data isolation | Development effort |
|---|---|---|---|---|
| Shared database, row-level isolation | One database, a tenant_id column, RLS policies | 400 - 900 | Good if RLS is tested | Medium |
| Schema per tenant | One database, one PostgreSQL schema per client | 700 - 1,500 | Very good | Medium to high |
| Database per tenant | One database instance per client | 1,500 - 3,500 | Maximum | High (migrations x N) |
| Hybrid | Shared database + dedicated databases for premium accounts | 600 - 1,800 | Flexible | High |
| Full instance per tenant | App and database duplicated | 3,000 - 7,000 | Maximum | Very high, back to on-premise |
The extra cost of the database-per-tenant model comes from minimum instance sizes billed even for small clients, and from the human cost of applying schema migrations 150 times. These are 2026 ballpark figures on a major cloud (AWS ca-central-1, Azure Canada, OVHcloud).
The migration budget line by line
| Item | Scope | Indicative budget (EUR) |
|---|---|---|
| Audit and scoping | Review of existing code, model choice, migration plan | 4,000 - 9,000 |
| Data layer refactoring | Tenant key, access policies, isolation tests | 10,000 - 30,000 |
| Authentication and accounts | SSO, roles per organisation, invitations | 5,000 - 12,000 |
| Usage-based billing | Meters, subscriptions, Stripe Billing, compliant invoices | 6,000 - 18,000 |
| Client data migration | Migration scripts from on-premise installs | 5,000 - 20,000 |
| Infrastructure and CI/CD | Containers, backups, monitoring, environments | 5,000 - 12,000 |
| Security and privacy compliance | Encryption, audit logs, DPA, penetration test | 5,000 - 9,000 |
Low end (EUR 40,000): recent codebase, few clients to migrate, flat pricing. High end (EUR 110,000): legacy code, 100+ heterogeneous installs, usage-based billing.
Data isolation and privacy: the non-negotiables
As a SaaS vendor, you become a data processor for every client. In practice: a signed data processing agreement (DPA), hosting in the right region (Canada for local public-sector clients, EU for European ones), automated tests proving that a user from tenant A never sees tenant B's data, and an access log kept for 6 to 12 months. A penetration test focused on tenant isolation costs EUR 3,000 to 6,000 and quickly reassures your prospects' IT directors.
Mini case study
Daniel, CEO of a Toronto vendor of practice management software for physiotherapy clinics, maintains 120 on-premise installations. His team spends 35% of its time on updates and supporting old versions, about EUR 95,000 a year in loaded salaries. A shared-database multi-tenant migration is quoted at EUR 72,000, with infrastructure at EUR 800 a month (EUR 9,600 a year). After the switch, maintenance time drops to 10%: savings reach about EUR 68,000 a year, minus EUR 9,600 of hosting, i.e. EUR 58,400 net. The project pays back in 15 months, and a EUR 89 monthly subscription per clinic replaces one-off licence sales.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
FAQ
Do we have to rewrite the whole product?
Rarely. In 70% of cases, the business logic is kept and the data layer, authentication and deployment are rebuilt. A full rewrite is only justified for code over 15 years old with no tests.
How long does migrating existing clients take?
Allow 2 to 3 months of progressive cutover, in waves of 10 to 20 clients, after 4 to 5 months of development.
How do we bill on usage?
You meter one simple indicator (active users, records, invoices issued) and send it monthly to Stripe Billing. This module costs EUR 6,000 to 18,000 depending on the number of pricing plans.
An enterprise client demands its own database. What then?
The hybrid model allows it: you charge an add-on of EUR 300 to 800 a month covering the dedicated instance and its administration.
What uptime should we commit to?
A 99.5% SLA is realistic with EUR 600 to 1,500 a month of infrastructure. 99.9% requires multi-zone redundancy, roughly 40% more infrastructure cost.
Let's scope your project. Describe your product, number of installations and target billing model: we will price a multi-tenant migration between EUR 40,000 and 110,000 over 4 to 8 months. Detailed quote within 48 h. WhatsApp +221 77 596 93 33.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.