Help centre

Answer

What are the criteria for "Add to Home Screen" to appear?

Short answer

Chromium browsers offer "Add to Home Screen" once a site is served over HTTPS, links a manifest with at least a name, a 192px and 512px icon, a start_url and a standalone/fullscreen/minimal-ui display mode, and has registered a service worker with a fetch event handler. Some engagement (visiting the site more than once, with time between visits) is also typically required before the automatic prompt fires.

By InstantPWA engineering·Reviewed July 25, 2026

The technical checklist

HTTPS, valid manifest fields, registered service worker — verifiable instantly in DevTools → Application → Manifest, which lists any missing criterion.

The engagement heuristic

Chrome does not prompt on the very first visit; it wants signs of a returning, engaged user before offering install, to avoid prompt fatigue.

iOS has no automatic prompt

iOS never fires an automatic install prompt — users must always use the manual Share → Add to Home Screen flow regardless of criteria.

Related
Why is my PWA install prompt not showing?
Chrome shows the install prompt only when the site passes strict installability criteria: HTTPS, a valid manifest with name, icons and start_url, a registered service worker with a fetch handler, and the user has not previously dismissed the prompt. Any one of these missing is enough to block the prompt entirely.
What are the requirements for the Chrome install prompt?
Chrome fires beforeinstallprompt when the site is served over HTTPS, links a valid manifest with name, start_url and 192px + 512px icons, registers a service worker with a fetch handler, and passes a user-engagement heuristic (typically one interaction and ~30 seconds of use). Any failing criterion silently blocks the prompt.
How does a PWA splash screen work?
On Android, Chromium automatically generates a splash screen for an installed PWA using the manifest’s name, background_color, theme_color and the largest available icon — you do not draw it manually. It appears briefly while the app’s first paint loads after the user taps the icon. iOS Safari does not generate one automatically and requires custom <link rel="apple-touch-startup-image"> tags per device size.
How do you debug a service worker?
Open Chrome DevTools → Application tab → Service Workers panel. It shows the registered worker’s status (activated, waiting, redundant), lets you check "Update on reload" to force a fresh install every load, simulate offline mode, and unregister a stuck worker. Console logs from inside the worker appear in the main console when you select the worker’s context from the dropdown.
What is the Cache Storage API?
The Cache Storage API is a browser-native key-value store for Request/Response object pairs, accessible from both a service worker and the page via the global caches object. It is the primary mechanism PWAs use to store network responses — HTML, CSS, JS, images, API JSON — so they can be served offline or instantly on repeat visits.