GHIJK
<<< Back to the blog

Web App or Native App?

Steven Grant
Published on
Note: This post is over a year old. I don't always update old posts with new information, so some of this information may be out of date.

What's the difference? When does it make sense to use one over the other?

The core difference between a web app and a native app is that web app doesn't need to be installed on a mobile device.

To use a web app on a mobile device, you visit the web app address in your browser of choice, be that Safari on iOS or Chrome on Android. Of course, those apps are available as apps for both platforms, in addition to the excellent Firefox browser.

To use a native app, the app has to be available on the device app store and needs to be downloaded by the user.

Both web and native apps require a "back-office" to interface with.

About Web Apps

Web apps are not real apps; they are essentially a website that - in many ways - can look and feel like a native app. You can also have the option of "installing" a web app to a mobile device that essentially gives you a shortcut to the address from the home screen of your device, in the same way that you might add Amazon to your favourites list on your desktop. Web apps require internet access and the operation speeds are dependent on the quality of the cell signal or the wifi you are connected to.

Web apps can also be enhanced by what is called a 'Progressive Web App'.

Progressive web apps (PWAs) are hybrids of regular web pages and native apps. Overall, web apps lack the functionality of native apps, such as sending push notifications or working offline. Browsers and web apps, however, are becoming more advanced. Now, PWAs can leverage features similar to native apps. Improved functionalities include:

  • Sending push notifications

  • Access to device hardware like vibration

  • Improved touch gestures

Despite these improvements,  PWAs are only compatible with Google Chrome. This means iOS users can’t use this type of web app. Depending on your business goals and monetisation strategy, excluding iOS users can be a huge disadvantage because iOS users spend the most money on apps and on in-app purchases.

About Native Apps

Native mobile apps are built for a specific platform, such as iOS for the Apple iPhone or Android for a Samsung device. They are downloaded and installed via an app store and have access to the device resources, such as GPS and the camera function. Mobile apps live and run on the device itself. Snapchat, Instagram, Google Maps and Facebook Messenger are some examples of popular native apps.

Advantages of Web Apps

  • Web apps are relatively easy to maintain because they use a common code base across multiple mobile platforms

  • Web apps can be built for all platforms (desktop included) as long as they can run in an appropriate web browser

  • Compared to native apps, web apps can be less expensive

  • Web apps don’t adhere to standard operating system protocols and don’t require approval from the app marketplace; they can be released at any time and in any format

  • Updates to web apps don’t need to go through an app store meaning the user doesn’t have to manage updates manually. The newest version always loads when a user opens a web app

Disadvantages of Web Apps

  • Web apps have a much smaller scope when it comes to leveraging device features and hardware

  • A browser is required to run a web app. Users have to take more steps to use a web app, whether that’s searching for the page or typing in a URL. Either way, more effort can complicate the user experience

  • Users interact with different web browsers and as a result, the usage patterns and performance metrics used to create a product roadmap are more difficult to collect

  • Unless a web app marketed well, web apps have poor discoverability because they’re not listed in the app store

  • Web apps can be slower and less responsive than native apps

  • Web apps are less interactive compared to native apps

Advantages of Native Apps

  • Native apps can deliver best performance of all three development approaches

  • Native apps receive complete support from app stores and the overall app marketplace. Distribution in app stores can help with discoverability

  • Native apps are interactive, intuitive, and run more smoothly in terms of user input and output

  • Native development allows developers to access the full feature set of the selected operating system

  • The user experience of native apps can be far superior to web apps or hybrid apps. To the user, the flow is more natural because of each mobile operating system’s specific UI guidelines and standards

  • A native app must be approved by its respective operating system which assures quality, security, and device compatibility

Disadvantages of Native Apps 

  • Native apps need multiple code bases for the different platforms on the market

  • Expenses can be more costly upfront for native apps compared to web or hybrid apps

  • Native apps need to be kept "current" to adhere to the latest platform standards

  • Native apps are not the best option for simple applications

  • Native app stores can require 30% of your revenue if you have any sort of financial transaction involved within the app

  • Compatibility with different platforms (i.e. iOS and Android) usually means designing and building the app from scratch

What should we commission?

Unfortunately, there's no hard or fast answer to that without knowing what you want your project to achieve.

If your project will rely on reading data from things like the accelerometer, gyroscope, proximity sensors or camera, then I'd be inclined to say you'll likely need a native app.

If your project is taking simple readings of data from a form, perhaps with some user authentication, then a web app could handle that.

Still not sure about whether you need a native app or web app? Get in touch with me today and we can arrange a call to discuss your project in a bit more detail 🤓

GHIJK