Home / Blog / W3C's Manifest Working Draft Formalizes App Origin Migration
Web Standards
W3C's Manifest Working Draft Formalizes App Origin Migration
The November 6 Web App Manifest working draft folds the Chromium-shipped migrate_from and migrate_to fields into the spec itself — the first standards-track answer to "how do installed PWAs move domains without losing their users."
The W3C published a new Working Draft of the Web Application Manifest specification on November 6, 2026, and the editors' commit log on the spec's GitHub repository shows active edits around that date reshaping how manifest text members are defined. Buried in the same draft cycle is something more consequential for anyone who's ever had to rebrand a product or move it to a new domain: migrate_from and migrate_to, two manifest members that let an installed PWA signal a origin change to the browser and carry its install, icon, and user data across without forcing a fresh install. The pattern already ships in Chromium as a WICG incubation; this draft is the spec starting to absorb it as a first-class manifest feature rather than a browser-specific extra. Teams that plan a relaunch under a new domain — the kind of decision that usually means rebuilding the product's foundations rather than patching the old one, which is exactly where MVP development services earn their keep — now have a standards path for carrying installed users with them instead of starting their install base from zero.
TL;DR: The November 6, 2026 Web App Manifest Working Draft and its active GitHub edit history track the standards absorption of migrate_from and migrate_to — manifest fields that tell a browser an installed PWA has a new home, so the existing install, icon position, and permissions carry over automatically instead of requiring users to discover and reinstall under the new domain.
What's actually changing in the draft
Per the W3C's own published draft at w3.org/TR/appmanifest, the current Working Draft is dated 06 November 2026 and continues the spec's pattern of folding previously browser-specific behavior into normative text — the same draft cycle that already formalized the internationalization appendix and clarified how manifest image resources are fetched. The origin-migration fields themselves started life in the WICG's manifest-incubations repository, not the core spec, and migrate_from/migrate_to are still catalogued there as an incubation rather than a Candidate Recommendation feature. What the November 6 draft and the editors' recent commits represent is the on-ramp: the core manifest spec's maintainers are actively restructuring adjacent members (including how localizable and text-valued fields are defined) in ways that set up exactly this kind of field for eventual promotion out of incubation.
How migrate_from and migrate_to actually work
The mechanics, as documented in Chrome's own developer guidance for migrating an installed web app's origin, split responsibility between the two origins involved in a move:
migrate_from — added to the manifest of the new application. It lists the old origin(s) being migrated from. For the browser to act on it, the manifest must also declare an explicit id member, since that's what lets the browser recognize the new app as a continuation of the old one rather than a separate install.
migrate_to — added to the manifest of the old origin, pointing forward to the new one. This is the proactive half: it lets the old app trigger the migration flow immediately, rather than waiting for a user to stumble onto the new domain on their own and have the browser reconcile things retroactively.
The old origin also publishes a .well-known association file confirming the relationship, so a malicious site can't simply claim migrate_from on someone else's install base and hijack it.
Done correctly, a user who already has the old PWA installed sees their home-screen icon, badge count, and granted permissions (notifications, in particular) carry over to the new origin without a fresh install prompt or a re-grant dialog.
Why this gap existed until now
Before any of this, an installed PWA was permanently tied to the origin it was installed from. Rebrand the product, move it to a new domain for a product split, or consolidate two apps under one domain, and every existing install became dead weight — it kept working, pointed at content that might now redirect or 404, and gave the browser no signal that anything had changed. The practical fix teams reached for was a redirect at the HTTP layer, which does nothing for an already-installed PWA running as a standalone window with no browser chrome to show a redirect notice in. Native apps have had origin-equivalent migration tooling (App Store transfer, package ID aliasing) for years; the web platform's answer only started shipping in Chromium in 2026, and only now is it showing up as draft text in the core manifest spec rather than a WICG-only extra.
What this means for developers
This is Chromium-only today. The fields work in Chrome and Chromium-based browsers because that's where the WICG incubation shipped; Firefox and Safari have made no public implementation commitment, so treat any origin migration as a Chrome-first fallback path, not a universal guarantee, until the spec moves further than Working Draft.
An explicit id is now a prerequisite, not a nice-to-have. If your manifest has never set id explicitly, the browser falls back to deriving one from start_url — which breaks the identity match migrate_from relies on the moment your start_url changes as part of the same relaunch. Set id explicitly well before you need to migrate anything.
Plan the .well-known association file alongside the manifest change, not after. Browsers verify the relationship bidirectionally, and a missing or malformed association file is a silent failure mode — the migration simply doesn't trigger, with nothing in the console pointing at why.
This doesn't replace a proper relaunch plan. It carries over the installed-app shell and permissions; it does nothing for your SEO signals, your service worker's cache, or any server-side redirects you still need for the non-installed, browser-tab majority of your traffic.
When does this ship / timeline
The underlying fields are already live in Chromium today, shipped via the WICG incubation rather than a finished spec. The core manifest Working Draft dated November 6, 2026 doesn't yet contain normative migrate_from/migrate_to text in the published document, but the active edit cadence on the spec's GitHub repository around that date signals the editors are mid-restructure of adjacent members in a way that typically precedes an incubated feature's promotion. There's no published target date for that promotion, and no signal yet from Firefox or Safari on whether they'll implement the incubation at all. Builders shipping an origin migration now should treat it as a Chrome capability with a possible, not promised, path to becoming cross-browser spec text.