PWA, as a relatively new and — in the last few years — incredibly trending approach to the mobile channel, is often compared one-to-one with native applications. However, to make a fully informed business decision, it is vital to establish the precise features of a PWA and point out the differences and similarities between them and native apps. Let's dive into the details!
Sign up for updates on The PWA Book ⭐️
Table of content
Progressive Web Apps became a hot topic in the media recently. However, media coverage is often a little bit shallow, and focused on finding simple answers: are PWAs better or worse than native apps? Meanwhile, Progressive Web Apps shouldn't be seen just as competition to native apps. They can bring benefits even to a company that already has an app. They are cross-platform, and dividing the shopping experience into a variety of platforms is less and less effective in the omnichannel era.
It is evident that not every user is keen to install or use a native app. He or she may, however, still drop by on the web site from time to time, and so, providing the best possible user experience on the web should be a goal in and of itself. A PWA, since it combines the reach of the web and the user experience of a native app, allows you to do just that.
Progressive web apps are not only ultra-fast apps. They can also continue to work even when the user is offline or has an unreliable or slow internet connection. Service workers - the technology responsible for that feature - allow the app to store things offline and flexibly manage network requests to retrieve them from the local cache. It leads straight to another benefit — which is minimizing the amount of data we need to use to run the app.
A PWA, since it is a website with some extras, can be discovered through regular search engines like Google or Bing. There is no need to dig through the piles of apps popping up every day in the sea of apps on the app stores. A PWA's installation is a piece of cake: it happens in the background during the first visit.
PWAs have a lot of possibilities to access device features on Android and a few less on iOS. The usage of camera, GPS, or fingerprint scanners in an app-like way enriches the user's experience.
Launching a new version of a mobile app can be a nightmare for publishers, and with a PWA, there is no need to wait for Apple's or Google's acceptance, and have users' download the update. All we have to do is upload new files to our server. A PWA allows publishers to implement patches immediately, for example. It enables them to keep full control of the content. Customers always use the most current version of the application.
By using the HTTPS protocol, the data we transmit is encrypted, and thus more difficult to intercept and change. Moreover, users perceive HTTPS as a guarantee of safety and reliability of publishers, and Google gives additional points in the search ranking for using it.
The whole idea standing behind PWAs is finding a way to connect the best possible experience — an app-like one — with the open nature of the web.
From a user perspective, the differences between PWAs and native apps can be barely noticeable, excluding the way of downloading. However, the methods of building, launching, updating, and sharing PWAs are entirely different from native apps.
Clutter in the app stores, dangerous dependance on giants like Google and Apple, and fees have already pushed developers to look for an alternative to native solutions. Products, like Windows Hosted Apps and Electron, were the first trials to use web technologies to create apps that could exist outside the browser.
Progressive Web Apps — until now — have seemed to be the closest to reaching the primary goal of these efforts. "PWA escaped from the browser's tabs to live as their apps but retained the ubiquity and linkability that make the web what it is" as Jason Grigsby wrote in "Progressive Web Apps". It wouldn't be an exaggeration to say that Progressive Web Apps prove the power of modern web standards. They use pure HTML, CSS, and JavaScript, but in a way that five years ago, no one could even have imagined.
The native-like approach is an entirely different story. Native apps are built with code used exclusively for the device and its OS. Developers write iOS applications in Objective-C or Swift, and Android apps are created in Java. Long story short, they require more niche skills, which increase the time and cost of development.
According to HubSpot, 93% of online users begin their online experience with a search engine. That data is beneficial to PWAs. They allow omitting middlemen like AppStore and Google Play, and reach users directly through an internet browser.
Moreover, the mobile-first index recently rolled out by Google pointed to PWAs being one of the best ways of embracing the mobile-first approach to design online services. Mobile users expect fast and seamless interactions and content that they can tap or swipe. Social media, like Twitter, Instagram, Facebook, and WeChat, have already embraced those needs and serve mobile-first experiences to users. Now their mobile entities - apps and mobile websites - are 40% more engaging than desktop ones, and users are also 20% more likely to click-through.
Mobile-first indexing means Google predominantly uses the mobile version of a page’s content for indexing and ranking. Historically, the index primarily used the desktop version of a page's content when evaluating the relevance of the page to the user's query.
Omitting the app stores is, however, the source of many more advantages:
Distributing apps through major mobile app stores is connected with the necessity of paying various registration fees. Moreover, Google and Apple keep a hefty percentage of any purchase made by the user, which leads to a considerable decrease in the developer's profit.
Apple reviews every app in the AppStore. The process is extensive, long, and drawn out, while the results are often disappointing and unpredictable.
The average number of new apps per day is 2,540. A PWA available directly from Google Search is a way of avoiding that crowd.
In app stores, update deployment takes time. Every update must be uploaded to a platform and then goes through a review process. It may be tricky, especially in the case of Apple, even though, in general, it is clear what requirements must be met. The app has to be bug-free; links within it must be functional, and it has to contain accurate screenshots. Yet, in the details, there is a grey area:
"If your app doesn't offer much functionality or content, or only applies to a small niche market, it may not be approved. Before creating your app, take a look at the apps in your category on the App Store and consider how you can provide an even better user experience." - App Store Guidelines. Since Apple relies on manual labor in the review process, the decision about good, better, and the best user experience may be highly discretionary.
Forty percent of apps or updates submitted to App Store are rejected, wrote Kif Leswing from CNBC. Apple emphasizes that many of them are approved after minor changes, but "others present a more difficult decision for App Review". What to do if the application is rejected? Well, there is a way out, but in Franz Kafka's "The Trial" style. Developers can appeal the decision made by App Review to a board called the App Review Board, which has the right to change the decision or sustain it. Sustained appeals can bring an app in front of the Executive Review Board.
Apple calls the developer to find out the developer’s reason for wanting to overturn the decision, and - as the company says - reviewers make a thousand of such calls every week.
With a PWA, on the other hand, everything happens instantly. The updates, deployed to a server, are available to users almost in real-time. And that's it. No stress, no worries.
Around 90% of a PWA is purely JavaScript, but the distribution model is web, for which organic search is vital. PWAs are optimizable according to Google SEO Guides.
Of course, in terms of optimization, it is recommended to take into account Google's recommendations for JavaScript, which may be tricky. The SEO community's opinion on how Google treats JavaScript-based websites is ambiguous, and the positioning process may face some challenges. Developers have to fix any errors that can stop Googlebot from crawling the page (with HTML, the browser can handle it by itself, but the code written in Javascript must be cleaned manually). They also need to inform Googlebots about internal links by using a non-standard piece of HTML code 'a href=””', and correctly optimize images for indexing.
Nonetheless, PWA distribution, with its web-like linkability, is way more comfortable, faster, and more accessible than going through the app stores. They are not attached to any particular platform, operating system, or app store. If the user fancies it, he can save it with one tap on his home screen directly from the browser, and share it via URL.
Check out available PWA development services 🔍
A progressive web app doesn't require a typical "installation", but it is possible to add them to the home screen on a mobile phone or on a desktop computer anyway. The first time the user visits the site, the service worker is installed behind the scenes. It enables developers to provide offline functionality, send push notifications, and display a home screen banner.
"Add to home screen" is a feature that uses the information from the web manifest to serve the app on the home screen with an icon and name. It displays a banner indicating that it's possible to install the app as a PWA. In theory, if the user accepts the prompt, the PWA is added to the home screen and runs like any other installed app. In practice, however, the ways users can install the PWA differ depending on which browser or OS they use. Chrome and Opera display banner prompts, similar to requests for permission to access a person's location. Firefox and Samsung Internet show more subtle badges that inform the users that the website is installable. The main goal remains the same — the user can pin the PWA to their home screen and use it like a native app.
--
Go back to The PWA Book main page >