How to check your controller battery
Connect your DualSense, DualShock 4, or Nintendo Switch Pro controller to your computer via USB or Bluetooth, open this page in Chrome or Edge, and click Connect via WebHID to read the live battery telemetry.
Most operating systems only show a generic battery icon with 3 bars. This diagnostic tool queries the controller's internal power management IC directly over USB or Bluetooth HID, extracting the exact percentage value, charging status, and cable connection type without requiring third-party drivers.
Which controllers report battery level
Sony DualSense (PS5), DualShock 4 (PS4), and Nintendo Switch Pro controllers expose granular battery capacity registers over HID. Standard Xbox wireless controllers do not expose numerical percentages to web browsers.
Sony and Nintendo gamepads utilize standardized HID input report packets (such as DualSense Report 0x01 and 0x31) containing dedicated battery status nibbles. In contrast, Microsoft Xbox controllers route battery telemetry exclusively through proprietary XInput/GIP drivers, reporting only coarse levels (Empty, Low, Medium, Full) in the Xbox Accessories app.
How long each controller should last
A healthy DualSense controller provides 8 to 12 hours of active playtime, a DualShock 4 delivers 6 to 8 hours, and a Nintendo Switch Pro controller offers up to 40 hours on a single charge.
Battery runtime depends heavily on peripheral features: haptic feedback, adaptive triggers, high-brightness lightbars, and the integrated controller speaker significantly increase current draw on PS5 controllers. If your DualSense drops below 4 hours of gameplay under normal settings, the internal lithium-ion cell has degraded.
Signs your controller battery is failing
Common symptoms of a degraded gamepad battery include rapid percentage drops within minutes of unplugging, sudden unexpected shutdowns when rumble activates, and failure to charge past 80%.
Lithium-ion cells naturally lose capacity after 300 to 500 recharge cycles. As internal resistance increases, high current demands from vibration rumble motors can trigger low-voltage cutoffs, causing the controller to disconnect abruptly even when reporting remaining capacity.
Why Xbox controllers report differently
Xbox Series X/S and Xbox One controllers use standard AA alkaline batteries or proprietary rechargeable packs that do not report raw millivolt levels through standard WebHID interfaces.
Because Xbox controllers can run on disposable 1.5V alkalines, 1.2V NiMH rechargeables, or 3.7V lithium packs, voltage curves vary drastically. Windows handles Xbox battery monitoring through the native Xbox Accessories desktop application rather than browser WebHID reports.
Battery vs charging problems
A controller that refuses to charge is more frequently caused by a damaged USB-C/micro-USB port, bent pins, or a faulty charging cable than an actual dead battery cell.
Before assuming your battery is dead, inspect the physical USB port for lint or loose wiggle. Try testing with a dedicated high-speed data cable connected directly to a motherboard USB port rather than an unpowered front-panel USB hub.
Frequently Asked Questions
How do I check my controller's battery percentage on PC?
Connect it by USB or Bluetooth and open this page in Chrome or Edge. The controller's own reported level is read directly from its HID report â no software needed.
Why does my Xbox controller not show a battery level?
Xbox pads expose very little battery data to browsers, and AA batteries report nothing at all. Check the level in the Xbox Accessories app instead.
How long should a PS5 controller battery last?
A healthy DualSense runs roughly 8 to 12 hours depending on haptics and lightbar use. Noticeably less than that on a full charge suggests a degraded cell.
Can I check battery health, not just level?
This test tracks how the reported level behaves across a session, which indicates degradation. Controllers do not expose a true health figure the way phones do.
Does checking the battery drain it?
No. The reading is passive â the controller reports its level as part of normal operation.