The WebXR Device API

Chrome Hardware Support

Chrome supports WebXR on a variety of platforms and hardware. This page details the supported devices and required configuration (if any) to use them.

Chrome Compatibility Table

Device OS Runtime Supported Session Modes WebXR Support
Oculus,
SteamVR,
Windows Mixed Reality,
OpenXR compatible HMDs
Windows OpenXR immersive-vr Enabled in Chrome 81+
Cardboard
Daydream View
Lenovo Mirage Solo
Android Google VR immersive-vr Enabled in Chrome 79+
ARCore-compatible mobile devices Android ARCore immersive-ar Enabled in Chrome 81+
Android XR devices Android OpenXR immersive-vr, immersive-ar Enabled in Chrome 129+

Getting a compatible OpenXR Desktop runtime

Chrome uses OpenXR to interface with VR headsets on Windows. In order to work with Chrome the device's OpenXR runtime must support the XR_EXT_win32_appcontainer_compatible extension, which ensures that the runtime can work securely with Chrome's sandboxing.

See below to learn more about enabling OpenXR support for several popular devices.

Windows Mixed Reality

A compatible OpenXR runtime for Windows Mixed Reality ships with the Windows 10 May 2019 Update (1903) or later.

SteamVR (HTC Vive, Valve Index, etc)

A compatible OpenXR runtime for SteamVR ships with SteamVR 1.16.8 or later.

Oculus (Rift/Rift S/Quest via Oculus Link)

A compatible OpenXR runtime for Oculus ships with v19 or later.

Unsandboxed OpenXR

To test Chrome with OpenXR runtimes that do not implement the XR_EXT_win32_appcontainer_compatible extension, WebXR sandboxing must be disabled.

It is not recommended that you use Chrome with the following flags for daily browsing, as it disables certain security measures around Chrome interaction with VR hardware!

To disable Chrome's WebXR sandboxing, use the following command line option:

--disable-features=XRSandbox

Getting a compatible OpenXR Android runtime

Note that for security reasons, Chrome ignores the Android ContentProvider authorities described in the OpenXR Spec

The OpenXR Reference loader also does not provide support for setting the runtime via the environment variable at this time.