The WebXR Gamepad Module defines how the Gamepad API integrates with WebXR to communicate the state of various physical inputs (such as buttons, touch pads, and triggers) of an XRInputSource. Previously the Gamepad API was used in conjunction with the deprecated WebVR API, and was adopted by WebXR with additional ergonomic improvements to support it's input needs. It is being shipped as a module rather than part of the WebXR core API to allow it to evolve more flexibly.


This API enables developers to address VR controllers by understanding and responding to the various buttons and other physical inputs as they differ from controller to controller. Web developers will be able to make their sites respond reasonably and as-desired from interactions with various controllers' buttons/touchpads/triggers thanks to this API.




Specification link

Specification being incubated in a Community Group

Status in Chromium


Enabled by default (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

  • In development
  • No signal
  • No signals



For more information on the state of WebXR in Chrome, reference this document:

Search tags

XR, VR, Virtual Reality, Gamepad,

Last updated on 2021-12-13