One of the first decisions in a mobile app project is which platform to build for. It sounds simple. In practice, it shapes your budget, your timeline, and your long-term maintenance costs. Getting it wrong means either spending more than necessary or leaving a significant portion of your users behind.
Here's how to think through it.
Know Your Users First
Platform choice should follow user demographics, not personal preference.
In Indonesia, Android dominates. The market share is roughly 80-85% Android, 15-20% iOS — and this skews even further toward Android in non-urban markets and at lower income levels. If your app is aimed at the general Indonesian public: field workers, consumers, small business operators, delivery riders — Android is where your users are.
iOS users in Indonesia are more concentrated in specific segments: urban professionals, higher-income consumers, and certain corporate environments where company-issued iPhones are standard. If you're building a B2B app for a company that issues iPhones to their sales team, iOS becomes more relevant. If you're building for a logistics company's delivery fleet, Android is almost certainly 100% of the target.
The mistake is assuming your personal phone represents your user base. Check your current website analytics (if you have them) to see the iOS/Android split for your existing audience. That data is more reliable than assumptions.
The Three Approaches
Android Only
Build once, for the platform where most of your users are. Lower initial cost. Faster time to market. Simpler testing surface. Makes sense when:
- Your user base is clearly Android-dominant (consumer apps, field workforce apps, Indonesian market-wide reach)
- Budget is constrained and you need to validate the concept before committing to both platforms
- Time to market is critical and you can add iOS in a later phase
The tradeoff: you exclude iOS users completely. In practice, for many Indonesian B2C and B2B2C use cases, the excluded group is small enough that this is a reasonable starting position.
iOS Only
Rare, but has legitimate use cases. Internal tools for companies that have standardized on iPhones. Apps for specific professional segments that are iOS-heavy. Consumer apps targeting higher-income urban demographics where iOS share is higher.
Both Platforms via Cross-Platform Development
This is the option that most business apps should consider. Cross-platform frameworks — React Native being the most mature and widely used — allow developers to write a single codebase that compiles to native apps for both iOS and Android.
The realistic coverage is 90-95% shared code. The remaining 5-10% handles platform-specific behavior: different navigation patterns, platform-specific UI components, and any features that require platform-native APIs. The result is two apps that look and feel appropriate on their respective platforms, built at significantly lower cost than two entirely separate native development projects.
React Native is used in production by large companies — Facebook, Shopify, Wix, Klarna — so the maturity concern is largely resolved. For business applications (ordering, tracking, portals, loyalty, internal tools), it handles the requirements reliably.
When Native Development Makes Sense
Cross-platform is not always the right answer. Native iOS (Swift) and native Android (Kotlin) development is the better choice when:
The app requires deep platform-specific hardware access. Complex camera processing, Bluetooth LE device communication, augmented reality, advanced haptic feedback — these work more reliably and with better performance in native code. Cross-platform frameworks have improved significantly in hardware access, but if your app's core functionality depends on pushing hardware capabilities, native gives you more control.
Performance is critical in ways that matter. Games, real-time video processing, applications with complex animations at very high frame rates — these are better served by native. A business dashboard with charts and a list view is not in this category.
The platform UI needs to be exact. Some enterprise apps need to follow iOS Human Interface Guidelines or Android Material Design so precisely that deviations are a compliance or design requirement. This is uncommon but exists in certain regulated industries.
For most business apps — ordering systems, customer portals, loyalty programs, field service tools, internal operations — React Native or a comparable cross-platform solution is the right answer. It delivers a quality product on both platforms at a fraction of the cost of building two native apps.
The Cost Reality
To make this concrete: a business app built natively for both iOS and Android typically costs 40-60% more than the same app built cross-platform. You're paying for two codebases, two development skill sets, and two maintenance streams.
For a hypothetical app with a cross-platform development cost of Rp 150 million: the native iOS + native Android equivalent might be Rp 210-240 million. The cross-platform version performs equivalently for 90%+ of business use cases.
That cost gap doesn't disappear at launch either — it persists in annual maintenance, since every feature addition and bug fix needs to be done twice for native apps. For a concrete sense of how platform choice affects the overall project schedule, a realistic mobile app development timeline walks through each phase from discovery to App Store submission.
A Practical Decision Framework
Ask three questions:
- Where are my users? (Check demographics, not assumptions)
- Does my app require anything that cross-platform frameworks can't handle well?
- What's my maintenance capacity over the next 3 years?
If your users are primarily Indonesian general market, your app is a standard business application, and you have a budget to maintain properly — React Native for both platforms is almost certainly the right answer.
If you're genuinely unsure about your user demographics or technical requirements, that's worth a proper discovery conversation before committing to an approach.
CERIS builds mobile apps in React Native for businesses that need to reach both iOS and Android users without paying for two separate native projects. See our mobile app development service or get in touch and we'll help you make the right platform decision for your specific use case.