All articles
· 6 min read

PWA storage limits: what you actually get in 2026

IndexedDB, Cache API and OPFS quotas across Chrome, Safari, Firefox and Edge — with the eviction rules that decide what survives.

TI
The InstantPWA team
Product & engineering

Storage quotas are the most misquoted numbers on the web. The truth in 2026 is generous everywhere — with an asterisk on Safari. Here’s the current shape.

Chrome, Edge, Opera (Chromium)

Total quota per origin: up to 60% of the device’s total disk. Eviction: least-recently-used when the browser is under pressure. Storage backends counted: IndexedDB, Cache API, File System Access (OPFS), Service Worker registrations.

Safari (iOS + macOS)

Cap per origin: ~1 GB, negotiable up to more with user prompt (rare). Eviction: 7-day inactivity clears IndexedDB and Cache API for non-installed sites. Installed PWAs skip the 7-day rule.

Firefox

Group limit: 20% of disk shared across an eTLD+1 group. Per-origin: 2 GB soft cap. Eviction: LRU under pressure.

Request "persistent"

const granted = await navigator.storage.persist();
// true = your quota won’t be evicted automatically

Chrome auto-grants for installed PWAs. Firefox prompts. Safari doesn’t expose the API but installed PWAs get equivalent treatment.

Check available quota

const { quota, usage } = await navigator.storage.estimate();
console.log(`${(usage / quota * 100).toFixed(1)}% used`);

Design implications

  • Don’t assume any specific limit — check estimate() and degrade.
  • For anything the user would lose sleep over, sync to the server before caching locally.
  • OPFS is the right home for large binary blobs (video, audio, files) — not IndexedDB.

Ship your install prompt in 60 seconds

InstantPWA is one line of code. Free forever for one widget, no card required.

Get started free