Cost
Calculating TCO honestly: what an on-premises warehouse really costs
Most TCO comparisons for on-premises are too optimistic. Not because the hardware is miscalculated, but because the people are missing.

Comparing a cloud warehouse against your own usually means putting the cloud invoice against server prices. The result looks good and does not survive scrutiny. A defensible comparison needs six line items, and three of them are usually missing.
The six line items
| Item | How to quantify | Usually |
|---|---|---|
| Hardware | purchase ÷ useful life, typically 4 to 5 years | calculated correctly |
| Software and support | subscription per cluster or node | calculated correctly |
| Data center | rack space, power, cooling, network | forgotten or lumped in |
| Operations | staff share in full-time equivalents | forgotten |
| Spare capacity | headroom for maintenance and failure | forgotten |
| Migration | one-off effort in year one | underestimated |
Staff is the largest single item
A cluster does not run itself. It needs patches, upgrades, capacity planning, on-call cover and someone who understands why a query has been slow since Tuesday. In our experience a mid-sized production warehouse takes half to one full-time equivalent — not as a dedicated role but spread across a team.
Put a realistic fully loaded rate against that share and you quickly reach a five-figure sum per year. That is not a rounding error, and it is the item a cloud provider rightly claims as an advantage.
Leaving staff out of the on-premises calculation does not compare two options. It compares one option with a wish.
What makes on-premises structurally cheaper
Three things that do not depend on negotiating skill:
- Written-off capacity. Hardware in year four costs almost nothing on the books and still delivers performance. That effect does not exist in the cloud.
- No egress. Handing data between systems and sites is a networking question on your own infrastructure, not a line on an invoice.
- Decoupling usage from cost. Whether ten or a hundred dashboards run does not change the bill — as long as capacity holds.
The third is the real one. It is not a cost advantage in the narrow sense but a different cost curve: flat instead of rising. That changes how an organization deals with data.
A calculation you can check
An example with its assumptions on the table. The numbers are assumptions, not a survey — the point is the structure, not the result.
Assumptions
Cluster: 8 nodes, 4-year useful life
Hardware: EUR 160,000 purchase
Ops share: 0.75 full-time equivalents
Loaded rate: EUR 95,000 per year
Annual cost on-premises
Hardware amortization 40,000
Software subscription 30,000
Data center 12,000
Operations (0.75 x 95,000) 71,250
Spare capacity (10%) 15,325
--------------------------------------
Total 168,575 EUR
Additionally in year one
Migration (one-off) 45,000 EURThis calculation pays off against a cloud warehouse from roughly EUR 14,000 per month upward — and not below that. That is the figure an honest comparison produces, and it is lower than the one in sales material.
When on-premises is not the answer
The same calculation shows where to leave it alone:
- Low baseline load. Below roughly EUR 8,000 a month you pay the operations share on-premises without getting value for it.
- Highly variable load. A peak-to-median ratio above ten argues for elasticity you do not want to provision.
- No team. If nobody there runs Kubernetes, the staff item is not 0.75 FTE but a new hire.
- Short horizon. Amortizing over four years assumes the architecture stands for four years.
I consider that boundary more important than any sales argument. A move that does not pay off gets reversed in year two, and then you have migrated twice.
Sources
Every figure in this article is sourced. Where no defensible source exists, no figure is given.