Choosing between HTML5 and Native Mobile Apps

HTML5 versus Native Mobile AppsThe majority of SaaS vendors will provide both a desktop and mobile application.  While HTML5 is rapidly become de rigor on desktop, its use on mobile platforms is situational based on the application requirements.  According to Flurry (April 2013), only 20% of the activity on mobile devices is in a HTML browser (though B2B applications would likely be different).

“I think the biggest mistake that we made, as a company, is betting too much on HTML5 as oppose to native … because it just wasn’t there.”                          Mark Zukerberg, September 2012

 

Some notable HTML5 mobile “failures” such as Facebook’s have dampened the early enthusiasm for mobile HTML5, even while other HTML5 mobile applications such as by Financial Times have performed well.

HTML5 works well for some mobile applications, but other mobile applications will require further maturation of HTML5 until they perform as well as native mobile apps.

HTML5 will ultimately achieve parity with virtually all capabilities of mobile apps, but it is important not to get ahead of the capabilities of HTML5 to provide an optimal user experience.

HTML5 Current Mobile Limitations:

While HTML5 is becoming substantially more capable every year, there are still limitations to be considered before choosing HTML5 for mobile applications.

Fragmented browser support for HTML5 capabilities

While significant progress is constantly being made, each mobile browser supports a different set of HTML5 features requiring coding for the lowest common denominator.

Weaker support for Mobile Device Capabilities

HTML5 has inferior support for complete mobile device capabilities such a cameras, accelerometer, gyroscope, etc.  Multi-touch gestures are not broadly supported by HTML5 browsers, but “multi-touch hacks” are beginning to appear.

Notifications are much more feasible with Native Apps

Notifications are an essential part of many mobile applications.   As with multi-touch support, there are some hacks to allow HTML5 to provide notifications, support for notifications is sketchy in HTML5.

Incomplete support for Native Mobile Device APIs

Not all Native APIs are accessible via HTML5.

Lessor support for offline use

Native mobile apps are, of course, installed on the mobile device so they do not require wireless access to operate other than for access to or synchronization with the host data.  Offline mode for HTML5 mobile applications is limited and is more complex to implement.

HTML 5 applications are less “discoverable” without an app store

Consumers are used to looking for apps on their mobile device in an app store.  While B2B SaaS offerings may be less impacted by the lack of discoverability of their mobile apps, it makes it more difficult for their customers to find their HTML mobile applications.

HTML5 offers less security than Mobile Apps

The ability to provide higher levels of security including encryption is greater for mobile apps.

HTML5 has inferior Digital Rights Management

While the HTML5 working groups are working on content protection for HTML5 on both Desktop and mobile versions as previously discussed, mobile apps have superior content protection.

HTML5 is less capable for building complex, highly interactive applications

For complex user interactions, mobile apps are superior.  Hence applications such as mobile games are almost exclusively implemented through native applications.

User expectation is “There’s a (native) app for that”

User expectations are biased to having a mobile app versus an HTML5 application.  User perceptions are that browser based HTML5 apps are inferior to mobile apps coupled with the expectation that mobile applications should be found in the App Store.

HTML5 Advantages:

While HTML5 does not currently match the capabilities of native mobile apps, there are still many advantages.

HTML5 applications do not require the approval of Apple or Google

SaaS companies are able to deploy HTML5 apps immediately without waiting for the approval of the app store which historically could even withhold for competitive reasons.

HTML5 applications avoid the cost of revenue share with the App Store

The avoidance of the App Store “tax” can make a massive difference in the profitability of the SaaS company.

HTML5 application are faster to develop than Native Mobile Applications

HTML5 is less complex than mobile apps reducing the time to produce a mobile application.

HTML5 developers are more plentiful than Native Mobile Application developers

HTML5 is familiar to a huge number of developers who have had years of experience building desktop web sites.

HTML5 applications can (generally) support multiple mobile operating systems with less effort

While portability between different mobile devices still requires work based on device characteristics, HTML5 applications can be designed to run on multiple mobile platforms.  HTML5 applications can even be designed using “Responsive Web Design” to adapt the application to the device with satisfactory results.  Clearly writing the design for each platform provides the best user experience, but HTML5 based Responsive Web Designs gives satisfactory results for many applications that are not overly tied to the features or characteristics of the mobile device.

Hybrid Applications

Hybrid mobile applications encapsulate HTML5 into a native mobile app wrapper.  This allows the native app to have full access to APIs and some device interfaces not directly accessible by HTML5.  Functions such as multi-touch and notifications can be implemented through the native mobile app while other more basic functions can be implemented in HTML5.

Hybrid applications provide the productivity and potential portability of HTML5 with the more direct control of the native app.   It may comprise on the user experience, and has both the positives (discoverability) and negatives (control by the mobile device vendor) aspect of the App Store.

Recommendations:

Mobile Apps build with HTML5

Source: Kendo UI, 2013

The mobile application technology choosen is heavily dependent on the demands of the application, its requirements, the platforms to be supported, and the resources available.

Mobile App by Technology Type

Source: Developer Economics, July 2013

Applications, such as games, which have a high degree of interactivity and are tightly integrated with the mobile device hardware will have a better user experience with native apps.

Those applications which are more static and not tied to the device specifics (other than the screen resolution) such as the Financial Times will have nearly an equivalent user experience with either native apps or HTML5 applications.

While today, most mobile applications are being developed as mobile apps, the trends is moving towards HTML5 as it continues to mature. For those SaaS vendors that charge for their mobile applications, there is a strong reason for adopting pure HTML mobile applications to avoid the App Store tax.  Still the potential loss of revenue due to the more limited discovery in the App Store is a consideration for staying with either pure mobile apps or hybrid mobile apps.

Enterprise Mobile Application Use

Source: 2015 Enterprise Mobile Application Use – Gartner

Gartner estimates that by 2015 most Enterprise mobile applications will be hybrid – A native apps “wrapping” an HTML5 core, with only 10% being pure native mobile apps.

The key aspect for SaaS vendors is to pick the appropriate technology that is available at the time of development to produce the optimal user experience.