The verdict in three sentences
Modernizing a legacy application costs 50,000 to 160,000 EUR over 16 to 32 weeks, depending on codebase size and data complexity. The defining choice isn't the target language but the strategy: big-bang (replace everything at once, high risk) or strangler pattern (replace module by module, controlled risk). In 8 cases out of 10, the progressive approach is safer and easier to fund.
Big-bang vs strangler pattern: the comparison
| Criterion | Big-bang rewrite | Progressive strangler pattern |
|---|---|---|
| Time to first value | 16-32 weeks | 6-10 weeks (first module) |
| Regression risk | High (everything switches) | Low (module by module) |
| Total cost | 60,000-140,000 EUR | 50,000-160,000 EUR |
| Service continuity | Possible downtime/freeze | Maintained |
| Funding | In one block | Spread per batch |
| Reversibility | Hard | Easy (module rollback) |
| Recommendation | Small simple apps | Mid-caps, critical apps |
The strangler pattern gradually places new modules in front of the old system until it "strangles" it entirely. You deliver value from week 8 and can stop or re-prioritize without losing everything.
Current vs target maintenance: the real cost of legacy
| Item | Legacy application | Modernized application | Annual gap |
|---|---|---|---|
| Fixes & bugs | 35 days/yr | 10 days/yr | ~15,000 EUR/yr |
| Security flaws | 4-6/yr (urgent patches) | < 1/yr | ~9,000 EUR/yr |
| Time to add a feature | 3-5 weeks | 1-2 weeks | Velocity x2.5 |
| Hosting cost | Aging dedicated server | Optimized cloud | ~4,000 EUR/yr |
| Dev turnover (obsolete stack) | High | Low | Easier hiring |
An unmaintained PHP/jQuery app often costs 25,000 to 40,000 EUR/yr in hidden overhead. Modernization is justified not by tech fashion but by these savings and by recovered velocity.
Data-migration risks
Data is the most sensitive point of a modernization. Here are the risks and their mitigation.
| Risk | Impact | Mitigation |
|---|---|---|
| Inconsistent schemas (years of additions) | High | Audit + mapping before migration |
| Duplicates and orphan data | Medium | Scripted cleanup + reconciliation |
| Loss during cutover | Critical | Dry-run migration + double run |
| Large volumes (slowness) | Medium | Batched migration, off-production |
| Undocumented fields | Medium | Reverse engineering + business validation |
A dry-run migration (replayed several times before the real cutover) is non-negotiable on critical data. It's 8 to 15% of the project budget, but it's the insurance against catastrophe.
Mini case study
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
Nadia, CIO of a mid-cap distribution firm in Bordeaux, runs an order-management app in PHP 5 / jQuery, written 12 years ago. Annual maintenance: 38,000 EUR, plus two major security incidents per year. She launches a strangler-pattern modernization: 6 batches over 26 weeks for 128,000 EUR. From batch 2, the orders module switches over and maintenance of that part drops 60%. Eventually, annual maintenance falls from 38,000 to 13,000 EUR, or 25,000 EUR/yr saved, and velocity doubles. Payback: about 5 years on maintenance alone, far faster once productivity gains and reduced security risk are factored in.
FAQ
How much does legacy app modernization cost in 2026?
Between 50,000 and 160,000 EUR depending on codebase size, number of modules and data complexity. The strangler pattern lets you spread this investment batch by batch.
Big-bang or progressive approach?
The strangler pattern is recommended for critical apps and mid-caps: controlled risk, service continuity, spreadable funding. Big-bang is justified only on small, simple applications.
What's the real cost of an unmaintained app?
Often 25,000 to 40,000 EUR/yr in hidden overhead: fixes, urgent security patches, slow evolution and difficulty hiring on an obsolete stack. That's the central argument for modernization.
Is data migration risky?
It's the most sensitive point. You secure it with an upfront audit, precise mapping and a dry-run migration replayed several times before cutover. Budget 8 to 15% for this phase.
Can we modernize without stopping the service?
Yes, that's the whole point of the strangler pattern: new modules coexist with the old system and progressively replace it, with no downtime for users.
Let's scope your project. Describe your current application (stack, volumes, critical modules) and your indicative budget (50,000-160,000 EUR): we'll propose a modernization strategy and phasing. 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.