Manifest · Manifest member
Manifest description: optional app-store text
Published Updated
In one line: per MDN, the description manifest member “is used to explain the
core features or functionality of your web application,” its value “is used in app
stores and other distribution platforms to help users understand what your app
does,” and it also “provides an accessible description of your installed app.”
Where it is supported
Section titled “Where it is supported”Per MDN’s browser-compat-data, Chrome has supported description since version 88.
Firefox and Safari do not implement the member at all, and on Firefox for Android
specifically the property parses without error but has no effect.
How to use it
Section titled “How to use it”{ "name": "My App", "description": "Track your habits and build streaks, even offline."}How to detect it at runtime
Section titled “How to detect it at runtime”MDN states that description “is supplementary metadata that does not affect the
app’s runtime behavior or how browsers present the app.” Neither MDN nor its
compat data describes a way for a script to query whether the current browser
acts on this member — reading the page’s own manifest only confirms what the site
declared, not whether the browser or an app store will surface it:
async function manifestDeclaresDescription() { if (typeof document === 'undefined') { // Fallback: no manifest link element available in this context. return false; } const link = document.querySelector('link[rel="manifest"]'); if (!link) return false; const manifest = await fetch(link.href).then((r) => r.json()); return typeof manifest.description === 'string' && manifest.description.length > 0;}Treat this only as a deployment check (did the manifest ship a non-empty
description?), not as a support check — it cannot tell you whether the browser or
an app store will do anything with the text.
Practical checklist
Section titled “Practical checklist”- Per MDN’s browser-compat-data, Firefox does not support
descriptionat all — don’t rely on it being surfaced there. - MDN’s data notes that on Firefox for Android specifically, the property parses without error but has no effect, so validation alone won’t reveal that it is being ignored.
- Safari does not implement
descriptioneither, per the same browser-compat-data — see the table above for the full per-browser picture. - MDN notes
descriptionis optional and that “app stores may not use this text when presenting your app,” so don’t treat it as your only channel for app-store copy you control.
Where to go next
Section titled “Where to go next”- Web App Manifest: related_applications / prefer_related_applications support
- Manifest scope: your PWA’s installation boundary
Specifications
| Specification | Status |
|---|---|
| Web App Manifest: description | W3C draft |
- Legend
- Yes
- Partial
- Flag
- No
- Unknown
| Browser / Platform | Support | Versions | Confidence | Source | Notes |
|---|---|---|---|---|---|
| Chrome (Desktop) | Yes | 88 | high | source | — |
| Chrome (Android) | Yes | 88 | high | source | 1 |
| Edge (Desktop) | Yes | 88 | high | source | 2 |
| Firefox (Desktop) | No | — | high | source | 3 |
| Firefox (Android) | No | — | high | source | 4 |
| Safari (macOS) | No | — | high | source | 5 |
| Safari (iOS) | No | — | high | source | 67 |
| Samsung Internet | Yes | 15.0 | high | source | 8 |
| WebView (Android) | Yes | 88 | high | source | 9 |
- Derived by browser-compat-data mirroring from Chrome.
- Derived by browser-compat-data mirroring from Chrome.
- No Firefox support is recorded in browser-compat-data.
- The property parses, but has no effect.
- No Safari support is recorded in browser-compat-data.
- No Safari on iOS support is recorded in browser-compat-data.
- Derived by browser-compat-data mirroring from Safari.
- Derived by browser-compat-data mirroring from Chrome Android.
- Derived by browser-compat-data mirroring from Chrome Android.