PWA examples: 578 tested, 243 kept working with the network off
Of the 578 installable web apps catalogued here, 243 keep working with the network disconnected — 42%. The rest install, show an icon, open in their own window, and then show nothing useful offline. So a PWA example is only an example of the format; whether it delivers the format's defining promise is a separate question, and it has to be tested app by app. The 243 that pass span every category: development tools, utilities, games, productivity, education.
What we tested, and how
Every app in this catalogue is opened in a headless Chromium. We wait for the service worker to activate, disconnect the network, reload the page, and record what is still served. No manual judgement enters the result: either the app renders something usable with no connection, or it does not.
Across 578 entries, 243 survive that test and 335 do not. The 42% figure is worth holding onto, because it is the gap between what the format promises and what shipping apps deliver — and it is invisible from the outside. An app that fails offline installs normally, shows its icon, opens in its own window, and looks like a success in every check a developer runs while connected.
Where the working examples are
The apps that pass are not toys. Among the 243: **Excalidraw** (whiteboard, drawings kept locally), **Photopea** (opens and saves PSD files entirely in the browser), **CryptPad** (encrypted documents), **Lichess** (chess, playable offline), **AudioMass** (waveform audio editing), **Wormhole** (encrypted file transfer). Real software, installed in one click, with no app-store commission and no review queue between a fix and its users.
By category, the working set breaks down as: 47 development tools, 45 utilities, 26 games, 25 productivity apps, 17 education, 15 health and fitness, 13 news and reading, 13 finance, 9 music and audio. Every category has working examples; none is entirely reliable.
Why so many fail
Because the failing state is the one nobody occupies during development. You build online, you test online, the install prompt appears, every signal says it worked. The blank screen exists only for someone who installed the app, opened it later, and had no connection. That person does not file a bug — they delete the icon.
The tooling reinforces the mistake. A registered service worker counts as a pass in most audits, but a worker with an empty cache is indistinguishable from a working one until the network is actually cut. We wrote about that specific failure, because it is by far the most common one we see.
How to check any example yourself
Install the app. Turn off wifi and mobile data — actually off, not airplane mode with wifi still on. Open the app from its icon, not from a browser tab that may still hold the page in memory. If you see the interface and can do something with it, it passes.
That takes about thirty seconds per app and it is the only test that matters. Everything else — the manifest, the Lighthouse score, the install prompt — measures whether the app *claims* to work offline. Only cutting the network measures whether it does.
Frequently asked
Technically yes — the term covers installability and a service worker, not a guarantee about the cache. But if you are choosing an app because you expect it to work on a plane or in a basement, the label alone will not tell you. 335 of the 578 apps here carry it and fail that expectation.
Development tools (47), utilities (45), games (26) and productivity (25) lead the working set. That ordering partly reflects what gets built as a web app in the first place, not which categories are best suited to offline use.
Installability differs by platform: iOS requires adding to the home screen from Safari's share menu and does not show an install prompt. The offline behaviour we measured is a property of the app's service worker and cache, so it carries across platforms — but the installation step does not, and that is where most iOS users give up.
Apps mentioned
Keep reading
592+ Progressive Web Apps, each checked by hand — installable from your browser, no app store.
Browse the directory →