React Native can give an Android and iOS product a strong shared centre, but it does not remove platform differences, release work or the need to understand what the app must do.
01
One app idea quickly becomes two delivery plans
Imagine a field service company replacing paper inspection packs. Engineers need to download assigned jobs, record measurements, take photographs, collect a signature and keep working when the signal disappears. Managers need to review the evidence from a laptop, request corrections and send the approved record into the existing job system.
The company wants an app for Android and iPhone. React Native sounds attractive because one team can build a large part of both products with React, JavaScript or TypeScript. That is a genuine advantage. It is not the same as building one identical application and pressing two publish buttons.
The useful business question is not whether React Native is good. It is whether the parts that can be shared are substantial enough to justify the framework, and whether the team can responsibly own the parts that remain platform specific.
02
What React Native actually is in 2026
React Native is an open source framework for building Android and iOS applications with React and the native capabilities of each platform. The application code describes interfaces using React components, while React Native creates the corresponding platform views. This is different from displaying a website inside an app shell.
The framework has also moved beyond the old bridge description that appears in many older articles. Its New Architecture uses a newer connection between JavaScript and native code, including typed interfaces for custom native modules. This matters technically, but a buyer does not need to fund a project because an architecture diagram looks modern. The framework still has to suit the product, team and operating conditions.
For new projects, the React Native team recommends using a framework such as Expo. Expo provides a prepared route through common needs such as navigation, native builds, compatible libraries and release tooling. It can remove setup work, but it does not remove mobile product decisions or platform responsibilities.
03
What can genuinely be shared
A well designed React Native product can share a substantial centre across Android and iOS. That may include the business rules, API client, data models, validation, state management, much of the interface, analytics events and a useful part of the automated test suite.
For the inspection app, the rules that decide whether a job is complete should not need separate Android and iOS implementations. The code that validates a measurement, prepares a record for synchronisation or explains why evidence is missing can usually be shared too.
This can reduce duplicate effort and make behaviour more consistent. A correction to a shared validation rule can reach both products through the same code change. One product team can discuss one journey rather than maintaining two unrelated interpretations of it.
Be careful with percentage promises. The shareable amount depends on the app. A form based service connected to ordinary device features may share a great deal. A product built around specialist hardware or platform-specific behaviour may share far less. The percentage is an outcome of the requirements, not a safe starting assumption for the estimate.
04
Where Android and iOS still differ
React Native deliberately supports platform-specific code because real differences remain. Permissions, background work, file handling, push notifications, deep links, accessibility behaviour and visual conventions can vary. Signing, store submission, privacy declarations and release review are separate platform tasks.
The inspection app may ask for camera access differently on each operating system. Background uploads may be constrained differently. A photo picker or map library may behave well on one supported device and expose a problem on another. The interface may also need small changes so that controls feel familiar to each audience.
React Native provides platform checks and separate Android or iOS files when this is necessary. It can also connect to native modules written for the underlying platform. That flexibility is one of its strengths. It is also evidence that cross-platform does not mean platform free.
05
The backend still does most of the serious business work
The mobile app is one client in a wider service. Authentication, permissions, job assignment, document storage, audit history, reporting and integration with the existing operation still need a dependable backend.
For field work, synchronisation deserves particular attention. The app needs to know which jobs were downloaded, which records only exist on the device, what has reached the server and what failed. It needs stable identifiers so the same inspection is not created twice. It needs a rule for what happens when the office changes a job while an engineer edits an older copy offline.
None of that becomes simple because the interface uses React Native. The framework can help one team deliver the Android and iOS clients. It cannot decide the data ownership, conflict rules or recovery process for the business.
06
Offline work is more than saving a form locally
A useful offline promise should describe a complete result. For the inspection company, it might be: an assigned job is downloaded before the visit, the engineer can complete the agreed inspection without a connection, the evidence is stored safely on the device, and the app clearly shows whether every item has synchronised.
That promise creates design questions. How many photographs may wait on the phone? Can the engineer sign out while records are pending? What happens when storage is low? Can sensitive data be removed when access is withdrawn? How does the user recover from an upload that repeatedly fails?
A prototype on ordinary and older supported devices is more valuable than a feature list that simply says offline mode. React Native is capable of supporting offline workflows, but the workflow still needs to be designed, tested and monitored.
07
Expo can accelerate delivery without removing release work
Expo is now the recommended framework route for many new React Native applications. It provides established tools and libraries around a common mobile delivery stack. This can reduce the amount of infrastructure a team has to assemble before it starts solving the product problem.
Expo Application Services can also build and distribute applications, create internal previews and deliver compatible JavaScript, styling and image updates between store releases. That last point needs a boundary. Changes to native code, native dependencies, permissions or the app binary still require a new build. Updates must continue to follow Apple and Google rules.
The business therefore still needs release environments, staged testing, version ownership and a recovery plan. Faster delivery is useful when it is controlled. An immediate route to production is not a substitute for knowing what changed and whether it works on the installed versions people still use.
08
Performance should be tested against the real journey
React Native interfaces are backed by platform views, and the current architecture is designed to support responsive native applications. That does not make every implementation fast. Large lists, image processing, complex animation, frequent background work and poorly chosen dependencies can still produce a slow product.
Test the journey that matters on realistic devices. For the inspection app, that means opening a busy job list, capturing several photographs, moving between records, losing the connection, closing the app and recovering the pending work. Measure startup time, interaction delay, memory use, failed synchronisation and battery impact where those things matter.
If the product depends on intensive graphics, unusual hardware, heavy local computation or precise background behaviour, build a technical proof before committing to the framework. Sometimes React Native will still be the right answer with a small native module. Sometimes fully native development is the clearer and safer route.
09
Security comes from the product design, not the framework name
React Native is not automatically secure or insecure. The application still needs safe authentication, suitable token storage, server-side authorisation, careful local data handling, dependency review and a process for supported updates.
A field app may contain customer addresses, photographs, signatures and commercially sensitive notes. The design should minimise what remains on the device, protect it appropriately, make access removable and define what happens to pending information when a user leaves the company.
Third-party libraries deserve particular care. A package can save weeks of work, but it also becomes part of the product's dependency and upgrade responsibility. Check that important libraries support the current React Native architecture and versions, are actively maintained and have a realistic fallback if support stops.
10
React Native, responsive web or fully native?
| Route | Best when | Main trade-off |
|---|---|---|
| Responsive web app or PWA | Broad reach, occasional users and desktop access matter more than deep device integration | Browser and operating system support can limit background work and specialist hardware access |
| React Native | Android and iOS share a substantial product journey, while the app still needs an installed experience and common native capabilities | Platform testing, releases and selected native work still remain |
| Fully native Android and iOS | Performance, specialist hardware or platform-specific behaviour is central to the product | Separate platform expertise and more duplicated delivery effort may be required |
The right comparison is about the job, not a league table of technologies.
A business may also need more than one client. The engineer could use a React Native app while managers and customers use a browser based portal connected to the same backend. That is not waste when each interface serves a genuinely different job. It becomes waste when the team builds several clients before proving the core workflow.
11
The ownership cost continues after launch
React Native has a regular release cadence, and its official support policy focuses on recent minor versions. That keeps the ecosystem moving, but it means upgrades cannot be left indefinitely. Operating system releases, store requirements and third-party libraries continue to change too.
The estimate should therefore include more than the first release. Who will monitor crashes? How will urgent fixes be tested? Which devices and operating system versions remain supported? How often will dependencies and React Native be reviewed? Who owns store accounts, signing credentials and privacy declarations?
A shared codebase can reduce maintenance duplication. It does not remove maintenance. The strongest commercial case includes a realistic plan for operating the product, not just building it.
12
Prove the difficult edge before funding the whole app
Return to the inspection company. The team does not need every screen before it can test the React Native decision. A focused prototype could download one assigned job, capture several photographs, retain the work without a signal, reopen after being closed and synchronise without duplication. The same journey should run on representative Android and iPhone devices.
That prototype would expose the parts most likely to change the estimate: camera behaviour, file sizes, background constraints, secure local storage and the synchronisation model. It would also give engineers and managers something concrete to use before the business commits to the complete product.
React Native makes the most sense when the application has a genuinely shared centre and the team is honest about its native edges. The reward is not two apps for the price of one. It is one product model, one capable delivery team and less unnecessary duplication across two platforms.
If you are considering a mobile product, I can help map the user journey, test the risky device and offline requirements, and decide whether React Native, a responsive web application or fully native development is the right first move.
Useful questions
Before choosing React Native, ask:
- Does the product genuinely need both Android and iOS?
- Which journeys, rules and data can be shared across the platforms?
- Which capabilities depend on platform-specific APIs, hardware or background behaviour?
- What exactly must users be able to do without a connection?
- Does the product also need a browser based portal for managers or occasional users?
- Which devices and operating system versions will be supported and tested?
- Are the important third-party libraries current and compatible with the React Native version being used?
- Which changes can use an over-the-air update and which require a new store build?
- Who owns monitoring, upgrades, store accounts, signing and incident recovery after launch?
- Which risky journey can be prototyped on real Android and iPhone devices before the full build?


