The real cost of standing still
It's invisible in the budget, but it's there: unpatched vulnerabilities on an end-of-life framework, abandoned libraries you end up forking to keep alive, and hiring that gets harder — good developers avoid legacy. Doing nothing is a valid choice on one condition: the application has a known end date. Otherwise it's just compounding debt.