{"head":{"title":"What Is a PWA (Progressive Web App)? Definition | OceanLab","description":"A PWA is a web app that can be installed, work offline and feel like a native app, from one codebase. How it works, when it fits, an example and mistakes.","canonical":"https://oceanlab.in/glossary/pwa"},"crumbs":[{"name":"Home","path":"/"},{"name":"Glossary","path":"/glossary"},{"name":"PWA","path":"/glossary/pwa"}],"slug":"pwa","term":"PWA (progressive web app)","aka":["progressive web app"],"category":"System design","short":"A web app built with standard web technology that can be installed on a device and work offline, giving an experience close to a native app.","body":[["MDN describes a PWA as an app built with web platform technologies that gives a user experience like a platform-specific app. A web app manifest describes its name, icons and how it opens. A service worker sits between the app and the network, so it can serve cached pages and data when offline and handle some background work."],["One codebase runs in the browser on every platform and can be added to the home screen. What a PWA can do varies by browser and operating system, and some device features stay native-only."]],"why":["A PWA can reach desktop and mobile users with one build and no app store review, and updates ship like a website. For many business tools, portals and internal apps that is enough. For heavy device use or app store presence, native or cross-platform apps may still win."],"example":["A field sales team needs an order-taking app on mixed phones and laptops. A PWA installs from a link, caches the product catalogue for ",{"href":"/glossary/offline-first","text":"offline use"}," and syncs orders when back online, without managing app store releases."],"inBuild":["We check the device features and platforms the client needs before choosing PWA over native, cache with a clear strategy per type of data, version the service worker carefully so users are not stuck on old code, and test install and offline flows on real devices."],"mistakes":[["A service worker that caches too much, so users keep seeing an old version."],["Assuming every device feature works the same on every platform."],["Calling a site a PWA when it has no offline behaviour at all."]],"related":[{"href":"/glossary/offline-first","label":"Offline-first","detail":"A way of building apps so they work fully without a network connection, saving changes on the device and syncing them when a connection returns."},{"href":"/glossary/cdn","label":"CDN (content delivery network)","detail":"A network of servers around the world that keeps copies of your files close to users, so pages and media load faster."},{"href":"/glossary/wcag-2-2","label":"WCAG 2.2","detail":"The version of the W3C Web Content Accessibility Guidelines published as a Recommendation on 5 October 2023, with nine new success criteria."},{"href":"/glossary/headless-commerce","label":"Headless commerce","detail":"An e-commerce setup where the shop front (the head) is built separately from the commerce engine that handles products, carts and orders, linked by APIs."},{"href":"/glossary/edge-function","label":"Edge function","detail":"A small piece of server code that runs on a CDN's servers around the world, close to the user, instead of in one central region."}],"tools":[{"href":"/tools/software-development-cost","label":"Software development cost","detail":"Free tool"}],"links":[{"href":"/software","label":"Software by industry","detail":"Systems we build per industry, with guides and tools."}],"sources":[{"title":"MDN Web Docs, Progressive web apps","url":"https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps","checkedAt":"2026-10-25"}],"legal":false,"updatedAt":"2026-10-25"}