Definition
A legacy system is any software application or technology infrastructure that is still in active use but is built on outdated technology, architecture, or practices. The term does not necessarily mean the system is broken — many legacy systems work reliably and handle critical business operations. What makes them “legacy” is that they are difficult to maintain, expensive to modify, hard to integrate with modern tools, and increasingly risky to operate as security vulnerabilities accumulate and vendor support ends. Legacy systems often outlive their expected lifespan because the cost and risk of replacing them is significant.
Why It Matters
Legacy systems represent a paradox: they are simultaneously essential to your operations and a growing liability. They work, so replacing them feels unnecessary. But every year they remain, the risks increase — the pool of developers who understand the technology shrinks, security patches stop being released, integration with new tools becomes harder, and the knowledge required to maintain them concentrates in fewer people. Eventually, the cost of keeping the system running exceeds the cost of replacing it, but by that point the migration is more complex than it would have been years earlier. Addressing legacy systems early, while the knowledge and options still exist, is almost always less expensive than waiting.
Example
A distribution company runs its core operations on a system built fifteen years ago in a language that few current developers know. The system handles order processing, inventory management, and supplier communications — critical functions that cannot go offline. The original developer retired three years ago. When the company needs to add an API so their new e-commerce platform can check inventory levels, they discover that the architecture cannot support it. They face a choice: build an expensive workaround to bridge the two systems, or begin the larger project of replacing the legacy system entirely.