Controller Polling Rate Test: Live Hz Report Rate and USB Speed Checker
Measure how many times per second your gamepad reports input updates to your computer with our free online controller polling rate test. By analyzing high-resolution timestamp deltas across consecutive hardware packets while you rotate your thumbsticks, this browser utility calculates your live frequency in Hertz (Hz), average frame interval in milliseconds (ms), and effective USB or wireless report stability.
Release both thumbsticks and click 'Run 5s Stick Drift Audit' or press any button to inspect real-time hardware telemetry.
How to Measure Hz Frequency Step by Step
- Configure Your Display to Its Maximum Refresh Rate: Web browsers synchronize requestAnimationFrame polling with your monitor vertical refresh cycle. Open your operating system Display Settings and confirm your gaming monitor is running at 120Hz, 144Hz, 240Hz, or higher before starting.
- Connect Your Gamepad via USB Cable, 2.4GHz Dongle, or Bluetooth: Plug your device into a direct USB port or pair it via Bluetooth, then press any face button while this browser tab is focused to initialize the live telemetry strip.
- Rotate Both Analog Thumbsticks Continuously for 5 Seconds: Operating systems only increment the hardware timestamp when an axis or button state changes. Rotate both the Left Stick and Right Stick in smooth, continuous circles for five full seconds to force a nonstop stream of packets.
- Read Your Live Hertz (Hz) and Millisecond (ms) Score: Inspect the Polling Rate and Latency box in the top telemetry grid while rotating the sticks. A steady 125 Hz (8.00 ms), 250 Hz (4.00 ms), 500 Hz (2.00 ms), or 1000 Hz (1.00 ms) readout confirms your active report cadence.
- Verify Overclock Changes or Compare Wired vs Wireless Modes: Click Copy Diagnostic Report to save your baseline frequency, then switch from Bluetooth to wired USB (or apply a USB bInterval overclock) and click Reset Data to verify the speed increase.
How to Read Your Report Frequency Numbers and Thresholds
Report frequency, measured in Hertz (Hz), defines how often the USB host controller or Bluetooth stack reads new data from your gamepad. The time interval between reports in milliseconds is the inverse of the frequency (ms = 1000 / Hz). Compare your measured score from the controller polling rate test against the hardware specification table below.
| Measured Frequency (Hz) | Report Interval (ms) | Standard Hardware Profile | Diagnostic Verdict and Meaning |
|---|---|---|---|
| 500 Hz to 1000 Hz | 1.00 ms to 2.00 ms | DualSense Edge USB, 8BitDo 1000Hz pads, Overclocked PS5/PS4 USB | PASS (Esports Grade): Sub-frame updates on 240Hz and 360Hz monitors |
| 240 Hz to 255 Hz | 3.92 ms to 4.17 ms | Stock Sony PS5 DualSense and PS4 DualShock 4 over wired USB | PASS (Fast Console Grade): Two input updates per 120Hz monitor frame |
| 120 Hz to 126 Hz | 7.94 ms to 8.33 ms | Microsoft Xbox Series X and S, Xbox One, and Xbox 360 (USB and Wireless) | PASS (Factory Xbox Spec): Locked 8ms hardware cadence; 1 update per 120Hz frame |
| 60 Hz to 65 Hz | 15.38 ms to 16.67 ms | Nintendo Switch Pro / Joy-Con or 60Hz monitor VSync browser limit | INFO / PASS: Normal for Switch hardware or 60Hz display refresh rate |
| 35 Hz to 55 Hz (Fluctuating) | 18.18 ms to 28.57 ms | Congested Bluetooth radio link or overloaded USB hub | WARNING: Packet retries reducing effective report rate and smoothness |
| Below 30 Hz or frequent drops to 0 Hz | Over 33.33 ms interval | Damaged USB data wire, failing Bluetooth dongle, or low battery | FAIL: Severe report starvation causing sluggish, blocky aiming |
What the Controller Polling Rate Test Measures Inside Your System
Every time you tilt an analog thumbstick or press a face button, your gamepad microcontroller scans its internal Analog-to-Digital Converter (ADC) and switch matrix, packs the coordinates into a byte array, and places that packet into its outbound transmit buffer. However, over a wired USB connection, a gamepad cannot simply push data to your computer whenever it wants. USB is a host-scheduled bus: your computer's USB host controller must actively ask (poll) the connected device for new data at fixed time intervals.
When you plug in a gamepad, its firmware sends a USB Device Descriptor to your operating system containing a single byte called bInterval. That bInterval value instructs the OS kernel how many milliseconds to wait between polling requests. For example, a bInterval of 8 tells Windows to poll the port every 8 milliseconds (1000 / 8 = 125 Hz); a bInterval of 4 sets a 4-millisecond schedule (250 Hz); and a bInterval of 1 sets a 1-millisecond schedule (1000 Hz).
Running our online controller polling rate test measures the effective rate at which those hardware updates reach your browser environment. As you rotate both thumbsticks continuously, the script records the high-resolution DOMHighResTimeStamp attached to each state change in navigator.getGamepads(), computes the rolling average delta across 90 consecutive reports, and converts that millisecond delta into live Hertz.
- Live Frequency Calculation: Converts rolling timestamp deltas (1000 / avgDeltaMs) into real-time Hertz.
- USB bInterval Verification: Confirms whether Windows USB polling overclocks (such as 250Hz to 1000Hz) are actually active.
- Wireless Saturation Check: Reveals whether Bluetooth interference is dragging a 250Hz+ pad down below 60Hz.
Why Update Frequency Matters for Aim Tracking, Frame Pacing, and Input Feel
Does a higher Hertz reading actually make a noticeable difference in gameplay? The answer depends on how your gamepad report frequency aligns with your monitor refresh rate and game engine tick rate.
Suppose you play a competitive shooter like Call of Duty, Apex Legends, or Fortnite on a PC with a 240Hz gaming monitor. A 240Hz display draws a brand-new video frame once every 4.17 milliseconds. If you use a gamepad updating at 125 Hz (one update every 8.00 milliseconds), your hardware only delivers new right-stick aiming coordinates on roughly half of the frames your monitor draws. Every second frame rendered by your GPU has to reuse stale stick coordinates from 4 milliseconds ago, which can make fast 180-degree camera turns feel slightly stepped compared to a 1000Hz gaming mouse.
When you use a gamepad running at 250 Hz (4.00 ms interval), 500 Hz (2.00 ms interval), or 1000 Hz (1.00 ms interval), fresh thumbstick coordinates arrive before every single 240Hz display frame is rendered. Even if the internal mechanical switch speed remains the same, matching or exceeding your monitor refresh rate eliminates sample-and-hold aliasing between the input loop and the rendering loop.
How Browser Refresh Rate (VSync) Interacts With Hz Measurements
Before interpreting your numbers from any web-based frequency analyzer, you must understand a core architectural rule of modern web browsers: Chrome, Edge, Firefox, and Safari latch the state array returned by navigator.getGamepads() to the browser's visual animation loop (window.requestAnimationFrame).
Because requestAnimationFrame fires once per monitor vertical refresh (VSync), your monitor refresh rate acts as an observation window for browser JavaScript. If you open this page on a standard 60Hz laptop display, requestAnimationFrame runs 60 times per second (once every 16.67 ms). Consequently, even if your gamepad is updating the Windows kernel buffer 1000 times per second, a 60Hz display only lets the browser inspect that buffer 60 times per second, capping the visible readout near 60 Hz (16.67 ms).
When you view this exact same page on a 120Hz, 144Hz, 240Hz, or 360Hz gaming monitor, requestAnimationFrame fires every 8.33 ms, 6.94 ms, 4.17 ms, or 2.78 ms. That high-speed observation window allows the browser to observe 125 Hz, 250 Hz, and higher hardware polling rates directly. If your gaming monitor is rated for 144Hz or 240Hz but our readout seems capped at 60 Hz, check Windows Advanced Display Settings to ensure your desktop refresh rate was not reset to 60Hz after a graphics driver update.
Per-Controller Factory Polling Rates: PS5, PS4, Xbox, Switch, and 8BitDo
Every gamepad model has a hardcoded factory report rate over USB and wireless connections. Use these published specifications when evaluating your hardware on our controller polling rate test:
Sony PS5 DualSense (VID 054C, PID 0CE6): Over wired USB-C on PC, the standard DualSense sets a 4ms USB bInterval, operating natively at 250 Hz (4.00 ms). Over a clean Bluetooth 5.0+ connection on PC, the DualSense transmits input reports at up to 500 Hz to 800 Hz, and over wired USB it can be overclocked via host filter drivers to 1000 Hz (or up to 4000Hz/8000Hz on USB High-Speed descriptors, though rates above 1000Hz yield diminishing returns as the internal ADC scans at a fixed internal cadence).
Sony PS5 DualSense Edge (VID 054C, PID 0DF2): Sony's flagship pro pad ships with a native 1ms USB bInterval out of the box. Plugging a DualSense Edge into a PC via USB-C delivers a true 1000 Hz (1.00 ms) report rate without any third-party overclock software.
Sony PS4 DualShock 4 V1 and V2 (VID 054C, PID 05C4 and 09CC): Polls at 250 Hz (4.00 ms) over wired Micro-USB by default, can be overclocked to 1000 Hz over USB, and reaches 500 Hz to 800 Hz over clean Bluetooth.
Microsoft Xbox Series X and S, Elite Series 2, Xbox One, and Xbox 360 (VID 045E): Microsoft locks the firmware report rate of all official first-party Xbox controllers to 125 Hz (8.00 ms) over both wired USB and the Xbox Wireless Adapter. Because the Xbox microcontroller itself is programmed to transmit only once every 8 milliseconds, host-side USB overclock utilities like hidusbf cannot push an official Xbox Series X or Elite Series 2 pad past 125 Hz. Only select licensed third-party Xbox controllers (such as Gamesir G7 SE or Razer Wolverine) support 250 Hz to 1000 Hz modes via companion software.
Nintendo Switch Pro Controller and Joy-Cons (VID 057E): Operate at 60 Hz to 125 Hz (8.00 ms to 16.67 ms) over Bluetooth and wired USB.
8BitDo Models, Gulikit, and Flydigi Pads: Modern Hall Effect and TMR third-party PC pads frequently support 250 Hz to 1000 Hz over both wired USB and their included 2.4GHz wireless dongles.
Common Causes of Low or Unstable Report Rates
If our frequency meter shows your Hz reading dropping well below your hardware's factory rating or bouncing erratically, one of four bottlenecks is restricting packet flow:
1. Stationary Thumbsticks During Sampling: If you stop moving the sticks or move them very slowly in a straight line where ADC values repeat across consecutive frames, the OS does not fire new timestamp events, causing the calculated Hz number to drop. Always rotate both sticks vigorously in full circles while reading the meter.
2. Bluetooth 2.4GHz Radio Congestion: When a Bluetooth gamepad encounters Wi-Fi traffic or USB 3.0 port noise in the 2.4GHz band, lost packets must be retransmitted on subsequent Bluetooth connection intervals, cutting your effective Hz rate in half.
3. Desktop Refresh Rate Locked to 60Hz or Browser Tab Throttling: If your OS desktop is set to 60Hz, or if Chrome Battery Saver / Energy Saver mode is active on a laptop, the browser caps requestAnimationFrame at 30 Hz or 60 Hz.
4. Bad USB Hub or Charge-Quality Cable: Routing a 1000Hz gamepad through a passive unpowered USB 2.0 keyboard hub alongside multiple audio or storage devices can cause periodic frame drops.
How to Safely Overclock USB Polling Rate on Windows (250Hz to 1000Hz)
For players using a wired Sony PS5 DualSense, PS4 DualShock 4, or compatible DirectInput gamepad on Windows 10 or Windows 11, increasing the USB frequency from 250 Hz (4.00 ms) to 1000 Hz (1.00 ms) is a popular competitive tweak. This process uses the open-source HIDUSBF (SweetLow USB Mouse and Gamepad Rate Adjuster) filter driver.
How does it work safely? HIDUSBF does not flash or modify anything inside your gamepad hardware. Instead, it attaches a lightweight filter to the Windows USB port driver that overrides the device's reported 4ms bInterval with a 1ms bInterval. After installing the signed driver service, checking the Filter On box for your gamepad endpoint, selecting 1000 Hz from the dropdown, and unplugging and replugging the USB cable, you can immediately re-run our controller polling rate test on a high-refresh-rate monitor to confirm the faster interval.
When to Replace Hardware for Report Rate Issues
You almost never need to replace a gamepad due to a low Hz reading unless the internal USB-C or Micro-USB connector pins are physically damaged and causing constant disconnects. If you are a competitive FPS or Rocket League player currently using a standard 125 Hz Xbox pad or a 60 Hz Switch Pro pad and want native 1000 Hz (1.00 ms) performance without driver tweaks, upgrading to a native 1000Hz model such as the Sony DualSense Edge, an 8BitDo 2.4GHz unit, or a 1000Hz Hall Effect PC pad provides plug-and-play sub-frame speed.
Browser and OS Troubleshooting for Hz Testing
To ensure the most accurate readout during your check, use Google Chrome, Microsoft Edge, or Brave on a desktop monitor running at 120Hz, 144Hz, 240Hz, or higher. Verify in chrome://settings/system that Use graphics acceleration when available is switched on, and close background game launchers or frame-rate limiters (like RivaTuner Statistics Server or Nvidia Control Panel background FPS caps) that might artificially clamp browser rendering to 60 frames per second.
Frequently Asked Questions
Why does the frequency meter show 0 Hz until I move the sticks?
Gamepads and operating systems only record a new packet timestamp when at least one axis coordinate or button state changes. Rotating both thumbsticks in continuous circles forces the hardware to send a new update on every single polling cycle so our engine can measure the true Hz frequency.
Why does my 1000Hz gamepad read 60 Hz or 144 Hz in the browser?
Web browsers update the JavaScript navigator.getGamepads() state once per display animation frame (requestAnimationFrame). Therefore, the maximum frequency visible inside a standard browser tab is bounded by your monitor's current refresh rate (for example, 60 Hz on a 60Hz screen, 144 Hz on a 144Hz screen, or 240 Hz on a 240Hz screen).
Why is my Xbox Series X or Xbox Elite Series 2 pad stuck at 125 Hz?
Microsoft locks the internal firmware of official Xbox One, Xbox Series X and S, and Xbox Elite Series 2 pads to a fixed 125 Hz report rate (8.00 ms interval) over both wired USB and the Xbox Wireless Adapter. Even USB overclocking tools cannot raise a first-party Xbox unit above 125 Hz.
Can overclocking my PS5 DualSense or PS4 pad to 1000Hz damage the hardware?
No. Overclocking a USB report rate on Windows only changes how often the PC's USB port asks the gamepad for data (every 1ms instead of every 4ms). It does not increase voltage, alter internal clock speeds, or void your hardware warranty.
Does a 4000Hz or 8000Hz USB overclock actually make a PS5 DualSense faster than 1000Hz?
While a PS5 DualSense uses a USB High-Speed chip capable of responding to 4000Hz or 8000Hz USB host requests, the internal Analog-to-Digital Converter (ADC) only samples the physical thumbsticks at a lower internal frequency. Polling at 8000Hz simply asks the gamepad to repeat the same ADC coordinate multiple times while increasing PC CPU interrupt load; 1000Hz (1.00 ms) is the practical sweet spot.
Why does my PS4 or PS5 pad show a higher Hz rate over Bluetooth than over stock USB?
By factory default, Sony sets the wired USB descriptor (bInterval) of the standard DualSense and DualShock 4 to 4ms (250 Hz), whereas over a clean Bluetooth connection it can burst packets at 500 Hz to 800 Hz. However, Bluetooth suffers from wireless jitter whenever interference occurs, whereas a 1000Hz wired USB connection is 100% consistent.
Why does my Hz reading drop in half when I stop rotating one of the thumbsticks?
If you move a single stick very slowly, the digital ADC step value may stay identical across two consecutive milliseconds. When two consecutive frames contain the exact same coordinate values, the OS suppresses the duplicate packet. Rotating both sticks briskly ensures every single millisecond produces a unique coordinate.
Do Hall Effect or TMR thumbsticks increase a gamepad's Hz frequency?
Replacing carbon potentiometers with Hall Effect or TMR sensors inside a standard PS5 or Xbox pad eliminates stick drift, but the USB frequency is controlled by the main motherboard microcontroller and USB descriptor, not the stick sensor itself.
Why is my browser capping my Hz reading at 60 Hz even though I have a 144Hz monitor?
First, check Windows Display Settings -> Advanced Display to verify Windows has not defaulted your monitor to 60Hz. Second, if you are on a gaming laptop unplugged from wall power, Windows or Chrome Energy Saver mode automatically throttles browser animation frames to 60Hz until you plug in your charger.
How do I reset the Hz counter after switching from Bluetooth to a USB cable?
Click the Reset Data button on the right side of the tester panel. That clears the 90-sample rolling timestamp buffer so you can immediately measure your new connection's clean Hz and millisecond average.