01
When to call us
More than two versions behind.
Every React Native release moves things around in the Podfile, the Gradle files and the native templates. The accumulated diff becomes a project of its own.
Libraries that don’t support the New Architecture.
A key component has no Fabric-compatible version, its repo is archived, and replacing it touches twenty screens.
Patches nobody knows how to reapply.
The patch-package files in node_modules pile up, their author left, and every bump breaks them.
The CI runs on deprecated tooling.
Xcode, the JDK, Gradle and Ruby are held back to stay compatible with an old version. The pipeline breaks every time the runners update.
The CocoaPods trunk goes read-only.
From December 2, 2026, it accepts no new podspecs. Builds will keep working, but new pod versions will no longer land there.
The stores require an SDK your version can’t target.
Since April 28, 2026, Apple requires Xcode 26 and the iOS 26 SDK; since August 31, 2026, Google Play requires API level 36 for every new app or update. An old React Native version eventually stops getting through.
02
How it runs
1 / Days 1–5
Upgrade diagnosis
Inventory of dependencies and their New Architecture compatibility, in-house native modules, patches, state of the CI and tests. A written diagnosis, three pages max, with the upgrade path and the hard spots.
2 / Weeks 1–2
Prepare the ground
Tests on the critical flows if they are missing, a reproducible CI, a measured baseline build: cold start, size, crash-free rate. That is the comparison point for everything after.
3 / Weeks 2–N
Upgrade, version by version
Official diff applied, libraries replaced or patched, native modules migrated to TurboModules and Fabric, Hermes verified. One PR per step, reviewed in your process, a demo every week.
4 / Last weeks
Verify and hand over
Phased release on both stores, comparison against the baseline build, an upgrade runbook for next time.
03
What you get
- Written diagnosis with the upgrade path
- App on a recent version, New Architecture enabled
- Dependencies replaced or patched, patches documented
- Native modules migrated to TurboModules and Fabric
- CI and tests green on the new version
- Replayable upgrade runbook
04
Comparable missions
05
Common questions
How much does a React Native upgrade cost?
It depends on how many versions there are to catch up, on in-house native modules, on libraries to replace and on the state of the tests. The five-day diagnosis is there to cost it on evidence, before the first PR.
Do we have to go through every intermediate version?
Not always, but often. When several versions separate the project from the target, we upgrade in steps to isolate regressions. If the Legacy Architecture is still on, we go through React Native 0.81 or Expo SDK 54, enable the New Architecture, verify, then carry on: that is the path the React Native team recommends.
Can we keep shipping during the upgrade?
Yes. The upgrade lives on a branch that is rebased regularly, and PRs land in steps through your review process. Your releases continue. We only avoid opening a large native project in parallel.
Our app is on Expo. Is it different?
The path is shorter: each Expo SDK targets one React Native version, and prebuild regenerates the native projects. The work then goes into dependencies, config plugins and your native modules. If the app is still bare React Native, an Expo migration can be part of the job.
What happens to our in-house native code?
Swift, Objective-C, Kotlin or Java modules are migrated to TurboModules and Fabric, or to Expo Modules if the app runs on Expo. Those no longer needed are removed, with an ADR that says why.
Who handles the next upgrade?
Your team. We leave an upgrade runbook, documented patches and a CI that checks the build on both platforms. The next one should not need us.
See also
React Native audit
Five days in your repo: profiling on a production build, crash reports, CI. A written diagnosis, three pages max, with ranked risks and costed options.
Expo migration
Move a bare React Native app to Expo: prebuild, config plugins, development builds, EAS Build and Update. PR by PR, in your repo, without a rewrite.
Terms on this page
Updated October 26, 2026