Cross-Platform vs Native: A Business Decision Disguised as a Technical One
Choosing a mobile framework dictates your hiring pipeline and iteration speed. The realities of React Native vs Swift/Kotlin for structuring early-stage growth teams.
More Than a Tech Choice
When founders ask me whether they should build their app in React Native or go fully native (Swift/Kotlin), they usually expect an argument about rendering performance. But the truth is, choosing a mobile framework is primarily a business decision that dictates your hiring pipeline, your iteration speed, and your runway. Get it wrong and you either burn cash on redundant iOS and Android teams, or you ship a native experience that feels broken because your team can't move fast enough.
I've made both calls — cross-platform and native — across three products. Here's the actual framework I use.
The Framework Comparison
Most comparisons focus on raw performance benchmarks nobody cares about at 1K users. Here's what actually matters for an early-stage team:
| Dimension | React Native | Flutter | Swift / Kotlin Native |
|---|---|---|---|
| Code sharing | ~80% across iOS + Android | ~90% across iOS + Android | 0% — two full codebases |
| Hiring pool | Huge (JS devs) | Growing (Dart devs) | Two separate pools |
| Web code sharing | Yes (React Web) | Partial (Flutter Web) | None |
| Rendering feel | Good (JS bridge) | Excellent (own renderer) | Perfect (platform APIs) |
| Camera / BLE / sensors | Via native modules | Via platform channels | First-class access |
| OTA updates | Yes (CodePush / EAS) | No | No |
| Time to first ship | Fastest | Fast | Slowest (2× engineers) |
The Real Cost Difference
The performance debate is a distraction. The actual decision is a staffing and burn rate question. Here's the math for a 12-month runway:
| Team Config | Engineers Needed | Avg Annual Salary | 12-Month Burn |
|---|---|---|---|
| React Native (cross-platform) | 1–2 JS engineers | ~$140K | ~$140–280K |
| Native iOS + Android | 1 Swift + 1 Kotlin engineer | ~$160K each | ~$320K |
| Native iOS only (then port) | 1 Swift + delay Android | ~$160K | ~$160K + 6mo delay |
That $140–180K delta is 6–12 months of runway for one more engineer, or your entire growth marketing budget. For a pre-Series A company, that's not a technical decision — it's an existential one.
The Realities of React Native
React Native is not a compromise. For the right product, it's a genuine superpower:
- Full-stack engineers ship features end-to-end — your backend JS dev can fix a mobile bug without a hand-off
- OTA updates ship fixes in minutes, not 3 days waiting for App Store review
- Shared design system — one component library works on iOS, Android, and Web via React Native Web
- Expo simplifies the entire toolchain — EAS Build, EAS Submit, and EAS Update replace a full mobile DevOps setup
- The new architecture (Fabric + JSI) has eliminated most bridge performance concerns as of RN 0.73+
The Decision Flow
Here's exactly how I walk a founder through this decision:
When Native Actually Makes Sense
React Native is not a silver bullet. There are specific product types where the native investment pays off — and being honest about whether your product is one of them is the most important thing you can do before choosing a stack.
| Product Type | Recommended Stack | Why |
|---|---|---|
| Social / content / marketplace | React Native | Value is in data + network, not hardware |
| SaaS mobile companion | React Native | Share types + API logic with web backend |
| Fintech / banking | React Native (with native biometrics) | Native modules cover secure enclave needs |
| Health / wearables / BLE | Native (Swift + Kotlin) | Background BLE + HealthKit require full native |
| AR / computer vision | Native (Swift + Kotlin) | ARKit / ARCore require low-level access |
| Mobile game | Unity / native | Frame-perfect 60fps is non-negotiable |
| Consumer utility | Flutter | Beautiful UI with single codebase, Dart easy to hire |
The Migration Trap
One more thing nobody talks about: the cost of migrating later. I've seen teams start native, find PMF, and then spend 9 months porting to React Native because they can't hire fast enough to maintain two codebases at growth pace. I've also seen the opposite — teams start React Native and hit a hardware limitation wall at 10K users.
The right default for most early-stage products is React Native with Expo. It gives you the fastest path to both platforms, preserves the option to go native for specific features, and keeps your team small. You can always add a native module for a specific capability. You cannot un-split your team once you've hired for two native stacks.
Start with the stack that lets you get to market fastest. Optimize for hardware when your users demand it — not before.

Rohit Nishad
I design and build scalable backend systems, AI integrations, and cross-platform apps for startups. Focusing on performance, reliability, and clean architecture.