Develop

WebXR overview

Updated: May 11, 2026
This section contains information about developing WebXR experiences for Browser.
WebXR Device API lets you develop immersive VR experiences on the web, and is supported in multiple browsers. For more information, visit the WebXR home page: https://immersiveweb.dev/
The WebXR explainer provides some background and technical information about the design and usage of the WebXR Device API. https://immersive-web.github.io/webxr/explainer.html

WebXR vs native development

WebXR provides a lower barrier to entry compared to native development, but comes with some limitations. The following table summarizes the key differences to help you choose the right approach for your project.
FeatureWebXRNative (Unity, Unreal, Native SDK)
Distribution
Web URL or PWA via Meta Horizon Store
Meta Horizon Store
Setup required
Browser only, no SDK installation
Engine + Meta XR SDK setup
Rendering performance
Limited by browser overhead
Full GPU access, higher performance ceiling
Hand tracking
Supported via WebXR Hand Input
Full hand tracking with gestures
Passthrough / MR
Supported via WebXR Mixed Reality
Full access to passthrough APIs
Spatial anchors
Not supported
Supported
Scene understanding
Not supported
Full Scene API access
Depth API
Not supported
Supported (Quest 3 and later)
Platform SDK features
Limited (Digital Goods API for IAP)
Full access (achievements, leaderboards, social)
Offline support
Limited (requires service worker)
Full offline capability
Graphics APIs
WebGL 2.0
Vulkan, OpenGL ES
Multi-threaded rendering
Not supported
Supported
File system access
Sandboxed
Full access
WebXR is a good choice for lightweight experiences, prototypes, and content that benefits from web-based distribution. For performance-intensive apps, apps requiring deep platform integration, or apps that use spatial computing features like Scene API or Depth API, native development is recommended.

Topic guide

TopicDescription
Tools and guidance on how the WebXR development process works
Pointers to general VR best practices that are relevant to WebXR
How to use compositor layers for high-quality, high-performance display of media in WebXR
How to use hand-tracking in a WebXR experience
Describes Browser support for WebXR Mixed Reality services
How to use the system keyboard integration in WebXR with Browser
Guidance to ensure that your WebXR experience runs smoothly on Browser
Describes how to migrate legacy WebVR content to WebXR enabled
Describes how to distribute your WebXR app on the Meta Horizon Store