The average enterprise loses more than $370 million a year to the failure to modernise legacy systems effectively, and burns roughly $2.7M annually just keeping them alive — 60-80% of the entire IT budget in organisations where legacy sprawl has gone unmanaged. Technical debt across US businesses has climbed to an estimated $2.41 trillion in lost productivity and maintenance cost. None of this is a one-time bill. Legacy maintenance costs escalate 10-15% a year after a system's warranty period ends, so a $2.4M environment in year one is $2.7M in year two and $3.6M by year five — with nothing new built in exchange for that growth.
This post follows directly from DevSecOps and closes the loop on the rest of this phase: platform engineering, low-code, agile delivery, API strategy, and shift-left security all assume a codebase modern enough to support them. A significant share of most enterprise application estates doesn't meet that bar, and it isn't shrinking on its own.
Why the Legacy Estate Keeps Growing, Not Shrinking
Every enterprise application was modern once. The reason the legacy estate expands rather than contracts is that "legacy" isn't a fixed list — it's a moving threshold, and systems cross it faster than most modernisation programmes retire them. A system built five years ago on since-deprecated dependencies, maintained by a shrinking pool of engineers who understand it, and too deeply embedded in downstream processes to touch safely, is functionally legacy regardless of how recently it shipped.
Developers now spend an estimated 42% of their working week on maintenance and technical debt rather than new capability — which means the organisation is paying full engineering salaries for a workforce that is less than half building anything new. That ratio is what turns "we'll modernise it eventually" into a permanent budget line rather than a project with an end date.
The Four Real Modernisation Strategies
Application modernisation gets pitched as a single decision — "rewrite it" — when it is actually a spectrum, and picking the wrong point on that spectrum is the most common reason modernisation programmes overrun budget without delivering the outcome that justified starting.
Rehost ("lift and shift"). Move the application to new infrastructure — typically cloud — with minimal code change. Fastest and cheapest option, and the right call when the goal is exiting a data centre or eliminating hardware risk on a tight timeline. It does nothing to fix the underlying architecture, so the technical debt moves with the application rather than getting resolved.
Replatform. Make targeted changes to take advantage of the new platform — swap a self-managed database for a managed cloud equivalent, containerise without redesigning the application — without a full rewrite. Meaningfully reduces operational burden at a fraction of refactor cost, and is usually the highest-ROI option for applications that are stable but operationally expensive.
Refactor. Restructure and optimise existing code without changing external behaviour — breaking apart a monolith's internals, cleaning up architecture, improving testability. Higher cost and risk than replatforming, justified when the application's business logic is sound but its structure is actively blocking delivery speed or reliability.
Rearchitect. Rebuild the application on a fundamentally different architecture — typically monolith to microservices, or a full rewrite on a modern stack. The most expensive and highest-risk option, reserved for applications where the current architecture is a genuine ceiling on what the business needs the system to do, not simply an inconvenience.
The organisations that get modernisation ROI right don't pick one strategy for the whole estate — they run an honest assessment against each application and let the answer vary. Applying "rearchitect" logic to a stable, low-change payroll system wastes budget that a genuinely blocked customer-facing platform needed.
Why Most Modernisation Programmes Stall Before the Systems That Matter
The recurring failure pattern is not choosing the wrong strategy — it's exhausting the modernisation budget and organisational appetite on the easiest systems first, then stopping before reaching the ones actually driving the $370M-a-year loss. Rehosting a dozen low-risk internal tools produces visible progress and a clean story for the next budget cycle. It also, quietly, leaves the actually load-bearing legacy system — the one nobody wants to touch, integrated into a dozen downstream processes, understood by two remaining engineers — exactly where it was.
Enterprises that break this pattern typically do one thing differently: they inventory and rank the estate by business risk and blocking cost before deciding where to start, rather than by ease of migration. The hardest system to modernise is very often the one costing the most to leave alone.
What This Means for Every IT Leader
1. Do you have an honest inventory of every application in your estate, ranked by what it actually costs to keep versus what it would cost to modernise? Most organisations can name their five hardest legacy systems from memory. Far fewer can quantify what those five systems cost per year in maintenance, incident response, and blocked capability — the number that should be driving prioritisation.
2. Is your modernisation roadmap sequenced by ease of migration or by business risk? These produce very different roadmaps, and only one of them reduces the number that matters.
3. What percentage of your engineering capacity goes to legacy maintenance versus new capability, and is that ratio moving in the right direction year over year? If it isn't moving, the modernisation programme is treading water regardless of how many individual projects it closes.
The Bottom Line
The legacy estate doesn't go away because it isn't a backlog with a bottom — it's a threshold that new systems cross every year, faster than most organisations retire the old ones. Rehost, replatform, refactor, and rearchitect are four genuinely different tools, and the discipline that separates modernisation programmes that move the number from ones that just produce activity is choosing the right tool per system, sequenced by what it actually costs to leave alone.
The next post in this phase looks at the other side of the same problem: AI-assisted development, and what changes when the tools writing and maintaining code are no longer only human.
Sources: DreamFactory, Software Improvement Group, LegacyLeap.



