Skip to main content
AG·SORA
Technology

Progressive Web Apps (PWA) for Business: Installation, Offline Mode, Notifications, and When They Beat Native Apps

Published 11 min readWritten by agsora.tech
AG·SORA / BLOGAG·SORATechnologyProgressive Web Apps (PWA) forBusiness: Installation, OfflineMode, Notifications, and WhenThey Beat Native Appsagsora.tech
In this article

Many businesses want a presence on their customers' phones, but the question is always the same: do we have to build native apps for Android and iPhone, with the cost, time, and app store approval process that come with them? There is a middle option that is often overlooked: the Progressive Web App, or PWA. A PWA is a website built with certain technologies so that it behaves like an app: it can be installed on the home screen, opens in a full window without an address bar, keeps working partly when the network is poor, and under certain conditions can send notifications.

This article explains what a PWA is in terms a business owner can follow, what it can and cannot do, the technical components that make it work, when a PWA is enough compared with a native app, and what to watch for regarding security, cost, and measurement. It offers a decision framework, not promises of particular results, because the fit of a PWA depends heavily on your product's needs.

Summary

  • A PWA is a website that can be installed and can work partly without a connection, built with one codebase for all devices
  • Its three core components: the app manifest, the service worker, and HTTPS
  • It suits content-based apps, forms, catalogs, customer portals, and internal tools; it is less suited to deep hardware needs
  • Feature support differs across browsers and operating systems, especially notifications and installation on iPhone, so it needs testing on real devices
  • Cache and update strategy determine whether users get the latest version or get stuck on an old one
  • Start from one high-value workflow, measure usage, then decide whether a native app is needed
Someone holding a white Android phone
A PWA can be installed on the phone's home screen and opened like an ordinary app

What a PWA is

A PWA is not a specific product or framework, but a set of modern browser capabilities combined with good design practice. A website is called a PWA when it meets several of these traits:

  • **Installable**: users can add it to the home screen or app menu and open it in its own window
  • **Reliable**: pages and key data still appear even when the network is slow or disconnected
  • **Fast**: loads quickly and responds to touch without delay
  • **Integrated**: can use some device capabilities, such as camera, location, sharing, and under certain conditions notifications
  • **Secure**: served over HTTPS
  • **Discoverable**: since it is still a website, it can be indexed by search engines and shared through links

The important difference from a native app: a PWA is accessed through a URL, does not have to go through an app store, and one codebase runs on all devices. Users simply open a link, without first downloading a large package. For a business, this reduces friction at the start of the customer journey.

The three core technical components

You do not have to write the code yourself, but understanding the components helps you judge proposals from a technical team or vendor.

1. The app manifest

A small file that describes the app to the device: name, icons in several sizes, theme color, start page, and display mode (for example fullscreen). This is what lets the browser offer an "install app" option and show the right icon on the home screen. Good icon quality and a clear name give the same professional impression as other apps on the phone.

2. The service worker

A script that runs in the background, between the app and the network. It can intercept requests and decide whether to fetch from the network, from the on-device cache, or a mix of both. The service worker is the engine behind offline mode, fast loading on later visits, and receiving push notifications. Because it is powerful, it also needs careful management: a mistake in the service worker can leave users stuck on an old version.

3. HTTPS

A PWA requires a secure connection. Beyond the technical requirement, it protects user data and prevents third parties from injecting content into your app.

A desk with a monitor, tablet, and phone showing a web page design
One web codebase can serve phone, tablet, and computer screens at once

Offline mode: what is realistic

Offline features are often the main reason for choosing a PWA, but expectations need to be realistic. Offline does not mean every feature works without internet. There are several levels you can choose according to need:

  • **A fallback page**: when offline, show a friendly page that explains the situation and shows content already opened, instead of a browser error message
  • **Visited content stays available**: articles, catalogs, or tickets that were opened before can be reread
  • **Actions deferred and synced later**: users fill in forms or record data while offline, and the data is sent automatically when the network returns
  • **Full offline-first**: the main data is stored locally and synced in both directions. This is the most complex because it has to handle conflicts when two devices change the same data

Real examples suited to partial offline: a field sales app that records visits in weak-signal areas, inspection checklists, survey forms, or event guest lists. If you need cashier transactions that are fully resilient to disconnection, study the patterns in offline-first POS and multi-device sync, because the data conflict and sync queue problems there also apply to PWAs.

Be careful with sensitive data on the device. Locally stored data can be accessed if the device is lost or borrowed. Store only what is needed, delete on sign-out, and consider encryption or an expiry on local data.

Push notifications: capabilities and limits

Notifications can increase engagement, for example appointment reminders, order status, or stock updates. But several limits need to be understood from the start:

  • Users must give explicit permission. Asking immediately when the first page opens is usually refused; ask at a relevant moment, after users see the benefit
  • Support differs between platforms. On Apple devices, notifications for PWAs generally require the app to have been added to the home screen, and behavior can change between system versions. Always check the latest documentation and test on real devices
  • Excessive notifications make users switch them off or delete the app. Send things that are useful, scheduled, and have adjustable preferences
  • For important messages such as verification codes or payment confirmations, provide a backup channel such as email or SMS, because push notifications are not guaranteed to arrive. Messaging channels are discussed in [WhatsApp Business integration for customer service](/blog/integrasi-whatsapp-business-untuk-layanan-pelanggan)

PWA or native app: how to choose

There is no universal answer. Consider the following dimensions.

When a PWA is usually enough

  • Your product is content, a catalog, forms, a portal, or a dashboard
  • You need to reach users quickly without download and app store update barriers
  • Budget and team are limited and you want one codebase for web and mobile
  • The app is used internally by employees on varied devices
  • SEO and easy link sharing matter for growth

When a native app fits better

  • You need deep access to hardware or the system, such as advanced Bluetooth, special sensors, heavy background processing, or particular digital wallet integrations
  • High graphics performance is required, for example games or video editing
  • Presence in the app store is part of the acquisition or trust strategy
  • You need operating system features not yet supported by browsers
  • A very platform-specific experience is a product differentiator

Options in between

Cross-platform frameworks offer one codebase for native apps on two systems, and can be combined with a website. The comparison is discussed in choosing mobile app technology: Flutter, React Native, or native and web app, mobile, or both. A sensible strategy for many businesses: start with a PWA to validate the need, then add a native app if usage data proves it.

Cache and update strategy

This part is often a source of problems. The service worker stores files on the device, so updates do not appear automatically. Consider:

  • **Cache static assets with versions**: files whose names change each release make replacement easy
  • **A strategy per content type**: network first for data that must be fresh, cache first for rarely changing assets, and show cache while updating in the background for general content
  • **Update notice**: when a new version is available, tell users and offer a reload; do not leave them on the old version for days
  • **An escape hatch**: provide a way to cancel a faulty service worker, for example a kill-switch file, so a release mistake does not hold users hostage
  • **Minimum version**: for changing APIs, reject app versions that are too old with a friendly message

Server-side and CDN caching principles that complement this are discussed in caching and CDNs for speeding up business websites and apps. For safe releases, combine with feature flags and staged releases so large changes can be rolled back.

Performance and user experience

A slow PWA will not be installed or reused. Pay attention to:

  • The size of scripts and images, and staged loading so the first page appears fast
  • Real experience metrics as discussed in [Core Web Vitals: LCP, INP, CLS](/blog/core-web-vitals-lcp-inp-cls-panduan-untuk-website-bisnis)
  • Touch targets that are large enough, responsive layout, and no reliance on hover
  • Design consistent with your design system, as in [design systems and interface consistency for business apps](/blog/sistem-desain-dan-konsistensi-antarmuka-aplikasi-bisnis)
  • Accessibility: color contrast, text size, and screen reader support
  • Clear behavior when offline, slow, or failing, not a blank screen

Security and privacy

Because a PWA is a web app, web security practices apply, plus a few special ones:

  • Use HTTPS and appropriate security headers
  • Limit the service worker's scope and avoid storing sensitive tokens where other scripts can easily read them
  • Apply strong authentication and a sensible session lifetime, especially for shared devices
  • Do not store excessive personal data in the device cache
  • Protect APIs from abuse with rate limiting, as in [business API design](/blog/desain-api-bisnis-versioning-dokumentasi-dan-batas-laju)
  • Request device permissions (location, camera, notifications) only when needed and explain why
  • Comply with applicable personal data protection rules, including consent and users' rights over their data

For protection against automated traffic on the web side, see protecting against bots, scraping, and automated attacks.

Cost and time

A PWA is generally more economical than two native apps because one codebase serves all devices and updates are available immediately without waiting in app store review. But costs remain in several components:

  • Designing a good mobile experience, not just shrinking the desktop view
  • Developing the service worker, cache strategy, and offline sync
  • Testing on varied devices and browsers
  • Push notifications, if they need a sending service and preference management
  • Ongoing maintenance because browser behavior evolves

Define the scope of the first version with discipline. One polished workflow, for example ordering or ticket tracking, is more useful than many half-finished features. Project pricing models and how to structure a contract are discussed in software project pricing models.

Example use cases

Here are examples of app types that often suit a PWA, without naming particular clients or data:

  • **Customer portal**: view orders, invoices, and service status, with notifications on changes
  • **Field team app**: record visits, photos, and forms in weak-signal areas, then sync when connected
  • **Catalog and ordering**: a shop or distributor that wants partners to order by phone without downloading a large app
  • **Event tickets and check-in**: digital tickets that can still be opened when the signal is congested, tied to [event management and online ticketing systems](/blog/sistem-manajemen-event-dan-tiket-online-pendaftaran-pembayaran-dan-validasi)
  • **Internal tools**: approvals, attendance, or checklists used by employees on many devices
  • **Service booking**: schedules and reminders, aligned with [online booking and reservation systems](/blog/sistem-booking-dan-reservasi-online-untuk-bisnis-jasa)

Measuring success

Set measures before building so later decisions rest on data:

  • The number of users who install the PWA and those who return after installing
  • Completion of the main flow, such as ordering or filling a form, compared with the ordinary web version
  • Real loading speed and error rate on users' devices
  • Notification permission and opt-out rates, and their effect on desired actions
  • Offline usage and sync success
  • User feedback and support tickets related to the app

Use the results to decide whether the PWA is sufficient or whether it is time to add a native app. A data-backed decision is cheaper than a trend-driven one.

Common mistakes

  • Assuming a PWA automatically has the same capabilities as a native app on every device
  • Not testing on iPhone and on browsers other than the one the development team uses
  • Asking for notification permission too early and too often
  • Storing sensitive data on the device without a deletion policy
  • Not providing an update mechanism and a way to cancel the service worker
  • Building a half-finished offline mode that shows stale data without any marker
  • Ignoring SEO and shareability, which are the web's main strengths

Frequently asked questions

Can a PWA be installed from an app store?

On some platforms a PWA can be wrapped and distributed through a store, but each store's rules differ and can change. Many businesses simply rely on direct installation from the browser. Check the latest policy of the store you are targeting.

Does a PWA work on iPhone?

Many core features work, but support for certain features such as notifications, installation, and local storage differs from Android and can change between system versions. Test on real devices and read the latest documentation before promising features to customers.

Does a PWA affect SEO?

A PWA is still a website, so its public pages can be indexed. Make sure important content renders correctly, URLs are clean, and speed is good. A service worker does not replace basic SEO practice.

How long does it take to build a PWA?

It depends on scope. Turning an existing website into something installable with basic offline is relatively quick, whereas an app with full offline sync and notifications needs longer planning. Start with one main flow.

Is user data safe in a PWA?

Safe when web security practices are applied and local data is limited. The biggest risks are usually data stored on the device and unmanaged sessions. Apply strong authentication, encrypted connections, and a deletion policy.

Can a PWA connect to an ERP or POS system?

Yes, through APIs. The PWA acts as a light interface to the core system, so tidy API design matters a great deal. It is a common pattern for customer portals and field apps.

Conclusion

A PWA offers a practical middle path: an app-like experience at the cost and release speed of a website. Its value is greatest for portals, forms, catalogs, and work tools that do not need deep hardware access. The keys are realistic expectations about offline and notifications, testing on real devices, and a tidy update strategy. Start from one high-value flow, measure the result, then decide the next step based on data.

Build the right PWA or mobile app for your business

Agsora helps assess whether a PWA, cross-platform app, or native app fits best, then designs and builds it. Tell us what you need and we will prepare an initial recommendation.

Free consultation

Free checklist: choosing a software house

24 points to evaluate a vendor before you sign. Can be saved as a PDF.

Get the checklist

Ready to build a system that grows with your business?

Discuss your needs with the AG·SORA team, no cost, no commitment.