This API is an extension to the WebXR Device API that provides a way to indicate to the underlying XR system that a 3D pose is meant to be kept up to date. Tracked poses may be arbitrary or attached to real world geometry. In current AR systems, poses evolve over time as the system understands more of the real world that surrounds it. As the system's understanding evolves, anchors enable the application to update poses of virtual objects so that they maintain their relationship to real world.
AR systems provide a way to know an estimation of a device pose (position and orientation) in the real world with high accuracy. These systems evolve the accuracy of the pose as time goes by and as more information about the real world is provided. These changes in the estimation of the pose of the device are not usually transmitted to the application level. Instead, AR systems provide a way for the app to indicate poses that are relevant for the app (e.g., where virtual objects are placed) and let the system handle a way to make corrections to those poses as the device’s main pose is updated. As AR systems do not expose the pose changes directly and instead provide notifications by these anchoring mechanisms, web apps also need to be able to specify poses to be updated by the system. Without anchors, virtual objects placed in reference to the real world could drift from their reference position performing unexpected jumps of position. While this may not be relevant for all experiences, it is best if developers are in the habit of always using anchors to provide the best experience for users across clients and use cases.
Specification being incubated in a Community Group
Status in Chromium
In developer trial (Behind a flag)
Consensus & Standardization
Intent to Prototype urlIntent to Prototype thread
Search tagsAR, XR,
Last updated on 2021-06-28