The verdict in three sentences
A PHP 5 or early PHP 7 application that nobody wants to touch is a security and hiring liability, and patching it only delays a bigger bill. The safest route is an incremental strangler migration to Next.js, where new modules go live one at a time behind the same domain while the old app keeps running. For a Miami mid-market company, expect USD 8,000 to 20,000 for discovery and USD 90,000 to 300,000 for the rewrite with an onshore team, less with a nearshore partner.
Why mid-market firms in Miami are migrating now
The typical story: a logistics, real estate or healthcare services company built its operations app around 2014, the original developer moved on, and the app now runs on an unsupported PHP version. Pages take several seconds to load, dependencies show up in CVE databases, and cyber insurers and enterprise customers increasingly ask about patching policies in their questionnaires. Accessibility is another driver: customer-facing portals are regularly the target of ADA website lawsuits in Florida, and a rewrite is the right moment to build to WCAG 2.1 AA.
| Option | Indicative cost (2026 market ballpark, US) | Timeline | Risk |
|---|---|---|---|
| Keep patching | USD 2,000 to 6,000 a month | Ongoing | High, unfixable vulnerabilities |
| Upgrade to PHP 8, no redesign | USD 40,000 to 100,000 | 2 to 4 months | Medium, debt remains |
| Strangler migration to Next.js, onshore | USD 90,000 to 300,000 | 4 to 10 months | Controlled, module releases |
| Big bang rewrite | USD 150,000 to 400,000 | 6 to 14 months | High, long blackout |
| Strangler migration, nearshore team | Often 40 to 60 % below onshore | 4 to 10 months | Controlled, needs time zone overlap |
The method: discovery, then module by module
Discovery (2 to 4 weeks) maps modules, database tables, integrations and the business rules hidden in code, then produces a cut plan and per-module estimate. A routing layer is placed in front of the legacy app; each migrated module takes over its URLs, goes live on its own, and the matching legacy code is deleted.
| Phase | Duration | Content |
|---|---|---|
| Discovery and cut plan | 2 to 4 weeks | Mapping, risks, per-module estimate |
| Foundation | 3 to 5 weeks | Next.js, shared auth, router, CI/CD |
| First module (highest traffic) | 4 to 8 weeks | Rewrite, tests, production release |
| Following modules | 3 to 6 weeks each | Same cycle, parallel if team allows |
| Final data migration | 2 to 3 weeks | Cleanup, scripts, cutover |
| Legacy shutdown | 1 to 2 weeks | Archive, decommission old server |
On comparable migrations, page load times typically drop by around 60 % thanks to server rendering, caching and a reindexed database.
Onshore senior developer rates in South Florida commonly sit well above USD 100 an hour (2026 estimate). As a nearshore alternative, Kolonell's prices for custom applications are 6,100 to 10,670 EUR for medium projects and 10,670 to 22,870 EUR and up for complex ones, with maintenance at 114 or 183 EUR a month. Those are Kolonell's own prices; large legacy estates may be split into several complex projects.
Mini case study
Illustrative example: Daniel, CTO of a property management company in Miami, runs a PHP 5 tenant and maintenance app used by 120 staff. Hosting and emergency fixes cost USD 5,500 a month, or USD 66,000 a year.
Discovery costs USD 12,000 and an onshore strangler migration is quoted at USD 180,000 over 8 months in 6 modules. Afterwards, hosting and support drop to USD 2,000 a month, saving USD 42,000 a year. Faster screens save about 8 minutes per employee per day, roughly 3,800 hours a year across 120 staff, worth about USD 134,000 at a USD 35 loaded hourly cost. Total yearly benefit near USD 176,000 pays back the USD 192,000 investment in about 13 months.
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
FAQ
Can staff keep working during the migration?
Yes. With the strangler pattern users stay on the same domain, and each module switch is a 1 to 2 hour window planned outside business hours.
Do we keep the existing database?
Usually at first, so both versions read the same data. It is restructured step by step, and the final data migration takes 2 to 3 weeks.
Why Next.js instead of a modern PHP framework?
A modern PHP stack is a valid choice if your team knows PHP. Next.js makes sense when you want a faster interface, one language across server and browser and access to a larger hiring pool.
How do we avoid losing business rules?
Discovery lists them per module, and each release is accepted by 2 or 3 key users. Automated tests compare old and new outputs on sensitive calculations such as rent or fees.
Does nearshore work with a Miami team?
It works when there are at least 4 overlapping working hours and a named lead on both sides. West African and Latin American teams both offer that overlap with Eastern Time.
Let's scope your project. Tell us your app's age, module count and user base, and we will propose a fixed discovery followed by a phased migration plan with budget and timeline. 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.