We build mostly in native Swift, so you might expect a one-sided answer. It is not. Flutter and React Native are mature, and for some products they are the better choice. Here is how we think about it.
The one-paragraph answer
If your product is iOS-first, relies on platform features like widgets, Live Activities, Siri and Shortcuts, or simply has to feel perfect on iPhone, choose native Swift and SwiftUI. If you need iOS and Android on day one with a mostly standard interface and one shared team, choose Flutter or React Native. If your team already writes React for the web, React Native will feel like home.
How they work
- Swift and SwiftUI are Apple's own language and UI framework. You use the real system components, so the app behaves exactly like iOS does.
- Flutter uses the Dart language and draws every pixel itself with its own rendering engine. It looks the same on every platform.
- React Native uses JavaScript or TypeScript and renders real native components through its New Architecture, which is the default in current versions.
Performance
All three can reach 60 or 120 frames per second in normal apps. Differences show up at the edges: heavy animations, large lists, games, camera and audio processing. Native Swift has no bridge or extra runtime, which makes those edge cases easier to get right.
Access to iOS features
This is where native pulls ahead. Home Screen and Lock Screen widgets (WidgetKit), Live Activities, App Intents, StoreKit 2 views and many new APIs from each year's WWDC are Swift-first. Cross-platform apps can use them, but usually by writing that part in Swift anyway, plus the glue code to connect it.
Look and feel
SwiftUI apps pick up new iOS design changes automatically, such as the Liquid Glass materials in iOS 26. Flutter recreates the look of each platform, so it can lag behind new designs. React Native sits in between because it uses native components.
Cost and team
- One cross-platform codebase can be cheaper when you truly need both platforms at launch.
- One native iOS app is usually cheaper than one cross-platform app plus the native work it eventually needs.
- Hiring: JavaScript developers are the easiest to find, Swift developers are next, Dart developers are the fewest.
Our cost breakdown for iOS apps shows how platform choice affects the budget.
When we recommend each
Choose native Swift when
- iPhone users are your main audience
- You want widgets, Live Activities, Siri, Apple Watch or deep camera and audio work
- The experience itself is the product: premium apps, games, creative tools
Choose Flutter when
- You need iOS and Android at launch with one team
- Your interface is custom and brand-driven rather than platform-standard
Choose React Native when
- Your team already builds with React and TypeScript
- You want to share logic with a web app
Our default, and why
We build our own products, like Scevia and Paw & Home, in native code because they lean on iOS features and motion. For client work we recommend native for iOS-first products and are happy to plan an Android phase once the idea is proven.
Frequently asked questions
Is Flutter faster than native iOS?
No. A well-built native app is at least as fast. Flutter is fast enough for most apps, but native has the edge in heavy graphics, audio and large lists.
Can I start native and add Android later?
Yes, and it is a common path. The backend and design carry over, and the Android app can be native Kotlin or cross-platform.
Does Apple prefer native apps in the App Store?
Apple does not rank apps by technology, but it rejects apps that are thin web wrappers with little native value. Using platform features also makes an app eligible for more editorial features.
Is SwiftUI ready for production?
Yes. SwiftUI is Apple's primary UI framework and every app we ship is built with it, using UIKit only where a specific feature needs it.