There’s been a lot of hype around progressive web apps among developers and web performance professionals. However, there are still plenty of people with a role in delivering or specifying online content who have never heard of them.
For the online retail industry, optimised user experience is critical, and if a website’s features are not running as well as they could be, this can significantly impact on conversion rates and reputation among users.
So, in this guide we discuss what a progressive web app is and break down why it could be the next best move for your ecommerce website.
What is a progressive web app?
To put it simply, a progressive web app is just a website.
The thing that makes it different is that it looks, feels and behaves like an app when you load it on certain mobile devices.
Probably the most important reason for doing this is to save yourself the time, effort and money involved in developing a separate app. For ecommerce sites, this can be particularly useful as more users have become accustomed to the pristine and smooth operations of apps used in their day-to-day lives.
However, it’s also worth considering the pros and cons of apps and websites to gain an understanding of what works and doesn’t work for customers.
What’s good about apps?
Users can launch apps from both phone or tablet home screens, allowing instant access. They’re also fast to start up, and even if it’s not ready immediately, an app will usually give users a ‘splash screen’ whilst they wait. Another aspect that draws many users to an app is that they work offline, and even if some features may need an internet connection, users will have access to something even if they’re not connected.
What’s good about websites?
One big advantage for websites is that they are crawled by search engines like Google, which makes them highly discoverable.
Another advantage is that users don’t have to install them and use up valuable storage on their phones or tablets. With just one app – their web browser – users can gain access to all sorts of websites.
Creating an app also involves the deployment of continuous updates, which is time-consuming for both users and developers, who have to go through store review processes before release. By contrast, when you visit a website, you get the latest version automatically. Web pages are also very easy to link to and share across social media and communication platforms.
How a progressive web app gives you the best of both worlds
Ultimately, the web app saves both time and money as building an app requires considerable investment and at least two versions, Android and iOS. Both then need to be submitted to the relevant app stores. Once you’ve built your apps, you also need to maintain them alongside your website. A progressive web app means you just have to build and maintain one thing, not three.
The progressive app also allows for a more consistent experience – simultaneously deploying changes to your website and apps can be challenging. There will almost certainly be different teams working on each, which could cause discrepancies and create brand-damaging inconsistencies. A web app is more convenient for your end users as they get an app-like experience without having to use up a lot of storage on their device or download frequent updates.
How do progressive web apps work?
There are a number of tools online that can help you build a progressive web app, including a useful tutorial from Google. However, if you don’t need to know the detail, here’s a quick outline of some key components:
The app manifest
The app manifest is a simple text (JSON) file that you link to at the top of your web page. It gives the browser some useful information about how your web app can be used and displayed, including; the app’s name, the icon you want to use to launch it, how the ‘splash screen’ should look and whether the app should display inside the browser window or rely on a standalone user interface.
The app shell
Another key concept in progressive web apps is the ‘app shell’. This is made up of the essential building blocks needed for your app. It includes things like your logo and parts of the user interface that are there all the time.
The idea is to get your app shell to load fast, even when there’s no Internet connection. Dynamic content can then be dropped in as it becomes available. This way, the end user gets the impression of an app that loads more or less instantaneously.
Service workers carry out background tasks that help deliver a smoother experience to the end user. For example, they can be used to manage the storage and retrieval of critical content (like the app shell) on the user’s device.
Is there any reason not to build a progressive web app?
There is always the opportunity cost. What else would you do with the time and resources? Also, if you already have a well-established, well-used app, there is a question over whether you really need to turn your website into an app too – or whether this could actually cause confusion for your customers.
Another common objection to progressive web apps is the lack of universal support. Notably, service workers are not currently supported in iOS. However, there are ways around some of these support issues, and a number of progressive web app features are available on iPhones and iPads. What’s more, your website will still work in browsers that don’t support progressive web apps (that’s what makes them progressive!).
Finally, service workers, which are an important part of progressive web apps, will only work over HTTPS. As limitations go, this is likely to become less important as we gradually head towards an HTTPS-only web. Browser vendors are increasingly pushing us towards HTTPS, and other technologies, such as HTTP/2, also require a secure connection.
Ever since it became possible to access the web on a smartphone, we’ve struggled to find the best ways to deliver and consume online content on a growing range of devices. Apps allow us to deliver a better experience, especially when connectivity is limited, but they have a lot of drawbacks.
Progressive web apps bridge the gap between websites and apps, delivering most of the benefits of an app but without the disadvantages. With user experience and conversion rates at the top of priority lists for many, if not all ecommerce sites, why wouldn’t you consider a web app which can give you the best of both worlds?