/Web APIs


The GravitySensor interface of the Sensor APIs provides on each reading the gravity applied to the device along all three axes.

To use this sensor, the user must grant permission to the 'accelerometer' device sensor through the Permissions API. In addition, this feature may be blocked by a Permissions Policy set on your server.

EventTarget Sensor Accelerometer GravitySensor



Creates a new GravitySensor object.

Instance properties

Inherits properties from its ancestors, Accelerometer, Sensor, and EventTarget.

Instance methods

GravitySensor doesn't have own methods. However, it inherits methods from its parent interfaces, Sensor and EventTarget.


GravitySensor doesn't have own events. However, it inherits events from its parent interface, Sensor.


Gravity is typically read in the reading event callback. In the example below this occurs sixty times a second.

let gravitySensor = new GravitySensor({ frequency: 60 });

gravitySensor.addEventListener("reading", (e) => {
  console.log(`Gravity along the X-axis ${gravitySensor.x}`);
  console.log(`Gravity along the Y-axis ${gravitySensor.y}`);
  console.log(`Gravity along the Z-axis ${gravitySensor.z}`);



Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
GravitySensor 91 91 No No 77 No 91 91 No 64 No 16.0
GravitySensor 91 91 No No 77 No 91 91 No 64 No 16.0

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.