Define an optional id field in app manifest that's used to globally identify the web app. If the id is not specified, start_url will be used as the default id.


The appmanifest spec doesn’t explicitly define what uniquely identifies a PWA. Currently, on the desktop versions of Chromium-based browsers and Firefox on Android, PWAs are uniquely identified by app's start_url and Android Chromium-based browsers use manifest_url instead. This is confusing to developers. Also it made developers unable to change their start_url and manifest_url.Having a stable id allows apps to update other metadata like start_url and manifest_url, and have a consistent way to reference apps across browser platforms, PWA stores and other external entities.This feature tracks the launch process for implementation on the desktop side, as the Android implementation will be done with a different timeline. They will both follow the same specification.



Specification link

Specification currently under development in a Working Group

Status in Chromium


Enabled by default (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.


Intent to Prototype url

Intent to Prototype thread

Last updated on 2022-05-14