This post from the folks at 18F does a great job of covering why you should default to a responsive web site rather than a native mobile app. While tools like cordova and react native decrease the effort required to build a native application, the ongoing maintenance costs shouldn’t be underestimated. It is easier to outline the reasons why you should build a mobile application, because there are far more reasons why you should not. From the post I mentioned above:
- extreme bandwidth constraints or offline operation
- heavy use of sensors that are not web standards
- third party interactions
I’d add:
- branding needs, where you have a compelling application and expect to be be installed on the user’s home screen. Expect to spend $$$ on marketing the app
- extreme performance. This might be graphics/video, battery or network performance
and, via twitter, Sara Bates added:
- push notifications, (if used wisely)
If your application doesn’t meet these criteria, I’d think long and hard about launching with a native mobile application, and think about what you could do for your business with the extra budget.
You can likely prototype your app with a responsive website and then build a native mobile app when you know more and/or have user feedback. This can be a great way to economize, because you can leverage outsourced mobile app teams and point them at the prototype as a living requirements document.