Common sense says that a mobile web app must be better than a native mobile app. After all, when you have a mobile web app you are independent of any app store. When you have a mobile web app, users can use it through their mobile browser. They don’t even need to install the app. They can simply visit the link and your app is ready to go. Nonetheless, mobile web apps haven’t been as popular as native apps? Why is it so?
What exactly is a native app? How is it different from a mobile web app? And once you’ve figured the differences out, what option do you go for? You are going to learn these below.
First, let’s quickly see how far the mobile phones and mobile devices have advanced, and why developing mobile apps, even for your conventional legacy software applications, is simply unavoidable.
By the end of 2016, according to this Telegraph link, mobile web usage overtook desktop usage for the first time. 51.3% of web pages were loaded using mobile devices in October 2016.
Pretty much at the same time, Google decided to switch to “mobile-first indexing”, although, later on, the search giant deferred the decision to early 2018.
The conclusion was since a greater number of people were accessing websites from their mobile devices, mobile-friendly website content and layout should be given preference over the conventional desktop versions and hence, the quality of the mobile versions of the websites would decide their search engine rankings.
With 1.54 billion smartphone units being sold every year globally (source) it can be safely assumed that if you have a digital asset, there is a 90% chance that that asset is going to be accessed from a mobile device.
This is why, whether you have a web app or a conventional software application, it is very important that it also has a mobile version because most probably, people will be using their mobile phones to interact with it.
Take your own example? Are you using Facebook or Twitter on your PC or laptop regularly? No. Most of the time you are accessing the social networks from your mobile phone. In fact, some of the biggest social networks don’t even have desktop versions these days, for example, Instagram. Even WhatsApp does not have a desktop equivalent – although the instant messaging app does have a web interface, it is hardly used and most of the users don’t even know about it.
There is an app for everything: scheduling, programming, instant messaging, email, video streaming, gaming, financial planning, dating, social networking, ridesharing, photography, music, learning, word processing – you name it, and there is an app for it. You even have apps for doing nothing!
Once you have decided that you need a mobile app, you need to decide whether you’re going to have a native mobile app, a web-based mobile app, or both options?
What is a Native Mobile App?
A native mobile app is an app specifically made for a breed of mobile phones, for example, an app made for Android phones or Apple phones.
A native mobile app needs to be downloaded and installed on your phone. You need to download it from either the Apple App Store or Google Play.
These apps are written for specific platforms, for example, iOS apps are mostly written in Swift and Object-C and Android apps are mostly written in Java. You cannot use an iOS app in Android unless there is an Android version available, and vice versa.
The development tools are mostly provided by the companies that build the native operating system environments like Apple, Google, and Microsoft.
Why Would You Opt for a Native Mobile App?
All the needed source files are installed on the mobile device so the app does not solely depend on an Internet connection though, it differs from app to app. In many cases, even the data can be stored locally. This gives you a faster interface.
Since all the elements of the app are available locally from the device, you have a smoother, better UI experience. Besides, native apps can be easily downloaded from app stores like the Apple App Store and Google Play, which makes it safer to use them.
What is a Mobile Web App?
A mobile web app can be accessed through a mobile browser. It is almost like the conventional web application, or even a website, with the only difference that it is easily usable on a small screen.
If you have a mobile web app, to be able to use it, your users don’t have to install it. Your app does not have to depend on app store providers. Your users simply have to load the link using their preferred mobile browser and they can start interacting with your mobile web app.
The mobile web app does not depend on an operating system. As long as the app is usable through a browser, whether someone is using an iOS device or an Android device, he or she should be easily able to use your mobile app.
Why Would You Opt for a Mobile Web App?
A mobile web app solely depends on an Internet connection. Another problem users may face is that since none of the elements exist locally, every action and every interface depend on the speed of the Internet connection. If the users don’t have a better Internet connection, they may not have a good experience interacting with the mobile web app.
Native Mobile Apps Versus Mobile Web Apps: Some Statistics
If you go by the growth of Apple’s App Store and Google’s Google Play, the app business is quite big. By 2020, apps worth $ 189 billion will be sold according to App Annie.
It also shows that focusing more on native mobile apps is more lucrative compared to mobile web apps. Using app stores both the providers of the app stores like App Store and Google Play and the app builders make money.
With mobile web apps, the app store providers are totally taken out of the picture. The app developers can straightaway provide the app through a URL.
Nonetheless, these eMarketer stats compiled from 2012 through 2018, tell that since 2013, the amount of time people spend using mobile web apps has remained pretty much the same, around 50 minutes every day on an average. People spend not just more time using native mobile apps since 2012 the amount of time has increased from 1:40 hours to 3:25 hours in 2018. This might primarily be because it is easier to find apps using app stores and also, it is easier to trust apps in the app stores.
Comparing Native Mobile Apps With Mobile Web Apps
Whether you want to go for a native mobile app for your next project or a mobile web app, you may have your own reasons because both the varieties of mobile apps have their own pros and cons.
For example, the user interface is quite smooth in the native mobile apps because everything is installed locally including the interface elements and the data.
Listed below are some attributes that you may like to consider before deciding whether you want to go with a native mobile app or a mobile web app:
Frankly, the quality of your mobile app depends on your personal abilities and inabilities. You can build a quality mobile app for the native interface as well as the mobile interface.
The cost is certainly lower for a mobile web app because your developers don’t have to learn a new language for a new interface. Whatever they have been using on your website, they can also use the mobile app. For example, to build a native app for iOS, they may have to learn languages like Swift and Object-C. Whether you train your existing programmers, or you hire new programmers, it’s going to cost you in terms of money and time.
Time for Development
A mobile web app can be developed quickly because you don’t have to bother with an operating system. Even a couple of hundreds of lines of code can give you a decent mobile web app. Once you have built it, all people need is, the URL; whether they’re using an iPhone or a Google Pixel, they can use your app.
A native mobile app, on the other hand, needs an environment it can work on. Different operating systems need different versions. Also, different mobile devices have their own idiosyncrasies, so you may also have to incorporate them before people can start using your app.
A native mobile app performs better compared to the mobile web app because whatever is needed by the native mobile app is installed locally. There is practically no time lag. Also, there are many system resources than a native mobile app can use without straining its own resources.
The mobile web app can be light. Since no installation files and program libraries are needed even to perform basic functions, if it is a very small mobile web, it does not have to carry the burden of additional files.
A native mobile app can be visually more appealing because one, it has its own screen and it does not have to function within the browser screen, and two since all the elements needed to interact with the app exist locally, the transition from one screen to the next is almost immediate. Consequently, you can be more adventurous with the interface.
In a mobile web app, on the other hand, the only interface elements available to you are the ones accommodated by the browser. Also, the performance may be slightly sluggish because the time needed to transition from one screen to the next screen (or the previous screen) depends on the speed of your Internet connection as well as the quality of the server.
Navigation in a native mobile app can be faster and more integral to the native navigation system of the device and the operating system.
Depending on your programming and design prowess you can also have a neat navigation system in your mobile web app but then, as mentioned above, your entire app exists within the browser app and in many cases, users may get confused between the device’s navigation system, the browser’s navigation system and then the app’s navigation system.
Development Process: Native App vs. Mobile Web App
By its sheer definition, a native mobile app depends on the environment of the mobile phone it is being used on. For example, if yours is an iOS-based mobile app, then you will be using either Object-C or Swift (programming languages used to develop iOS apps). If you are building an Android mobile app, you may use Java. For Windows Mobile, programmers normally use C++.
Both iOS and Android have their own SDKs (software development kits) and the programmers building apps for these devices must work within these environments.
Although there are multiple development kits available for building interactive websites, you can build a mobile web app even in a simple text editor like Notepad++.
Capabilities of Native Mobile App and a Mobile Web App
Native mobile apps can use the device’s features like the camera and the accelerometer. Mobile web apps, on the other hand, have limited access to these features.
Since most of the files and data in native mobile apps are stored locally, most of these apps can also work in offline mode – you don’t need to be always connected to the Internet. With the mobile web app, since you need to access the URL from your mobile browser, you need an Internet connection to even access the first screen of the app.
It will be a bit difficult for your users to discover your mobile web app because most of the users relate mobile apps to their respective app stores. They will be able to come across the URL to your mobile app only when you provide the URL to them or when they are visiting your website.
A native mobile app can be easily found in its app stores like Apple’s App Store and Google’s Google Play.
A web mobile app is platform-independent. Since it is a web-based application, it doesn’t matter whether you are using an iOS mobile phone or an Android mobile phone. As long as you have a contemporary browser, you can access the app.
A native app is platform dependent. You cannot run an iOS app on Android and vice versa.
Since a native app depends on the app store, the restrictions applied to the app store are also applicable to your mobile app. For example, if Apple wants to remove your app, it can easily do so. Your app needs to be approved first before it can appear in an app store. The app store decides what sort of ads you can publish and what should be your fee structure.
Since your web mobile app exists only as a URL, it is free of all these restrictions. As long as your users can access your URL it doesn’t matter what sort of content you are publishing. You don’t need to seek approval either from Apple or from Google. You can decide your own fee.
Monetization Options in Native App as well as Web Mobile App
In a native app, monetization is straightforward. If you want to make ad revenue, both, Apple’s App Store and Google’s Google Play have their own systems for integrating paid ads. If you want people to buy your app both App Store and Google Play have their own payment gateways and when people pay for your app or for your subscription, both the companies charge a portion of the payment as a fee.
In a web mobile app, you’re basically on your own when it comes to monetization. You can publish advertisements on your website and you can also have a subscription fee. If people need to pay you, you will have to arrange for your own paywall or payment gateway system.
Method of Delivery
You can deliver a native app through the app store. Once you develop your app, you will need to submit it for approval both to Apple’s App Store and Google’s Google Play and if they approve your app, it will start appearing in the appropriate category. People can use the app store’s search function to search for the app.
They can simply go to the category and browse through the listing. Your app may also be featured in the “Editor’s Picks” section. Some Android developers also prefer to provide an APK file that can be downloaded independently of Google Play.
A web mobile app is to be accessed through the URL. How people come across that URL depends on how you promote it. Certainly, if they are looking for your mobile app on one of the app stores, they’re not going to find it (unless you have a native app version too).
You can use your mailing list. You can display the link to your web mobile app on your website. You can share the link using social networking platforms. You have to promote the link on your own.
Versioning of the App
Most of the apps are automatically updated to the latest version (in case you have released that version) but many users can opt out of this option. For example, on Android, in the settings, you can decide whether you want Google Play to automatically update the app as soon as an update is available or ask for your permission.
So, there might be a chance where your users might be using a version that was released two years ago simply because they are not motivated enough to update to the latest version.
Your web mobile app provides the same version everywhere because it has a single link that is being accessed by everyone.
Native Mobile Apps vs Mobile Web Apps: Tabular Comparison
|Availability||Through App Store||Through a Web Link|
|Environment||Mobile Operating System||Mobile Browser|
|Quality||Developer Dependent||Developer Dependent|
|Cost||Higher Cost||Lower Cost|
|Time for Development||Slower||Faster|
|Performance||Better||Can be Sluggish Sometimes|
|Visual Style||More Appealing||Less Appealing|
|Navigation||Easier||A Bit Difficult|
|Capabilities||More, Due to Access to Device’s Capabilities||Less, Due to no Access to Device’s Capabilities|
Which version is better for your business, native mobile app or mobile web?
Just because a native mobile app can use system resources in a much better manner doesn’t mean you are at a disadvantage if you go for the mobile web app. Ultimately it depends on what your mobile app intends to do.
Whether you go with a native mobile app or a web mobile app depends on what you need and what you don’t? The questions below may help you decide.
- Does your mobile app need to use device-specific features such as the camera, the accelerometer or the gyroscope?
- Do your users constantly need to be connected to the Internet to use your app?
- Are you comfortable having your own payment system or you would like some sort of payment handling facility provided by one of the app stores?
- Do you intend to build an app that should be accessible from all the devices or a single device?
- How important is it for the interface of your mobile app that all the elements and the screen load faster?
- What is your monetization policy?
These questions, combined with the information given above, can help you decide whether you should go for a native mobile app or a web-based mobile app.
The intention of the blog post is definitely not to sell one idea against the other. Both types of mobile phones have their pros and cons, and this is why many businesses opt to go for a hybrid version (Facebook, for example) in which, it’s up to your users whether they want to use the native version or the web version.
The biggest advantage of having a native mobile app is that it is easier for people to find it even when they have never visited your website. There is a greater chance of people coming across your mobile app when it is listed in an app store like Apple’s App Store or Google’s Google Play.
People simply have to search for the future they are looking for, and if your mobile app is listed for that feature, there is a big chance that your user will come across your app.
The mobile web app solely depends on your ability to promote the link. There will be no backing from an app store.
Monetization also can be a big issue especially when you don’t want to use your own payment gateway system. Both Apple’s App Store and Google’s Google Play have their own payment system that allows game developers to take money from their users in any form. This facility is not available if you have the mobile web app.
Nonetheless, in the beginning, you can go for a web-based app because of its simplicity and less reliance upon exclusive programming languages and SDKs. As mentioned above, you can build your first (web-based) mobile app, maybe a barebones version, simply using Notepad++ or Sublime Text.
Later on, you can opt for a native mobile app when you have gotten feedback and have accumulated more resources.
Eventually, it makes sense, provided you have the resources, to go for a native mobile app because it is in a much better position to use the system resources, which are not accessible to a mobile web app. Native apps are faster, smoother, and more responsive. They are also more trusted by users because these apps have to go through a multi-step clearance before they are listed in an app store. We’d love to know your thoughts on the same. Let us know in comments below.
Dhananjay (DJ) Goel is the CTO at Alphalogic, passionate about technology, startups, game of thrones and coffee. He enjoys working on challenging problems with innovative startups.