Free tool

Web App Manifest Builder

A few fields in, a valid manifest.json out — the file that makes a site installable, colours the Android status bar and names the app on the home screen.

Shown on the install prompt and splash screen.
Under the home-screen icon. Keep to about 12 characters.
Pages outside it open in the browser.
#8b6cff
#ffffff

What manifest.json decides

A web app manifest is a short JSON file that tells Android, Chrome and any WebView that reads it how your site should behave when treated as an app rather than a page. It is what separates a bookmark from something that looks installed.

display, and the value people get wrong

ValueThe user seesUse for
standaloneStatus bar; no address bar, no tabsNearly everything
fullscreenNo system UI at allGames, video, kiosks
minimal-uiA thin back/reload stripContent sites where navigation matters
browserAn ordinary tabOpting out

fullscreen tempts and usually disappoints: hiding the clock and battery on a shop or content site annoys people, and on gesture-navigation phones it removes cues users depend on.

Scope traps

scope defines which URLs stay in the app. Set it to /shop/ and a link to /blog/ opens in the browser — sometimes intended, often a surprise. Set it too wide and external links open inside your chrome-less window with no address bar and no obvious way back. Most sites should use / and handle external links in code.

Maskable icons

Android masks home-screen icons to the launcher shape. A regular icon gets letterboxed inside a white circle — the "sticker" look that marks a converted site. An icon with "purpose": "maskable" is drawn edge to edge with the important artwork inside the central 80%. The generated manifest lists both so each platform takes what it wants; the icon set generator produces the padded artwork.

Not AndroidManifest.xml

Despite the name, the two are unrelated. manifest.json is a web standard describing your site; AndroidManifest.xml describes your app — components, permissions, entry points. A converted app has both, duplicating a little information (name, theme colour) in two formats.

For a live-URL app the web manifest still matters: the WebView reads theme_color, and browser visitors get the installable experience. For bundled content it does less — there is no install prompt for a page loaded from disk — but it costs nothing and remains useful on the web.

Where it lives

At the site root, linked from every page's <head>, ideally served as application/manifest+json. Put the theme-color meta tag in the head too — some contexts read it before the manifest has loaded.

Frequently asked questions

What is a web app manifest?

A JSON file describing how a site should behave when installed: name, icons, display mode, colours, start URL and scope. Browsers read it to offer installation and Android reads it for the status bar and splash.

Is it the same as AndroidManifest.xml?

No. manifest.json is a web standard about the site; AndroidManifest.xml is an Android file about the app's components and permissions. A converted app has both.

What does theme_color change?

The Android status bar colour while the site is open, and the tint of the entry in the app switcher. It is the single most visible line in the file.

What are maskable icons?

Icons meant to be cropped to the launcher's shape, with the artwork inside the central 80%. Without one, Android shrinks your icon inside a white circle.

Do I need this if I am building an APK?

Not strictly — the APK carries its own name, icon and theme. It still helps a live-URL app (status bar colour) and any visitor using the site in a browser.

Related tools

Ready to turn your site into an app?

Upload an HTML file or a ZIP, set your icon and name, and download a signed Android app. No Android Studio, no command line.

Open the builder