Should you invest in a website, an app, or both? In a perfect world, every business would be able to support both, but many can’t. Enter progressive web apps — the lesser known option that might be the perfect fit. If you’ve never heard of progresive web apps, we’ve got a popular fable to explain them.
We all know the story of Goldilocks. What can we learn from the precocious youngster who breaks into an unsuspecting home, only to discover that ⅔ of the food and furniture options available to her don’t meet her needs?
As a business owner, you may be familiar with this feeling. You know how vital a website is for your business. It’s your calling card, the platform for your brand voice, and a key piece of your marketing and sales funnel. You need one.
You’ve probably heard similar things about mobile apps. Apps drive engagement, enhance your brand, and can grow your sales. You need one too.
When evaluating critical digital assets, the natural choice is to invest in both. The problem is, both products are costly. In addition to the up-front development costs, all digital products require regular maintenance throughout their lifecycle. So what if supporting both a website and an app just isn’t in the cards?
Let’s start with the good news. Just like finding the perfect bowl of porridge when you’re hungry, there is a third option that can meet your needs that may be just right: progressive web apps.
While progressive web apps do not carry all the benefits of native apps, they are capable of providing much of the same user experience. If creating a native app is outside of your budget, progressive web apps can be a suitable and cost effective alternative.
Progressive Web Apps: What Are They?
Put simply, progressive web apps are web applications that activate some (but not all) of the features on a mobile device. Once downloaded, a progressive web app can access the mobile device’s GPS system, camera, enabled push notifications, and more. The progressive web app is able to live on a user’s home screen, so it looks like an app, not a website.
From the perspective of the mobile user, progressive web apps look, feel, and function much like a mobile app — without being a mobile app.
How do progressive web apps do this? Without getting too technical, it comes down to the code base on which the progressive web app is built. Progressive web apps utilize Application Programming Interfaces (APIs). APIs allow the progressive web app to communicate with the mobile device and unlock some of its most convenient features.
The result is a progressive web app that is both reliable and installable for anyone, on any device, with a single compatible codebase. The user gets a mobile experience that feels like an app built just for their device, but you didn’t have to build one.
Sounds great, but don’t responsive sites do similar things? Glad you asked…
What is the Difference Between Progressive Web Apps and Responsive Sites?
At first glance, a responsive site may be easy to confuse with a progressive web application. Both create a seamless viewing experience when accessed by a user on a mobile device. However, there are several key differences.
If you remember the early aughts, you’ll recall the explosion of mobile devices that hit the market with a new feature — the ability to view web pages. That mobile tech advancement created an urgent need for websites to offer easier user experiences on mobile.
Enter responsive sites.
A responsive website is designed to display web pages across all devices. It is developed with one programming language (CSS) which is able to display on all screen sizes. Responsive sites became a thoughtful first step in the early days of mobile internet browsing. They saved developers from the back-breaking work of building websites for every single device able to access it.
Unlike progressive web apps, they do not live on homescreens. They are not downloadable. They can access no additional mobile device features.
This situation is not unlike Goldilocks assessing the best bed to sleep in. When the need is simple (just needing to sleep), any bed will do, regardless of the size. The mattress may be too firm, or the comforter too warm, but if you are just looking to sleep, it’s fine. A responsive site will get the basic job done — responding with the correct visual representation for the device accessing it.
However, Goldilocks chooses a specific bed because her needs are greater than simply wanting to sleep. She wants a bed that is her size so that she can sleep comfortably. She is looking for specific features (mainly the size and scale of the bed) because they give her a more enjoyable experience.
Progressive web apps have benefits that responsive sites don’t have. But if they can access device specific features (like push notifications), how are they different from mobile apps?
What is the Difference Between Progressive Web Apps & Mobile Apps?
Remember our favourite juvenile burglar, Goldilocks? The classic tale involves her trying out chairs, beds, and culinary options all to find the most agreeable ones for her. In our analogy, a mobile app is like her walking into a house and, instead of finding porridge, finding a meal custom-made to fit her exact dietary needs.
Much like a custom meal, a native mobile app is a bespoke piece of software that has been designed solely for the device it is intended to live on. Have an iPhone? The apps on it are built for iOS. They will only work on Apple devices. Same goes for Android. Trying to download an app built for one platform on the device of another is like eating porridge when you’re allergic to oats.
When you’re building a native app for all types of mobile users, you have to build it twice. Once for Android; once for iOS. Everything is doubled: the time, the labour, the cost.
The trade off? You get bespoke, custom software that can live on any mobile device while delivering the exact same experience, regardless of the operating system. You also get a piece of software that is able to fully access and utilize a user’s device.
Your mobile app can access calendars, contacts, microphone, locations, storage, and additional data. Depending on the type of performance and service you want your mobile app to provide, these features are either necessary, or nice-to-have.
If the app you are envisioning is a unique, high-performance concept that requires these special features, then native apps are well worth the investment.
But what if your company doesn’t need (or want) to access all these mobile features? What if your app only requires a few simple tools to provide the experience your users want? Afterall, Goldilocks doesn’t need to make her own meal — she’s perfectly fine to eat porridge.
Unlike a custom mobile app, progressive web apps only need to be built once. Since they are built like websites, they have fewer development restrictions than native apps. This means they are built faster and more economically. While they lack some of the luxe features of native apps, they make up for it with speed, convenience, and ease of access.
What Are Some of the Benefits of Progressive Web Apps?
We understand that responsive sites look good on mobile devices and are relatively easy to develop. The trade off is they lack the features most users have come to expect from their mobile experience. We also understand that mobile apps are high-cost, high-reward. They take more time, labour, and money, but provide the ultimate mobile experience.
Progressive web apps are nestled between these two extremes, providing some of the benefits of each side.
At a glance, progressive web apps offer:
- Progressive web apps are faster to develop and update
- Anyone with a web browser and URL access can get to your progressive web app, bypassing all the hassle of an app store
- When the user opens the app, the UI loads quickly, while the progressive web app gets its updated data from its network, creating an instant feeling of fast performance
- Time is money: All that speed translates to lower development and maintenance costs
- Progressive web apps boast greater convenience with their ease of shareability
- Users can bookmark and add the app to their home screens without needing to be installed
- Most users are already using progressive web app supported browsers (Chrome, Opera, Safari, FireFox, etc) which makes progressive web apps a highly accessible option
- Progressive web apps offer installation without download. This makes them less “heavy” than a native built app
- App stores are highly competitive; bypassing the rigorous demands of app stores means your progressive web app isn’t reliant on an app store for success
- Progressive web apps can be indexed in search engines, which enhances their visibility
Progressive web apps carry a lot of positives. So, why isn’t everyone favouring them over native apps?
What Are the Drawbacks to Progressive Web Apps?
So, Goldilocks is jumping on beds, breaking the chairs, and raiding the cupboards. Questionable morality aside, is she really finding the best options for her? Probably not. If we could offer this delinquent some advice, we’d suggest her biggest error was acting before thinking. She probably wouldn’t have needed to test out (and break) chairs and beds if she had considered what she actually needed first.
Every company has a different vision for the experience they want to provide their users. As a company looking to invest in quality software, start by looking at what experience you want your users to have. If that user journey only requires basic mobile features, you might find progressive web apps offer an experience indistinguishable from a native app, while being faster and cheaper for you, and easier for your users to access.
So, is a progressive web app better than a native app? It depends on who’s asking. Some progressive web app drawbacks include:
- In general, native apps will outperform progressive web apps, often because native apps can access those additional device features
- Progressive web apps rely heavily on their browsers for overall performance
- Internet access is key, and the result can drain battery life
- Native apps are not dependent on browsers for internet access
- Progressive web apps have fewer options from a functionality standpoint when compared to custom native apps built from scratch
Goldilocks does find useful items while stumbling unchecked through someone else’s property, but she goes through a lot of trial and error first. Not everything she finds works for her, and a lot of resources are lost in the process. Take a look at the experience you want your users to have with your product. Does it need to be a native app? If it doesn’t, does a progressive web app provide the features you require?
How Do I Know if a Progressive Web App is Right for My Needs?
Your software is a serious investment. So taking time to think critically about what type of software fits your needs is the best first step you can take. It’s good advice to consider the risks and rewards of every option to make sure you aren’t biting off more than you can chew.
Progressive web apps might be a good fit for you if:
- The majority of users you’re targeting use progressive web app supported browsers like Chrome, FireFox, or Safari
- You already have an existing native app for one system (such as iOS), and you’d like to avoid building a second
- The app you are creating relies more on content than mobile features
- Your design is for internal use (such as a corporate business purpose)
If the above resonates with you, progressive web apps will be a fantastic option, providing seamless native-like app functionality, with only a fraction of the time, hassle, and development costs.
Unlike Goldilocks, you have time, resources, and solid judgement. You can assess your needs. What are your goals for your digital product? What are the best tools to get you that end result? There is a software option that is right for you — without the risk of infuriating a house full of bears.
Also remember that you don’t have to go through the process alone. Whether you’re building a native mobile app, a custom website, or a progressive web app, there are teams of professionals, armed with a battery of skills to help make sure your software projects always have a fairytale happy ending.