Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The XRSpace interface of the WebXR Device API is an abstract interface providing a common basis for every class which represents a virtual coordinate system within the virtual world, in which its origin corresponds to a physical location. Spatial data in WebXR is always expressed relative to an object based upon one of the descendant interfaces of XRSpace, at the time at which a given XRFrame takes place.

Numeric values such as pose positions are thus coordinates in the corresponding XRSpace, relative to that space's origin.

Note: The XRSpace interface is never used directly; instead, all spaces are created using one of the interfaces based on XRSpace. At this time, those are XRReferenceSpace, XRBoundedReferenceSpace, and XRJointSpace.

EventTarget XRSpace

Interfaces based on XRSpace

Below is a list of interfaces based on the XRSpace interface.

XRBoundedReferenceSpace Secure context

Represents a reference space which may move within a region of space whose borders are defined by an array of points laid out in clockwise order along the floor to define the passable region of the space. The origin of an XRBoundedReferenceSpace is always at floor level, with its X and Z coordinates typically defaulting to a location near the room's center.

XRReferenceSpace Secure context

Represents a reference space which is typically expected to remain static for the duration of the XRSession. While objects may move within the space, the space itself remains fixed in place. There are exceptions to this static nature; most commonly, an XRReferenceSpace may move in order to adjust based on reconfiguration of the user's headset or other motion-sensitive device.


Represents the space of an XRHand joint.

Instance properties

The XRSpace interface defines no properties of its own; however, it does inherit the properties of its parent interface, EventTarget.

Instance methods

The XRSpace interface provides no methods of its own. However, it inherits the methods of EventTarget, its parent interface.


WebXR Device API
# xrspace-interface

Browser compatibility

BCD tables only load in the browser