React Native, Kotlin Multiplatform or native? How we choose
There is no "best" mobile technology — only the right one for your product. Here are the criteria we use to choose between React Native, Kotlin Multiplatform and native.

One of the first technical decisions in a mobile project is the technology — and one of the hardest to change later. That’s why we don’t choose by trend, but by product.
The three options
React Native (with Expo)
One TypeScript codebase for iOS and Android. A huge ecosystem, very fast iteration and over-the-air updates for small fixes.
Best for: most business apps, marketplaces, content apps and MVPs — especially when the team also works on the web with React.
Kotlin Multiplatform
Business logic (networking, data, rules) is written once in Kotlin and shared, while the UI can be native on each platform or shared with Compose Multiplatform.
Best for: apps with complex logic, performance requirements or Android-experienced teams who still want a 100% native experience.
Native (Swift and Kotlin separately)
Two fully separate apps. Maximum control over every detail and immediate access to the newest platform APIs.
Best for: apps that depend heavily on hardware, advanced graphics or brand-new system features.
Our criteria
- What does the app actually do? Forms, lists and payments work great cross-platform. Real-time video processing, less so.
- How fast do you need to iterate? For an MVP, development speed matters enormously.
- Who will maintain the code? The technology has to fit tomorrow’s team, not just today’s.
- Is the web part of the picture? If so, sharing code or know-how with React can matter a lot.
- Long-term budget. Two native apps roughly means two teams.
Our recommendation
For most new products we start with React Native + Expo — it offers the best balance of speed, quality and cost. We choose Kotlin Multiplatform when the logic is heavy or a native feel is critical, and native only when the product truly demands it.
Not sure what fits you? Write to us and we’ll tell you honestly what we’d pick in your place.