{
 "compat_features": [
  "api.CustomElementRegistry.CustomElementRegistry",
  "api.CustomElementRegistry.initialize",
  "api.Document.customElementRegistry",
  "api.Element.customElementRegistry",
  "api.HTMLTemplateElement.shadowRootCustomElementRegistry",
  "api.ShadowRoot.customElementRegistry"
 ],
 "description": "The CustomElementRegistry() constructor creates a new custom element registry that's separate from the global window.customElements registry. Creating more than one registry is useful for multiple custom elements that have the same tag name to coexist.",
 "description_html": "The <code>CustomElementRegistry()</code> constructor creates a new custom element registry that's separate from the global <code>window.customElements</code> registry. Creating more than one registry is useful for multiple custom elements that have the same tag name to coexist.",
 "group": [
  "custom-elements"
 ],
 "kind": "feature",
 "name": "Scoped custom element registries",
 "spec": [
  "https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-api",
  "https://dom.spec.whatwg.org/#element-custom-element-registry"
 ],
 "status": {
  "baseline": false,
  "by_compat_key": {
   "api.CustomElementRegistry.CustomElementRegistry": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   },
   "api.CustomElementRegistry.initialize": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   },
   "api.Document.customElementRegistry": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   },
   "api.Element.customElementRegistry": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   },
   "api.HTMLTemplateElement.shadowRootCustomElementRegistry": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   },
   "api.ShadowRoot.customElementRegistry": {
    "baseline": false,
    "support": {
     "chrome": "146",
     "chrome_android": "146",
     "edge": "146",
     "safari": "26",
     "safari_ios": "26"
    }
   }
  },
  "support": {
   "chrome": "146",
   "chrome_android": "146",
   "edge": "146",
   "safari": "26",
   "safari_ios": "26"
  }
 },
 "id": "scoped-custom-element-registries",
 "groups": [
  "custom-elements"
 ],
 "specs": [
  {
   "url": "https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-api",
   "seriesComposition": "full",
   "shortname": "html",
   "series": {
    "shortname": "html",
    "currentSpecification": "html",
    "title": "HTML",
    "shortTitle": "HTML",
    "nightlyUrl": "https://html.spec.whatwg.org/multipage/"
   },
   "nightly": {
    "url": "https://html.spec.whatwg.org/multipage/",
    "status": "Living Standard",
    "sourcePath": "source",
    "alternateUrls": [],
    "repository": "https://github.com/whatwg/html",
    "pages": [
     "https://html.spec.whatwg.org/multipage/introduction.html",
     "https://html.spec.whatwg.org/multipage/infrastructure.html",
     "https://html.spec.whatwg.org/multipage/common-microsyntaxes.html",
     "https://html.spec.whatwg.org/multipage/urls-and-fetching.html",
     "https://html.spec.whatwg.org/multipage/common-dom-interfaces.html",
     "https://html.spec.whatwg.org/multipage/structured-data.html",
     "https://html.spec.whatwg.org/multipage/dom.html",
     "https://html.spec.whatwg.org/multipage/semantics.html",
     "https://html.spec.whatwg.org/multipage/sections.html",
     "https://html.spec.whatwg.org/multipage/grouping-content.html",
     "https://html.spec.whatwg.org/multipage/text-level-semantics.html",
     "https://html.spec.whatwg.org/multipage/links.html",
     "https://html.spec.whatwg.org/multipage/edits.html",
     "https://html.spec.whatwg.org/multipage/embedded-content.html",
     "https://html.spec.whatwg.org/multipage/images.html",
     "https://html.spec.whatwg.org/multipage/iframe-embed-object.html",
     "https://html.spec.whatwg.org/multipage/media.html",
     "https://html.spec.whatwg.org/multipage/image-maps.html",
     "https://html.spec.whatwg.org/multipage/embedded-content-other.html",
     "https://html.spec.whatwg.org/multipage/tables.html",
     "https://html.spec.whatwg.org/multipage/forms.html",
     "https://html.spec.whatwg.org/multipage/input.html",
     "https://html.spec.whatwg.org/multipage/form-elements.html",
     "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html",
     "https://html.spec.whatwg.org/multipage/interactive-elements.html",
     "https://html.spec.whatwg.org/multipage/scripting.html",
     "https://html.spec.whatwg.org/multipage/canvas.html",
     "https://html.spec.whatwg.org/multipage/custom-elements.html",
     "https://html.spec.whatwg.org/multipage/semantics-other.html",
     "https://html.spec.whatwg.org/multipage/microdata.html",
     "https://html.spec.whatwg.org/multipage/interaction.html",
     "https://html.spec.whatwg.org/multipage/dnd.html",
     "https://html.spec.whatwg.org/multipage/popover.html",
     "https://html.spec.whatwg.org/multipage/browsers.html",
     "https://html.spec.whatwg.org/multipage/nav-history-apis.html",
     "https://html.spec.whatwg.org/multipage/document-sequences.html",
     "https://html.spec.whatwg.org/multipage/browsing-the-web.html",
     "https://html.spec.whatwg.org/multipage/document-lifecycle.html",
     "https://html.spec.whatwg.org/multipage/speculative-loading.html",
     "https://html.spec.whatwg.org/multipage/webappapis.html",
     "https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html",
     "https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html",
     "https://html.spec.whatwg.org/multipage/system-state.html",
     "https://html.spec.whatwg.org/multipage/imagebitmap-and-animations.html",
     "https://html.spec.whatwg.org/multipage/comms.html",
     "https://html.spec.whatwg.org/multipage/server-sent-events.html",
     "https://html.spec.whatwg.org/multipage/web-messaging.html",
     "https://html.spec.whatwg.org/multipage/workers.html",
     "https://html.spec.whatwg.org/multipage/worklets.html",
     "https://html.spec.whatwg.org/multipage/webstorage.html",
     "https://html.spec.whatwg.org/multipage/syntax.html",
     "https://html.spec.whatwg.org/multipage/parsing.html",
     "https://html.spec.whatwg.org/multipage/named-characters.html",
     "https://html.spec.whatwg.org/multipage/xhtml.html",
     "https://html.spec.whatwg.org/multipage/rendering.html",
     "https://html.spec.whatwg.org/multipage/obsolete.html",
     "https://html.spec.whatwg.org/multipage/iana.html",
     "https://html.spec.whatwg.org/multipage/indices.html",
     "https://html.spec.whatwg.org/multipage/references.html",
     "https://html.spec.whatwg.org/multipage/acknowledgements.html"
    ],
    "filename": "index.html"
   },
   "organization": "WHATWG",
   "groups": [
    {
     "name": "HTML Workstream",
     "url": "https://html.spec.whatwg.org/multipage/"
    }
   ],
   "title": "HTML",
   "source": "whatwg",
   "shortTitle": "HTML",
   "categories": [
    "browser"
   ],
   "standing": "good",
   "tests": {
    "repository": "https://github.com/web-platform-tests/wpt",
    "testPaths": [
     "close-watcher",
     "custom-elements",
     "eventsource",
     "html",
     "imagebitmap-renderingcontext",
     "import-maps",
     "navigation-api",
     "webmessaging",
     "webstorage",
     "workers",
     "worklets",
     "x-frame-options"
    ],
    "excludePaths": [
     "html/cross-origin-embedder-policy/credentialless",
     "html/dom/partial-updates/tentative",
     "html/cross-origin-embedder-policy/credentialless"
    ]
   },
   "fragment": "custom-elements-api"
  },
  {
   "url": "https://dom.spec.whatwg.org/#element-custom-element-registry",
   "seriesComposition": "full",
   "shortname": "dom",
   "series": {
    "shortname": "dom",
    "currentSpecification": "dom",
    "title": "DOM",
    "shortTitle": "DOM",
    "nightlyUrl": "https://dom.spec.whatwg.org/"
   },
   "organization": "WHATWG",
   "groups": [
    {
     "name": "DOM Workstream",
     "url": "https://dom.spec.whatwg.org/"
    }
   ],
   "nightly": {
    "url": "https://dom.spec.whatwg.org/",
    "status": "Living Standard",
    "alternateUrls": [],
    "repository": "https://github.com/whatwg/dom",
    "sourcePath": "dom.bs",
    "filename": "index.html"
   },
   "title": "DOM",
   "source": "whatwg",
   "shortTitle": "DOM",
   "categories": [
    "browser"
   ],
   "standing": "good",
   "tests": {
    "repository": "https://github.com/web-platform-tests/wpt",
    "testPaths": [
     "dom",
     "shadow-dom"
    ]
   },
   "fragment": "element-custom-element-registry"
  }
 ],
 "mdnUrls": [
  {
   "slug": "Web/API/CustomElementRegistry/CustomElementRegistry",
   "title": "CustomElementRegistry: CustomElementRegistry() constructor",
   "anchor": null,
   "url": "https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/CustomElementRegistry"
  },
  {
   "slug": "Web/API/CustomElementRegistry/initialize",
   "title": "CustomElementRegistry: initialize() method",
   "anchor": null,
   "url": "https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/initialize"
  }
 ],
 "standardPositions": [],
 "hasNegativeStandardPosition": false,
 "stateOfSurveys": [],
 "chromeUseCounters": {},
 "interop": [
  {
   "year": 2026,
   "label": "interop-2026-scoped-custom-element-registries",
   "url": "https://wpt.fyi/interop-2026?feature=interop-2026-scoped-custom-element-registries"
  }
 ],
 "wpt": {
  "url": "https://wpt.fyi/results?q=feature:scoped-custom-element-registries"
 },
 "developerSignals": {
  "url": "https://github.com/web-platform-dx/developer-signals/issues/364",
  "votes": 29
 },
 "bugs": {
  "chrome": [
   "https://issues.chromium.org/issues/40826514"
  ],
  "firefox": [
   "https://bugzil.la/1874414"
  ]
 },
 "useCases": [
  {
   "description": "We're running a micro frontend architecture with parts of the page composed from different teams' apps at runtime. The parts are independently deployed, and isolated today using a declarative shadow DOM boundary.\n\nWe also have a shared design system with a web components base. Since every part of the micro frontend shares the global custom element registry, to update the design system when there are breaking changes requires a huge coordination effort that scoped custom element registries would solve.",
   "url": "https://github.com/web-platform-dx/developer-signals/issues/364#issuecomment-3646159954"
  },
  {
   "description": "I have the same use case as above at a cross organizational level at Adobe. It's a major headache not having Scoped Custom Element Registries.\n\nBut also another use case within a single application that can create dependencies in multiple different versions of a design system within the same app for reasons of reproducibility (consistent reproduction of an old ux even though a new version is available).",
   "url": "https://github.com/web-platform-dx/developer-signals/issues/364#issuecomment-3952608107"
  }
 ],
 "baselineLowDateAsObject": null,
 "baselineHighDateAsObject": null,
 "blockedOn": "Firefox",
 "blockedSince": "March 2026",
 "monthsBlocked": 7
}