/assets/cms-images/pexels-fauxels-3184340-1-.jpeg
Ryan Bourne
Photo of Ryan

5 min read

18th Jul, 2024

React Native or Native iOS / Android - What should I choose for my startup's MVP?

How to choose the best tech stack for now & the future

When you're thinking of building a brand new app for your startup, you need to really consider which tech stack will allow you to move quickly, achieve product market fit, and get the best return on investment.

There's two main choices:

  • Using React Native: a single Javascript codebase is able to run on both iOS & Android
  • Using native code: separate native codebases are built for each platform, primarily using Kotlin on Android and Swift on iOS

There are a few other choices out there (such as Cordova or .NET MAUI) but the vast majority of companies will choose React Native or native iOS / Android code as they are more reliable and more widely worked with.

But - what is best for your startup? As experts with a track record of delivery with both native and React Native, we're best placed to run you through some of the points you should consider when building your world-changing idea!

Development Time

You need to hit the ground running quickly to validate your MVP and ensure you're on the right path. Whilst project planning, resource allocation, and quality assurance plays a big part in dictating the time taken to release a new product, the tech stack you choose will ultimately decide how quickly you can move.

For example, for an app built with React Native, you only need one codebase as the same code is then used on both platforms. For example, when adding a `View` in the Javascript layer, the React Native renderer will then map it to the equivalent native components. This, in combination with a large third-party repository of reusable code libraries and components, means it is easy to build a prototype and MVP quickly.

With native code, you will need a separate codebase per platform, as Swift code will only run on iOS and Kotlin code will only run on Android - effectively meaning you'll need to build two versions of your product. However as we'll get into, building directly with native code can bring other benefits.

At Peslo, we're experienced with building both React Native and Native iOS / Android applications - why not check out some of our previous work?

Cost Efficiencies

One of the most important things when launching a startup is your available runway - how much cash you have available to run the company perhaps without generating any revenue, or without generating enough revenue to sustain your operations. Engineering projects can often be a massive cost to a company, so it's important that you are able to get the best return on investment and protect your valuable funds.

With a React Native app, as there's only a single codebase to build you're not duplicating work and naturally you'll save funds on your initial scope of work. You'll also save money in the long-term too, as one codebase is cheaper to maintain than two separate ones that require highly skilled native engineers. The common availability of open-source libraries & components also allows you to not 'reinvent the wheel' - often common components are already made and maintained by the community, allowing your project to move more quickly. One consideration though is that certain functionality like low-level hardware integrations or niche features (such as Tap and Pay or integrating with EV chargers) may require bespoke native code for both iOS and Android. We've often found that complex projects can't be fully cross-platform and some native code is needed to make features really shine.

Native projects tend to require more upfront investment, as a larger team with individual specialisms in iOS & Android development is needed, and ongoing maintenance will also require specialised engineers for each platform. However, highly specialised engineers with years of experience in their specific field may be able to move quickly as they only need to consider their own platform, and they will understand the nuances of their respective platform better - enabling them to build your MVP in a short time frame.

We've typically found a balance of React Native for shared code across both platforms, with bespoke native code added where needed for certain features, means a project can have the cost efficiencies that React Native brings whilst not compromising on features that need the native code to really shine. We're comfortable building native code, this is one of the reasons why we worked with Zilch to build their Tap and Pay integration!

Scalability

Once your MVP is released and you've got the data to prove you're on the right track, you'll want to scale your business and your mobile app - you'll want more users, better performance against key performance indicators, and increased revenue to lengthen your available runway.

Both types of project, React Native and Native iOS / Android, can be scaled when built in the right way, so it's important to choose the right agency for the job. Typically scaling a React Native project is easier, as a smaller team is able to work on a single codebase to deliver functionality for both platforms. As your organisation grows you may look to bring engineering in-house - there is a large market of highly skilled React Native engineers available, allowing you to build a capable team once you've hit the scale that requires one.

Performance & Reliability

Ultimately, your users don't care about the tech stack behind the scenes - they care about performance & reliability. A common criticism of React Native is that performance is negatively impacted as an intermediary layer has to interpret the Javascript code to display the app. Whilst in some cases we'd recommend using native code, we've found that a well-built React Native app is capable of having the same performance as a native app even when performing intensive tasks like playing multiple video streams simultaneously.

In terms of reliability, our opinion is that the reliability and dependability of the app is based off of the skill of the engineers building it, and the priorities of the startup that own it - if the engineers are capable and the priorities are for growth and scalability, it's easy to build an app that users can rely on. However, if the engineering work is substandard and the priorities neglect to consider scalability & quality assurance, it is suddenly easy to build an app that users will not trust.

We're trusted by our clients to build reliable, dependable, and performant apps that their customers know will work - take a look at some of our previous work!

To summarise, we will typically recommend React Native for your startup's MVP - the quicker development time, cost efficiency, and ability to scale means that your startup can get to market faster, with a reliable app that is able to drive the return on investment you're looking for. As part of our investigation phase, we take the time to really understand what you're looking for, and we can detail where there might be a requirement to build bespoke native features.

Want to talk further and see how we can help your startup grow? Reach out, we'd love to chat!