The verdict in three sentences
A PHP 5 application built in 2011 by a vendor that no longer exists has received no security patches since late 2018: every extra month is a risk, not a saving. A full rewrite on Next.js costs 80,000 to 180,000 EUR for a Dutch manufacturing SME and takes 6 to 9 months, while a progressive rewrite (strangler pattern) moves module by module at 10,000 to 20,000 EUR each, with no downtime. For most SMEs the progressive approach is the lower-risk choice, provided you start with the modules exposed to the internet.
The real cost of doing nothing
The app still runs, but it piles up risks management often underestimates. Here is the typical picture for a PHP 5 business app in 2026.
| Risk | Typical situation | Possible consequence |
|---|---|---|
| PHP 5.x | End of support December 2018 | Known, publicly exploitable vulnerabilities |
| Server and OS | Stuck on an old version for compatibility | Host threatening shutdown, cyber insurance refused |
| Libraries (mysql_*, jQuery 1.x) | Functions removed in recent PHP | Impossible to upgrade without rewriting |
| Code knowledge | One developer, vendor gone | Every change costs 2 to 3 times the normal price |
| Data | Undocumented MySQL schema without constraints | Duplicates, inconsistencies, hard extraction |
| Mobile and usability | Non-responsive UI | No data entry on tablets on the shop floor |
A ransomware attack on a manufacturing SME typically costs tens of thousands of euros in downtime and recovery, plus exposed customer data and a 72-hour breach notification duty to the Dutch Data Protection Authority under GDPR.
Full rewrite or progressive migration: the comparison
| Criterion | Full rewrite | Progressive migration (strangler) |
|---|---|---|
| Total budget | 80,000-180,000 EUR | 10,000-20,000 EUR per module, often 90,000-190,000 EUR overall |
| Time to first delivered value | 6 to 9 months | 6 to 8 weeks |
| Database migration | Once, 10-15% of budget | Progressive, temporary sync |
| Parallel run | 1 to 2 months at cutover | Continuous, module by module |
| Cutover risk | High, everything changes in one day | Low, rollback possible per module |
| Coordination overhead | Low | Higher (proxy, shared authentication) |
| Best when | Small app, or one that no longer fits the business | Critical app used every day |
The strangler pattern places a proxy in front of the old app, then replaces screens one by one with Next.js pages sharing the same authentication. Users switch over without noticing, and the old code shrinks until it can be switched off.
How a rewrite budget splits
| Item | Share of budget | Example on 130,000 EUR |
|---|---|---|
| Audit and data mapping | 5-8% | 8,500 EUR |
| Target architecture, authentication, proxy | 8-12% | 13,000 EUR |
| Rewriting business modules | 50-60% | 71,500 EUR |
| Database migration and cleanup | 10-15% | 16,000 EUR |
| Automated tests and acceptance | 8-10% | 12,000 EUR |
| Parallel run, training, decommissioning | 5-8% | 9,000 EUR |
Database migration is the trickiest item: dates stored as text, mixed encodings, missing foreign keys. A 2 to 3 week audit, billed 7,000 to 10,000 EUR, sets a firm budget before you commit.
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.
Pieter, IT manager of a 180-employee manufacturing SME in Amsterdam, maintains a PHP 5 app for production tracking and quotes. He pays a freelancer 1,800 EUR a month to keep it alive, and the insurer requires an upgrade before renewing the cyber policy. He chooses progressive migration: 9 modules at 14,000 EUR on average, plus 18,000 EUR for audit and architecture, or 144,000 EUR over 8 months. Maintenance of the new app falls to 800 EUR a month, saving 12,000 EUR a year, and tablet data entry on the shop floor saves about 1 hour a day for 6 team leads, close to 52,000 EUR a year at 40 EUR an hour. Payback: about 2.3 years.
FAQ
Why Next.js rather than modern PHP like Laravel?
Both are valid. Next.js with TypeScript makes a fast, mobile interface easier and widens the developer hiring pool. If your in-house team knows PHP, Laravel 11 is a serious alternative at a budget within about 10%.
Can we keep the existing database?
Yes, at first the new app can read the same MySQL database. Migration to PostgreSQL or a cleaned schema comes later, for 10 to 15% of the total budget.
How long do both apps run side by side?
With a full rewrite, 1 to 2 months of parallel run. With progressive migration, coexistence lasts the whole project, 6 to 9 months, but each module only runs twice for 2 to 4 weeks.
What if we have no documentation at all?
That is the most common case. The 2 to 3 week audit rebuilds the map of screens, business rules and tables for 7,000 to 10,000 EUR, and becomes the specification.
Should we freeze changes during the rewrite?
Limit changes on the old app to urgent fixes. Every new feature should be built directly on the new stack, otherwise the budget drifts by 15 to 25%.
Let's scope your project. Send us your app's age, modules and number of users, and we will propose an audit followed by a rewrite plan priced between 80,000 and 180,000 EUR, delivered in 6 to 9 months. 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.