# PWAs on Windows

> How Microsoft Edge installs a PWA on Windows and integrates it into the Taskbar, Start menu, and Alt+Tab switching, plus the FSLogix logout limitation.

On Windows 10 and 11, Microsoft Edge installs a PWA from an address-bar icon or a menu
item, and the installed app then runs like other Windows apps: it has its own window with
a title-bar app menu, appears in the Taskbar, the Start menu, and Alt+Tab, and is listed
with the rest of the installed apps in Windows Settings.

## How it works

Microsoft documents the user-facing flow on Microsoft Learn
([Use Progressive Web Apps in Microsoft Edge](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps/ux),
dated 2025-10-15) and on Microsoft Support; the labels below are quoted from those pages
(English UI).

### Two install paths in Edge

When Edge judges a site installable, an **App available** icon appears in the address bar;
clicking it opens a flyout with an **Install** button. Any site, installable or not, can be
installed through **Settings and more (…) > More tools > Apps > Install this site as an
app**. After installation a post-install dialog offers a **Pin to Start** checkbox and an
**Auto-start on device login** checkbox, and the app opens in its own window. Many PWAs are
also listed in the Microsoft Store, where the **Get** button installs them without opening
Edge.

### The installed window

An installed PWA's window has a title bar with a **Settings and more (…)** button that
opens the **App info** menu: the app icon, name, and publisher (the server's domain), the
commands **Pin to taskbar**, **Pin to Start**, and **App settings**, and the submenus
**Privacy** (including the number of cookies in use), **Extensions**, and **More tools**.
Shortcuts declared in the manifest appear in the Taskbar icon's right-click menu.

### Managing and uninstalling

Installed apps are listed at `edge://apps`, where **Details** on a card exposes the
**Auto-start on device login** toggle, **Pin to taskbar**, **Pin to Start**, **Create
Desktop shortcut**, and **Uninstall**; uninstalling asks whether to delete the app's
history and data as well. The same apps appear in Windows Settings under **Add or remove
programs** (shown as **Apps & features** on older builds), so an administrator can remove
them like any other app.

### The FSLogix limitation

Microsoft lists one known restriction: PWAs are not supported in FSLogix environments. The
install succeeds, but after the user logs off and back on the installed PWA is gone.
Virtual-desktop deployments that rely on a persistent Windows install should warn users or
distribute through the Microsoft Store instead.

## Examples

The checks below use the standard `display-mode` media feature, which is not Edge-specific;
Edge is where the installed window appears on Windows.

### Skipping the install pitch inside the installed window

`(display-mode: standalone)` matches when the page runs in the installed window and not
in a browser tab.

```js
function isStandaloneDisplayMode() {
  if (typeof window.matchMedia !== 'function') {
    return false; // no matchMedia: treat as an ordinary tab
  }
  return window.matchMedia('(display-mode: standalone)').matches;
}

if (isStandaloneDisplayMode()) {
  document.getElementById('install-cta').hidden = true;
} else {
  document.getElementById('install-cta').hidden = false;
}
```

The fallback returns `false` so that an engine without `matchMedia` sees the install
call-to-action rather than an error.

### Reacting when the user switches between tab and app

The same origin can be open in the installed window and in a tab at once, and a
`MediaQueryList` reports a change if the presentation of a page changes, so the mode is
worth watching rather than reading once.

```js
const standalone = window.matchMedia('(display-mode: standalone)');

function applyMode(matches) {
  document.body.classList.toggle('installed', matches);
}

applyMode(standalone.matches);
standalone.addEventListener('change', (event) => applyMode(event.matches));
```

Use the class for layout only (hiding a duplicate title, tightening padding under the
title bar); features should stay identical in both modes.

## Observed behaviour

The App info menu is the quickest way to confirm, from inside the window, that a page is
running as an installed PWA and which origin it was installed from.

:::observed
Installed PWA in Microsoft Edge on Windows 11 (English UI): the **Settings and more (…)**
button in the window's title bar opens an "App info" menu showing the app icon, name, and
publisher domain, the commands "Pin to taskbar", "Pin to Start", and "App settings", and a
"Privacy" submenu that lists the number of cookies in use. Documented on Microsoft Learn,
[Use Progressive Web Apps in Microsoft Edge](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps/ux)
(2025-10-15).
:::

The publisher line shows the origin the app was installed from, which is the quickest check
that a staging and a production install are not being confused on a test machine.

## See also

- [PWAs on Microsoft Edge (sidebar, store)](/reference/platforms/edge/)
- [Desktop install](/reference/installation/desktop-install/)
- [Install shortcuts](/reference/installation/install-shortcuts/)
- [Use Progressive Web Apps in Microsoft Edge](https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps/ux) (learn.microsoft.com)
- [Install, manage, or uninstall apps in Microsoft Edge](https://support.microsoft.com/en-us/edge/install-manage-or-uninstall-apps-in-microsoft-edge) (support.microsoft.com)