Browser cadence monitorLet the warmup finish, then compare the rolling result and moving lanes.
Browser callback cadenceWarming up · 0/45 frames
Current—HzRolling—HzMedian—HzRecent range—HzInterval—msJitter—%

Select an expected setting for a comparison hint.

Space pause/resumeR resetC controlsF fullscreenEsc exit

Motion is running. Focus the field before using keyboard controls.

Callback cadence, reported without target snapping

Screen Refresh Rate Test

This refresh rate test measures browser animation callback and presentation cadence under the conditions active right now. It can often approximate the active display refresh cadence, but it does not directly query panel hardware, a display controller, or EDID data.

Explicit calculation

Refresh rate test methodology

The estimator keeps raw timing visible and avoids converting it into a hardware claim.

Sampling and bounded history

Each requestAnimationFrame callback reads performance.now(). The difference from the preceding callback is one frame interval. The refresh rate test waits for 45 usable intervals before publishing stable metrics and retains only the latest 180. A gap below 0.5 ms or above 250 ms is excluded. Once a baseline exists, intervals below half the window median are omitted only while they form no more than 20% of the sample; this removes a sparse duplicate/startup-style callback cluster without suppressing a sustained cadence change. The whole sample set is cleared whenever the document becomes hidden, which prevents a tab switch or sleeping computer from contaminating the next visible run.

Cadence, range, and jitter

Current Hz is 1,000 divided by the latest usable interval. Rolling Hz is 1,000 divided by the arithmetic mean interval; median Hz uses the median interval. The recent minimum and maximum invert the slowest and fastest intervals. Jitter is the population standard deviation of the retained intervals divided by their mean, multiplied by 100. This coefficient of variation is a timing-stability description, not a panel specification.

Read the result in context

What the numbers can—and cannot—tell you

Cadence near your setting

A rolling estimate near the operating-system setting is consistent with the browser receiving callbacks at roughly that cadence. Watch the lanes for a practical smoothness comparison, but remember that motion appearance also depends on frame delivery, persistence, pixel response, and your tracking motion.

Cadence below your expectation

Confirm that the expected refresh setting is selected for the active screen, move the browser to the intended monitor, connect external power if appropriate, disable deliberate power limits, close heavy work, and avoid remote desktop. Then keep the tab visible and repeat the refresh rate test.

A wide or unstable range

A wide recent range or higher interval jitter may indicate inconsistent browser frame scheduling during this sample. It can come from system load, timer behavior, variable refresh operation, compositing, or dropped work. It does not isolate a cause or establish that frames reached the physical panel at those exact times.

Using the moving comparison lanes

Choose one of the three speed groups and track the same edge across each lane. Faster motion covers more pixels between callbacks, so step size and tracking blur become easier to notice. The lanes share one animation clock; they are a visual comparison, not separate frame-rate sources. Change between a block, fine line, and text strip to see how edge structure alters the observation. No lane estimates GtG, MPRT, overdrive performance, or input latency.

Why fullscreen and a visible tab help

Fullscreen removes ordinary page chrome from the motion field and may give the browser a more representative presentation path. It still cannot bypass the compositor or operating system. When this page is hidden, the requestAnimationFrame loop stops and the rolling history is discarded. Returning to the page starts a fresh warmup instead of blending an idle gap into the refresh rate test result.

Continue with a focused motion check

Refresh rate test questions

Why does the result move instead of staying on an exact common refresh value?

The estimator reports observed browser callback intervals without snapping them to 60, 120, 144, or another target. Scheduling, compositing, clock precision, and workload introduce small variation, so a rolling range is more honest than a forced label.

Can this refresh rate test prove that a 240 Hz panel is operating at 240 Hz?

No. A result near 240 Hz is consistent with that browser cadence under the current conditions, but the page does not read the panel controller or EDID and cannot prove the manufacturer-rated maximum. Confirm the OS and display settings separately.

Does a high jitter value mean the monitor is faulty?

Not by itself. Jitter here describes variation in recent browser frame intervals. Tab activity, system load, power saving, a remote session, the compositor, or VRR behavior can change it without indicating a panel defect.