This article provides a brief overview of the three types of mobile app platforms: native, hybrid, and mobile Web.
To read additional research and expert interviews on mobile app development, see Clutch's App Development resources page.
Mobile applications are an increasingly important segment of many companies' marketing strategies and business processes.
When building a mobile app, there are three major platform types you can choose from: native, hybrid, or mobile Web. Below is a basic introduction to the three types, with a chart at the end summarizing the benefits and drawbacks of each platform type and possible use cases.
Clutch also interviewed some of the top mobile app development companies regarding this topic. Read more about the key drivers of platform choice in our related discussion here: App Platform Considerations.
Native apps are specific (or "native") to a given operating system, such as iOS, Android, or Windows. Native apps are only able to function on the specific system they are built for. A native app is first accessed after it is downloaded to the device. From then on, the app can be opened from the device’s home screen. Native app developers must be familiar with the specific code and framework for that operating system. For example, iOS apps are typically coded in Objective-C, whereas Android apps are usually coded with Java. If the same app is desired to function on multiple operating systems, each native app will need to be coded and maintained individually.
Learn more about the two most common native platforms, iOS and Android.
Mobile Web Apps
Mobile Web apps are device-neutral. They can be accessed on any mobile device with an Internet connection. Mobile Web apps are accessed on a browser and look similar to a website, but they are formatted properly for a mobile device. Some are built specifically as mobile websites, whereas others are responsive Web apps that are optimized for multiple sizes of devices, including a desktop. Mobile Web apps are not sold in the App Store. Users may be prompted to “download” the app while accessing it in the browser, but this would actually just create a bookmark of the Web page that can later be launched independently from the device’s home screen. Mobile Web apps are coded using HTML5 or other Web languages.
Hybrid apps are essentially Web content wrapped in a native container. The primary content for the app is coded in a Web language, such as HTML5. However, the native shell is specific to iOS, Android, or other platform, allowing the app to access some of the device functionality that a native app would be able to do, as well as each specific platform's user interface design elements. The composition of hybrid apps can vary in terms of the amount of Web content and amount of native device functionality built out. A hybrid app may be easier to maintain and faster to develop than multiple versions of a native app, depending on the app's purpose and complexity, since the Web content will only need to be coded one time.
Learn more about hybrid app use cases.
Considerations When Choosing a Platform
These three platform options have various trade-offs. So, when selecting a platform, you should evaluate the following items in order to suit the app’s unique purpose and your company’s needs:
- User experience
- Development cost and speed to market
- Ease and cost of maintenance
To read detailed descriptions of each of these items, including opinions from leading mobile app developers, see App Platform Considerations.
|Description||Completely specific to a given platform, such as iOS, Android, or Windows||Web-based content wrapped in native container||All Web content, accessed via browser|
|Best for:||Consumer apps requiring high standard of UI/UX, or apps requiring complex device functionality||Content-heavy apps, especially those that can take advantage of pre-existing Web content, such as retail apps or e-readers||Responsive Web content that will be accessed on various hardware types|
|Functionality||Can access all latest device features (as allowed by manufacturer)||Can access many device features||Cannot access device features|
|Audience||Limited to the audience for each operating system that you build it for||Can easily port to multiple operating systems for a wide audience||Can reach any device that has a browser|
|User experience (UX)||Premium UX||Decent UX can be attained with effort||Limited UX|
|Costs to build and maintain are relatively*:||Higher||
*Relative to the other options given here, in most experiences, assuming you select the platform for its recommended use case, and assuming the developers have expertise in developing for that technology. This also assumes you are building the app for at least two app ecosystems (such as for both iOS and Android). Costs vary depending on app complexity. Learn more about costs to build an app.