You have a fantastic idea for a new mobile application. Should you build an application for each of the major platforms or one web application to rule them all?

What is a native application?

These are applications built for a specific platform such as iOS or Android. An example of a native application would be the eBay application from the Apple App Store or Google Play Store.

What is a web application?

Think of the normal websites that you would visit on your desktop. When you view the same website on a mobile device it will scale down to fit the smaller screen. An example of this is visiting the eBay website on your mobile.

Why should you use Native Applications?

Native applications make the best use of hardware and software features due to being designed for that platform. With the extra efficiency and performance, the application will run faster and use less battery. However, you will need a native application in each of the biggest platforms which are currently Android and iOS.

Why should you use Web Applications?

The beauty of web applications is that you can make it once and use it for all platforms. Updates will be substantially easier as well as cheaper development costs.

Are there hybrids?

Services exist that provide a hybrid between web applications and native applications. The most popular one is PhoneGap. It provides a layer on top of the native code so that you can build an application using web languages and deploy it to all platforms. This is great for rapid prototyping, but not actual development due to speed and functionality constraints created by the extra layer.

How do they compare?

While native applications will cost more for development and updating, you are ultimately getting a greater experience for the user. Each platform has their own design guidelines which conform to what users on that platform expect. Native applications follow conventions easily, whereas with web applications it is much more difficult due to having one application and multiple platform design guidelines to abide by.

Web applications can be developed for a lower cost and offer a basic solution but if you want the whole package you should target each platform specifically to produce engaging applications that your users will love.