Skip to main content

Is My Accelerometer Working?

Start the test and tilt your device to see real-time acceleration values (X, Y, Z) in m/s squared. A ball inside a circle responds to gravity, showing how your device senses motion.

This test reads 3-axis acceleration data (X, Y, Z) from the DeviceMotionEvent API, measuring g-force in m/s² with a visual ball-in-circle indicator.

At rest on a flat surface, the Z-axis reads approximately 9.8 m/s² (Earth's gravity); the sensor range is typically ±16g.

Sensor access is required to run this test.

What Do Your Results Mean?

ResultRangeMeaning
GoodZ ≈ 9.8 m/s² at rest, all axes respond to tiltYour accelerometer is working correctly. The ball tracks device tilt smoothly and values change in real time.
WarningValues are noisy or drift when stationarySome sensor noise is normal. Excessive drift may indicate a calibration issue — restart your device to recalibrate.
BadAll values stay at zero or no data receivedThe sensor may be unsupported, disabled, or permission was denied. On iOS 13+, tap Start to trigger the permission prompt.

Common Issues and How to Fix Them

All acceleration values are zero

On iOS 13+, the page must call DeviceMotionEvent.requestPermission() after a user tap. Tap the Start button and grant sensor permission when prompted.

Test works on phone but not on desktop

Most desktop computers lack an accelerometer. This test is designed for phones and tablets with built-in motion sensors.

Related Tools

Frequently Asked Questions

How do I test my phone's accelerometer?

Tap Start Test, then tilt or shake your device. The ball moves in response to gravity and motion. X/Y/Z values update in real time. At rest, Z should read approximately 9.8 m/s squared (gravity).

What do the X, Y, and Z values mean?

X is lateral acceleration (left-right tilt), Y is vertical acceleration (forward-back tilt), and Z is acceleration along the screen normal. At rest on a flat surface, Z equals roughly 9.8.

Why does the test ask for sensor permission?

iOS 13+ requires explicit user consent for motion sensor access. Android browsers typically allow access by default without a permission prompt.

Is any data uploaded during the test?

No. The DeviceMotion API processes all acceleration data locally on your device. No server communication occurs.