Are Progressive Web Apps the Future of Mobile Development?
Should you or your company invest in PWAs?
Building mobile applications that feel native and work offline has been dominated by either native development using the native programming language of the mobile OS, or by hybrid mobile development using technologies like React Native, Ionic, Xamarin.
But all of these approaches require shipping the application to app stores like the Google Play Store and the Apple App Store.
This is where PWAs come in. They operate close to native applications with a smaller package size, they are deployed to the web and can be easily added to the home screen.
What Is a PWA?
Google defines that PWA’s should be:
- Reliable: Loads fast even with bad or no internet connection — due to the fact that over half of the users on the internet would leave a site if it does not load in three seconds. PWAs use service workers to remove the dependency on a web server when there is no internet connection.
- Fast: Smooth animations and interactions that make the application feel native. (No clunky web scrolling.)
- Engaging: Should have a user experience as close to a native device as possible. That means that it should at least be able to be run in full screen (if added to the home screen) and handle notifications. (iOS is not there yet.)
Hence, it could mimic the web server’s actions but from the cache and that gives it the power to work in offline mode.
Service workers can also be used to create features that don’t need a web page or user interaction, like push notifications for example.
Service workers are constantly being developed and, in the future, they might have new features such as geo-referencing to make the user experience as native as possible.
Numbers Don’t Lie
Now that we know a bit more about PWAs, let’s look at why they could be a huge player in the mobile development industry. Let’s start by looking at a couple of statistics (November 2019).
Global mobile OS market share:
Android version market share:
iOS version market share:
Looking at these charts, we can see that Android owns over 75% of the global mobile OS market share and iOS owns around 23%. We can also see that around 75% of iOS phones run versions 12.4 and over 70% of Android phones run versions over Android 8.
The reason behind these statistics is that these operating systems run on powerful phones. iOS 12.4 was released in 2019 and Android 8 was released in 2017, which means that the phones running these operating systems are quite fast.
Even relatively old and low-end phones pack around 2GB of memory and a decent Snapdragon processor. These phones plus Google’s Chrome are capable of running PWAs without the need for native development.
Hence, the recent and new iPhones/Android phones can easily run them and give an almost native-like experience without the efficiency of native applications.
This is excluding any application that needs a lot of graphics power and animations (we all know PWAs are not meant for game development).
iOS and PWAs?
As I stated earlier, Apple owns over 20% of the mobile phone market share and even more than that if we only look at Europe and North America, and they have been extremely slow in adding support for PWAs on iOS.
PWAs are supported on iOS 11.3 onwards, but that doesn’t mean they’re fully supported compared to other browsers (especially Chrome). The support got better with later versions and especially on iOS 13.
Although some of the most important features like push notifications and background sync are still not supported on iOS. Does this mean Apple is against PWAs? No, I don’t think so, I just believe that their strategy doesn’t fully support the idea of PWAs just yet.
The improvements that are happening with every version do show that Apple sees the need to add more support, it’s just a matter of time.
I believe this because, according to this US study in late 2017, users spend 97% in just 10 apps and the top mobile websites received over eight million more unique users than mobile applications.
With Google leading the way in PWA support and Microsoft making Outlook a PWA and making their Edge browser Chromium-based, I believe Apple’s iOS will follow this trend (eventually).
With the latest front-end frameworks (Vue, Angular, React, etc.) it has never been easier to build a PWA.
They come with super-fast rendering capabilities to make transitions and animations seem as smooth as possible and with frameworks, like Ionic, it makes it even easier to make your application have a native look and feel.
Some of these frameworks have templates ready to be used for PWA development. The technology available to build PWAs is there, mature and ready to be used. It just needs the browser vendors to come to consensus.
Companies That Gained From Having a PWA
A lot of companies are creating PWAs alongside their native applications to give users the chance to access their mobile application services through a web browser.
Here are a couple of examples of companies that have done that. (Here is the source if you want to find out more).
By creating a PWA, they cut load times from 11.91 seconds to 4.69, due to the fact that the PWA is 90% smaller than their native Android app. This leads to an increase in the PWA user engagement.
Trivago witnessed a huge jump of 150% in users who added the PWA to their home screen.
The offline support allowed users to continue their sessions even when they had no internet connection and 67% of users continued to use the PWA when they came back online. This also led to a 97% increase in hotel offer clicks.
Pinterest upgraded their mobile website to a PWA and the same as the previous two examples, core engagements increased by 60%.
They also witnessed a 40% increase in time spent on the website and a 44% increase in ad revenue.
One of Uber’s main goals is to get as many people to use their service as possible. That means they also need to target people with slow internet connections (2G).
Their PWA 2G load time is less than three seconds due to the fact that the entire gzipped size of the core app is 50K.
Google, Microsoft, Twitter, Forbes, and a lot more all have PWAs. These and many more examples of PWAs show us how having a PWA has made it easier for people to access a service and, hence, an increase in user engagement.
PWAs have existed for a while now, but their popularity increased mostly due to powerful mobile phones and the support of a community of big companies such as Google, Microsoft, and many others.
With time, PWAs are going to get more popular/powerful and may be up there as the main way of building mobile apps once Apple’s iOS fully supports them.