Glossary

Definition

background_color (manifest field)

Short definition

background_color is a manifest field, for example "background_color": "#ffffff", used only for the auto-generated splash screen Android and Chromium OS show between tapping the app icon and the first paint. It should match your page's actual background to avoid a visible colour flash.

Reviewed July 22, 2026

Chrome builds the splash screen automatically from name, an icon and background_color — there is no way to supply a custom splash image through the manifest spec itself.

A mismatch between background_color and the real CSS background of the loaded page causes a brief but noticeable flash, which is a common visual-polish issue flagged in Lighthouse PWA reviews.

iOS does not use background_color for its home-screen launch splash; Safari instead infers a splash appearance from the page's own background and, optionally, apple-touch-startup-image links (largely legacy and rarely needed since iOS 15 improved auto-splash generation).

Because the field only ever applies for a fraction of a second during cold launch, it has no effect on the app once content has painted, unlike theme_color which persists in the status bar.

Related terms
theme_color (manifest field)
theme_color is a manifest field, e.g. "theme_color": "#0f172a", that tints the Android status bar, the task-switcher card header and, on some platforms, the browser toolbar while the site is open. It accepts any valid CSS colour value.
Web App Manifest
A Web App Manifest is a JSON file (usually manifest.webmanifest) that declares your app's name, icons, start URL, theme colour and display mode. The browser reads it to render the install prompt and the home-screen icon.
icons (manifest field)
icons is a manifest array of objects like {"src": "/icon-512.png", "sizes": "512x512", "type": "image/png"}. Chromium requires at least a 192x192 and a 512x512 PNG for install eligibility; the browser picks the closest size for each surface (home screen, splash screen, task switcher) rather than scaling a single image.
Maskable icons
A maskable icon is declared with "purpose": "maskable" in the manifest icons array and must fill the entire square canvas with no transparent padding, keeping important content inside the central 80% "safe zone". Android then applies its own mask shape (circle, squircle, rounded square) on top without cutting off the logo.
shortcuts (manifest field)
shortcuts is a manifest array of up to (practically) four entries, each with name, url and optional icons, that appear when a user long-presses the installed app icon on Android or right-clicks it on Windows/ChromeOS. Example: {"name": "New order", "url": "/orders/new", "icons": [{"src": "/shortcut-new.png", "sizes": "96x96"}]}.
screenshots (manifest field)
screenshots is a manifest array such as [{"src": "/shots/home.png", "sizes": "1080x1920", "type": "image/png", "form_factor": "narrow"}] used to render a richer install UI with app previews, similar to a Play Store listing, instead of the plain one-line install banner.