Methods · refresh-rate

How DeviceCheckOnline measures monitor refresh rate

A monitor's refresh rate is how many times per second it can present a new image. The browser cannot query the panel directly — but it can measure how often `requestAnimationFrame` fires, which is locked to display vsync on every modern browser.

Open the tool →

1. The rAF clock

`requestAnimationFrame` is scheduled by the browser to align with the display's vsync signal. On a 144 Hz monitor it fires every 6.94 ms. We log the gap between consecutive timestamps for 5 seconds and report the median — typically 30–300 samples on a 60 Hz monitor, 700+ on 144 Hz, 1700+ on 360 Hz.

2. Why median, not average

Frame drops happen. A garbage-collection pause, a scroll event, or an extension running CSS animations can push a single frame to 30 ms. The mean shifts dramatically; the median doesn't. We also surface p99 separately so you can see drop frequency.

3. Classification

We snap the measured Hz to the nearest standard rate (60, 75, 90, 100, 120, 144, 165, 180, 200, 240, 280, 360, 480, 540) and flag the deviation. A clean panel lands within 3% of a standard; non-standard rates usually mean either custom resolution or VRR/G-Sync actively varying the rate.

4. What we cannot see

Browser rAF can cap at 60 Hz when the tab is backgrounded, when Chrome is on a low-power profile, or in some Firefox configurations. Variable refresh (G-Sync / FreeSync) reports the *current* rate, not the maximum. For absolute panel certification you need a fullscreen exclusive game or specialized hardware (Blur Busters' UFO test gives the visual but not the number).

FAQ

My 144 Hz panel reports 60 here.

Your tab is likely backgrounded, on battery saver, or Chrome's low-power mode is active. Switch power profile, focus the tab, and re-run.

Does VRR mess up the reading?

Yes — VRR will report whatever rate the panel currently runs at. To measure max refresh, generate a steady workload (the UFO test is good) so the panel locks to max.