Progressive Web Apps vs Native Apps – Who Wins?

progressive web apps vs native apps

There are two types of businesses in this world: those that use mobile apps to aid in sales and marketing, and those that don’t. The businesses that have mobile apps also fall into two distinct groups: those that use native apps, and those that use Progressive Web Apps (PWAs). And we can break down those groups even further, too, but I’ll stop it right there for brevity’s sake.

The point is, though, the path to a mobile app isn’t as straightforward a decision as it used to be. When the iPhone launched in 2007, it revolutionised the mobile landscape in terms of use: third-party apps made it possible for developers to make your phone do just about anything, launching an entirely new industry in the process. If you wanted to get in on the craze, your options were as follows:

  1. Do it.
  2. Don’t do it.

Easy choice, with a decision that was usually pretty easily made. If you had the resources to throw at a mobile app, you threw it with wild abandon. If you did not have those resources, you just hoped people might visit your website or social pages with their mobile devices. The current state of things means your mobile strategy is not as easily arrived at. For one thing, you now have to have a mobile strategy. As far as apps go, though, you have a lot of options. And the biggest choice facing mobile adopters, or even those looking to refresh their mobile presence, is what kind of app you will go with. Native? Or PWA? There are pros and cons to each, but before we go there, it helps to understand what the difference is in the first place.

So what’s the difference between native apps and Progressive Web Apps?

In a sentence: a native app is written to run on a device, and a PWA is written to run inside a web browser. A good example of the difference is with the addictive mobile game 2048. If you have an iPhone or iPad, you can download the app from the app store, install and then play it. The same goes for an Android device. Or—using any smartphone, tablet, or computer—you can also just go straight to the website and simply start playing. No need to download the software because it’s delivered right inside the web browser—when the page loads, the app is running. Click on the link to see what this looks like in action, but don’t get hooked on the game! We’ve got loads more to discuss here. Things like:

The Benefits of a Progressive Web App

PWAs deliver what is known as “an app-like experience”—with a web browser in full-screen mode you wouldn’t even know you’re working within a website. Still, many of the benefits of using a PWA don’t have to do with their features and functionality. Native apps are still more robust and can be written for any use. But PWAs were conceived as a way to sidestep, or even eliminate, a lot of the headaches associated with native app development, and the list of reasons to use them shows this:

Hassle-Free Experience.

If you clicked on the game link above, you experienced just how easy it is to start using a PWA. It takes almost no effort on the user’s part to try your app out. For native apps, there are some pesky extra steps of going to the app store, finding the app, downloading, installing, and then finally using it. And that’s assuming the person already knows about their app specifically. If they’re just doing general searches for a type of app, like a game, then they’ll browse through several. App makers need to spend a lot of time optimising their creation for the app store—researching keywords users might search, including it in the description (which they have to write), selecting and designing effective screenshots. It’s a process to convert a user. Compare that to arriving at a website and instantly using the app, with the ability to save the link to your home screen as an icon. It’s hard to deny the appeal.

Universal Compatibility.

PWAs leverage the latest capabilities of HTML5, which is the current version of the coding language the web was built on over 25 years ago. It’s the standard for web content, and all a user needs to access it is a modern browser. For the record, a “modern browser” is defined as “a pre-loaded app that everyone uses every day on every device everywhere, all the time.” There are 3.77 billion internet users worldwide; even if only half of them were running a browser that supports HTML5, that’s more than 1.8 billion people who are a single click away from using your PWA. On the flipside, you can make an iPhone app and reach around 700 million people, leaving a few billion more Android users you won’t.

ios android and windows

[Image Source: Windows-Phones.de]

Responsive Design Simplifies the Code

Even though they can easily run on a desktop or laptop, PWAs are designed with mobile in mind. That means they implement the responsive design capabilities that any mobile website uses. Responsive design allows for write-once-run-anywhere experience: the browser takes into account the device and screen size, displaying content that looks and behaves accordingly. Try the 2048 link above from a desktop web browser and your smartphone, and you’ll notice they both look clear and usable despite the difference in screen size. On a desktop, you use the keyboard arrows to move the tiles around the screen, from a smartphone you swipe. All this happens without the need for users to configure anything.

Avoiding App Store Bureaucracy

While Apple has the biggest reputation as a control freak when it comes to app store eligibility, there is some level of red tape to cut through no matter where you’re offering a native app for download. There are technical requirements, community guidelines, forms to fill out, and a review process that all happens in advance of getting an app published. If you’re coding for Android, then you can add confusion to the paperwork: which app store do you publish in? Google Play, for sure, but then what about Kindle? It’s basically an Android device but it’s a pain to install apps that aren’t on Amazon’s App Store. And then what about all these? Bear in mind that every update of a native app has to go through the review process again.

None of this happens with a PWA. You tweak the code, you test it, you push it out live—you’re done.

Low Cost of Entry

Because of the way PWAs make it so easy to bring an app to consumers (see: everything that came before this), there are some very real savings in terms of the time involved to develop, launch, and market the app. This low cost of entry makes a PWA very attractive to retail and hospitality businesses looking for a return on their investment. Native apps have changed the way consumers interact with businesses—the app is a marketing tool and storefront all in one—and PWAs are perfectly suited for this use. The ease with which a business can get a customer using their app is crucial in this regard.

And Speaking of Consumer/Retail Apps

Though they don’t have quite the capabilities that a native app does, PWAs vastly improve the e-commerce experience on the mobile web. They vastly improve it compared to shopping on your computer at home, too. Go to your phone and shop for a pizza on the Domino’s pizza website, then shop for the same thing using their app. One of those experiences was much better. If they’d been running a PWA, it could and would look and act just like the native app. There’d be no scrolling jitters, the text would be easier to read—just a clean, responsive, interactive experience.

Also, while PWAs lag behind native apps in terms of features, they can do what is arguably the most important one for a consumer app: push notifications. When users opt-in to pushes, retailers get to market directly to them using what is arguably the most effective form of mobile communication. These can happen whether or not the browser is running, so you’ve got 24/7 messaging access to users. Don’t wake them up in the middle of the night, though, even though you totally could.

So, yes: Progressive Web Apps are a future of mobile. Not the future of mobile, but definitely one of them. That’s because native apps aren’t going away anytime soon.

The Benefits of Native Apps

PWAs solved the problem of easy onboarding and compatibility, but then create a new one: not being able to fully interact with the device on which they’re run. Remember, it’s the browser that delivers the Progressive Web App experience, but it’s the device and OS that make the browser possible. That extra layer of software-running-software acts as a kind of wall between the PWA and the device, and that wall gives the advantage to native apps in several areas.

They’re just faster.

It’s true. The code lives on the device where it’s being processed, and it’s been written specifically for that device. Think of it like language translation. You and I both speak English, and talk directly to one another. If you only spoke French, though, we’d need a translator between us to facilitate the conversation, but also slowing it down. The browser is the translator for a web app, and adds latency to the experience.

They can GEO-fence.

If you’ve never heard of it, GEO-fencing enables app makers to define virtual perimeters in the actual world. When their users step inside those boundaries, it triggers an action on the device. When combined with push notifications, GEOfencing is incredibly powerful for marketing and retail applications. Imagine being able to automatically send messages to your customers: Hey, you’re really close to our shop! Come on in in the next hour and get a 10% discount. A PWA can use location services to know where the device is, but at this time the only way to make that work with a GEOfence is with a native app.

geofencing diagram

Source

NFC Support

Near Field Communication is the protocol your phone uses when you use it to pay for things. PWAs don’t have a way to interact with the NFC chip that makes these payments possible. If you’re a brick and mortar store that accepts digital payments, you’re going to need to go native if you want your app to be able play along. Mobile payments greatly enhance the customer experience, and also tie in nicely with your app in a variety of ways (like if you have a loyalty component built-in to it).

Native Apps Interact With Other Apps

You know when you go to create a user account with an app, and you’re given the option of logging in with Facebook? It saves you a lot of time: you choose the option, the Facebook app pops up and passes the credentials along and you’re done, right back to what you were doing and logged in. That kind of thing doesn’t happen with PWAs—there’s no mechanism for them to talk to other apps, native or otherwise. Apart from being a timesaver for the user, this ability also centralises their logins to a single sign-on (more or less). Ensuring that users don’t have yet another account to remember is actually a pretty nice thing you can do for them.

Native Apps are “Smarter”

Features like a proximity sensor and ambient light detection aren’t necessarily need-to-haves, but they are the kind of things that make your smartphone smart. If it’s dark in the room, your phone won’t blind you with its brightest screen setting. Put the phone face down on a table, and the screen automatically shuts off to conserve battery. Also, your spouse will think you’re hiding something, so always keep your phone face up.

Wake Lock

Wake lock is when an app overrides the system setting for turning the screen off after a certain amount of time of inactivity. If you read books on your device, or stream movies, you’ll notice that you can go for long periods of time without interacting with the device and the screen never goes black. PWAs can’t do this, and depending on a user’s settings their device could go dark while they’re in the middle of reading or looking at something.

App Stores Aren’t All Bad

Remember up above, when I was going on about the bureaucracy of the app stores, and how it slows things down? Well, sure it’s a pain, but it also serves a purpose. That review process is essentially a third party quality control review—users can download with confidence knowing that the app isn’t going to contain any malicious code, spyware, malware, etc. That’s not at all guaranteed with PWAs. They do operate over secure connections, but remember that running a web app is as simple as visiting the web page where it lives. You arrive at the page, and you’re running the app. It wouldn’t take a lot for someone with bad intentions to exploit that connection.

And So What Have We Learned?

There’s a lot to like about both native and Progressive Web Apps, and there’s still enough difference between them at this point that deciding between them can be a clear-cut exercise. The choice is dependent on your needs (which, really, is what all choices should be dependent on).

You want a basic consumer/retail app that makes it easy for your customers to interact with and shop with you when they’re not in your store? PWAs are a good fit. Especially for a small business, which might not have the time or resources to put into creating a mobile masterpiece, PWAs are a great solution. They can give businesses a compelling mobile presence—and the tools to reach customers—that might not have been able to build one otherwise. PWAs are an equaliser of sorts in this regard, putting small—and likely cash-strapped—businesses onto a more competitive playing field.

You want something that takes full advantage of the smartphone and its capabilities? Native apps are the way to go. For a business that can afford one, even through a DIY app builder, the ability to GEOfence and reach customers when they’re nearby could be worth the price difference all on its own. Integrating payments is also another feature that ups the mobility factor of an app. There’s no question that a native app delivers a more robust, better performing user experience once it’s installed.

Of course, all this could change in the next few years, since technological advancement is as stagnant as a three-year-old on a sugar high. PWAs continue to gain features as developers try and push the limits of what can be done inside the browser. But there’s no definitive timeline on this, and native apps will also keep growing as the devices they sit on get more advanced. Whichever way you go, though, the ultimate goal is to deliver an application that users can easily work with and benefit from. And there’s no question you can do that either way. The choice is yours.

To learn more about the PWA features supported by AppInstitute, click here.


Start Building Your App for Free