Someone has told you that you need an app. Perhaps a competitor launched one, or a board member asked why customers can’t find you in the App Store. Before the PWA vs native app debate starts, ask a blunter question: what would the app do that your website can’t?
A progressive web app sits in between: a website that can be installed, open in its own window and keep working on a poor connection. For some businesses it’s the right answer. For many others the honest answer is neither, and a faster, better-built website does the job.
Browser support changes often; this guide reflects browser documentation at the time of writing (July 2026).
The short answer
A progressive web app (PWA) is a website that can be installed on a phone or computer and used like an app. It’s built from three pieces: HTTPS, a web app manifest (a small file describing the app’s name, icons and how it opens) and a service worker (a script that can cache files, show an offline page and handle push messages). Browsers can install a site without a service worker, but offline use and push depend on it.
- Choose a PWA when people come back often to do the same task, such as reordering, booking or checking a status, and everything they need works in a browser.
- Choose a native app when the core feature needs deep device access, such as Bluetooth accessories, NFC or background location, or when an App Store listing is essential.
- Choose a faster website when most visitors arrive from search, ads or a shared link and visit a few times before getting in touch. That describes most business websites.
What is a PWA, exactly?
“Progressive” is the important word. A PWA is a normal website first: it opens in any browser and each view should have its own URL. Where the browser supports more, app-like features switch on. Nobody gets a broken experience; some people get a better one.
The three ingredients
HTTPS. Both installation and service workers require it, and most business sites already use it.
A web app manifest. A JSON file, linked from every page, that tells the browser how the installed app should look and open:
{
"name": "Example Clinic Bookings",
"short_name": "Bookings",
"start_url": "/book/",
"display": "standalone",
"theme_color": "#1f3a5f",
"icons": [
{ "src": "/icons/icon-192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icons/icon-512.png", "sizes": "512x512", "type": "image/png" }
]
}
"display": "standalone" removes the browser’s address bar, so the installed app looks like any other app on the device.
A service worker. A script the browser runs separately from your pages. It sits between the site and the network, which is what makes caching, offline pages and push notifications possible.
PWA benefits for business
- One codebase for iPhone, Android and desktop.
- Instant updates, with no store review and no customers stuck on old versions.
- No install wall. People use it straight from a link, QR code or search result.
- It can still rank. Its pages can be indexed like any website’s; content inside a native app largely can’t.
PWA vs native app: how they compare
| At a glance | Progressive web app | Native app |
|---|---|---|
| Getting it | Open a link; install later if wanted | Install from a store before first use |
| Built with | Web technologies, one codebase | Swift, Kotlin, or a cross-platform framework such as Flutter |
| Updates | Live on deploy | Through store review and user updates |
| Offline | Cached pages and simple tasks | Full, including large data sets |
| Push notifications | Yes, with a catch on iPhone | Yes, after permission |
| Device access | Camera, location, sharing, payments; Bluetooth and NFC only in Chrome-based browsers (NFC on Android only) | Full hardware and system access |
| Store listing | Google Play and Microsoft Store via packaging; Apple’s App Store expects more than a website | Yes |
Offline use
Ask what “offline” means for your users. A service worker can cache the app’s layout, styles and recently viewed pages, so a technician’s checklist or a venue menu keeps working through a bad signal. Large offline data, such as maps, media or a week without a connection, is safer in a native app: browsers can clear stored data when a device runs low on space.
Installation and install prompts
On Android, Chrome and Samsung Internet offer to install an installable web app, which then sits in the app drawer like any other. On desktop, Chrome and Edge can install PWAs too, and Safari on a Mac (from macOS Sonoma) can add any site to the Dock. Chrome-based browsers on both also let your site show its own “Install” button at a moment you choose.
Be realistic: people rarely install anything they use once a month, native apps included.
Push notifications
Web push works in the major browsers on Android and desktop, so a PWA can confirm a booking or say an order has shipped. Ask for permission when the value is obvious, such as a “Notify me when it ships” button, never on the first page view. Chrome already shows a quieter prompt on sites where most people say no.
App store presence
A PWA can be packaged for Google Play as a Trusted Web Activity (tools such as Bubblewrap and PWABuilder help), and the Microsoft Store accepts PWAs too. Apple’s App Store Review Guidelines (4.2, Minimum Functionality) expect an app to go beyond a repackaged website, so a thin wrapper risks rejection. And any listing still needs its own marketing to be found.
Device features and performance
The web handles the camera, photo upload, location while the app is open, sharing, and Apple Pay or Google Pay. It can’t track location in the background, add home-screen widgets on phones or count on running tasks while closed, and demanding games, AR and video editing generally run better natively.
PWA limitations on iOS
At the time of writing, iPhones still treat PWAs differently:
- No install prompt. Installing means tapping Share, then Add to Home Screen. Your site can’t trigger it, only explain it, ideally with a short visual guide at a useful moment.
- Push needs installation. Web push arrived in iOS and iPadOS 16.4 (2023), but only for web apps added to the Home Screen, and the permission request must follow a tap. Visitors who never install can’t be notified.
- One engine. Browsers on iOS use Apple’s WebKit engine, with limited regional exceptions. In practice, Chrome on an iPhone has Safari’s capabilities, not Chrome’s: no Web Bluetooth, Web NFC or Background Sync.
- Storage is less durable. Safari can delete data stored by sites a visitor hasn’t used recently. Keep important data on your server and treat the device as a cache.
Check it yourself. On a real iPhone, add the app to the Home Screen, switch on flight mode and walk through the whole journey, including sign-in and forms. Repeat on an Android phone. The differences you find are the ones your customers will find.
A decision checklist: native app, PWA or a better website?
Tick everything that applies, then see which group wins.
Signs you need a native app
Signs a PWA fits
Signs you need a better website, not an app
If the first group wins, a native or cross-platform app is worth its cost. If the second, a PWA is likely the smarter build. If the third, the middle path below is where your budget belongs.
The middle path: borrow the useful parts of a PWA
Most business websites don’t need to be full PWAs, but they can borrow what helps.
Make the first visit fast
A service worker speeds up repeat visits but does nothing for the first, which is when a business website wins or loses an enquiry. That depends on page weight, hosting and the Core Web Vitals; Google rates a Largest Contentful Paint of 2.5 seconds or less as good. A layout planned for phones first matters just as much. For returning visitors, browser caching and a CDN do most of the work without a service worker, as our guide to website caching and CDNs explains.
Add a manifest and proper icons
A manifest is quick to add and gives your site a proper name, icon and colour when someone saves it to their home screen. Add an apple-touch-icon too, which iOS has long used for home-screen icons.
Cache the shell, show an offline page
Cache files that rarely change, such as fonts, styles, scripts and your logo, and fetch pages from the network first so prices and news stay current. Then cache one branded offline page with your phone number, email and address as text. It is far more useful than the browser’s error screen.
Know what never to cache
Never cache form submissions, logged-in pages, carts, checkouts or anything personalised. A service worker stays installed in visitors’ browsers after you change your mind, so launch with a tested way to replace or unregister it. On WordPress, plugins can add a manifest and service worker; check exactly what they cache before switching one on.
None of this needs a new platform. A PWA front end is sometimes used to justify going headless, but these pieces fit the site you already have.
Check it yourself. In Chrome DevTools, the Application panel shows whether your manifest is read correctly, whether a service worker is registered and what it has cached. Lighthouse removed its PWA category in version 12 (2024), so PWA checks in older audit reports are out of date.
Frequently asked questions
Is a PWA cheaper than a native app?
Usually, because you build and maintain one codebase rather than one per platform. A PWA with accounts, offline data and notifications is still a software project that needs testing on real devices, and the cheapest option is often improving the website you already have.
Do PWAs work on iPhone?
Yes, with limits. iPhone users can install a PWA from the Share menu and, from iOS 16.4, receive web push once they have. There’s no automatic install prompt, and some Chrome features, such as Web Bluetooth and background sync, are missing.
Is a PWA better for SEO than a normal website?
Not in itself; Google doesn’t say it rewards installability. A PWA ranks like any website, on crawlable content, a unique URL for each page and a good page experience. A JavaScript-heavy single-page app can be harder for search engines to read, so check that every view renders real content at its own address.
What to do next
Installable web apps are one sign of where websites are heading: more capable, while staying open to anyone with a browser. Before you brief an app, write down the three things it must do and run each through the checklist above. Often the answer is a website that loads fast, works on every phone and gives returning customers a quick way back.
That is what our website design and development service builds: WordPress websites planned around your customers, fast on phones, with the useful PWA touches where they help. We don’t build native apps or app-style web applications, so if your checklist points that way, we’ll say so. Weighing up an app? Talk to us about what your website needs before you commit to a build.