Guide

How the Refresh Rate Test Works

Run a 10-second measurement, read your display Hz, frame time, jitter and dropped frames, check motion smoothness, and fix a high-refresh monitor that is stuck at 60Hz.

Run the refresh rate test

What it measures

The refresh rate your screen is really running at

A monitor's box might say 144Hz or 240Hz, but what you get depends on the operating system setting, the cable, the graphics driver and power-saving modes. This test measures the rate your browser is actually presenting frames at right now, on the screen it is open on.

Browsers sync animation frames to the display's vertical refresh (V-Sync), so timing those frames gives a direct, software-only measurement: no special hardware, no download, and nothing leaves your device.

The test starts by itself when you open the page. This guide explains what each readout means, how the measurement works, and what to do if the number is lower than expected.

Controls

Buttons, keys, or the header

Every control does the same thing on phone and desktop — use whichever is nearest.

  • Everywhere

    Buttons

    Start test / Test again runs a fresh 10-second measurement. The 1×, 2× and 4× buttons set the motion-test speed. The speaker toggles sound, and Clear wipes saved results. On a phone, every control is in thumb reach under the readout.

  • Desktop

    Keyboard

    R starts a new measurement anywhere on the page, and so do Space or Enter while the test panel is focused. Keys 1, 2 and 3 pick the motion speed. M mutes or unmutes the sound, and F toggles full screen so nothing else is drawing on the display.

  • Any page

    Header Play

    The Play button in the site header scrolls the test into view and starts a new run straight away. You never need to reload the page to measure again.

The loop

Four steps to a trustworthy reading

Most runs need only the first three; the fourth is for comparing settings or screens.

  1. 1

    Open the page

    The test starts on its own as soon as the page loads. Leave the tab in front and visible. A hidden or background tab is throttled by the browser, so the run starts over when you come back.

  2. 2

    Let it sample for 10 seconds

    The test times every frame your browser paints with requestAnimationFrame, which is locked to the display through V-Sync. The progress bar fills over ten seconds. The large number updates live while it runs.

  3. 3

    Read the locked result

    When the bar is full, the result locks. It shows the refresh rate in Hz, snapped to a real display rate such as 60, 120, 144 or 240, along with the raw measured value, frame time, jitter, dropped frames and a stability rating.

  4. 4

    Check motion and retest

    The moving saucer shows how smooth that rate looks at 1×, 2× or 4× speed. Press Test again (or R) after you change a display setting, and compare the result with the history strip saved on this device.

Method

How each number is calculated

  • What is measured

    Each requestAnimationFrame callback gets a high-resolution timestamp. The gap between two callbacks is one frame interval. Browsers line these callbacks up with the display’s vertical refresh, so the typical interval tells you the refresh rate the browser is actually running at.

  • Median, not average

    The headline rate is 1000 divided by the median frame time. The median ignores the odd slow frame, which an average would let drag the result down. The average FPS is still shown, so you can see how much hitches cost.

  • Snapping to real rates

    Real displays run at standard rates (60, 75, 120, 144, 165, 240, …). If the raw measurement lands within 3% of one of those, the result snaps to it. Otherwise it is rounded to the nearest whole Hz, which is useful for custom or overclocked modes.

  • Dropped frames, jitter and stability

    A frame that takes 1.5× the median or longer counts as dropped. Jitter is the standard deviation of frame times. Stability is the share of frames that land within 10% of the median: 95%+ is Excellent, 85%+ Good, 65%+ Fair, and anything lower is Unstable.

  • What is thrown out

    The first 0.4 seconds are skipped while the browser settles. Gaps longer than 250 ms (a tab switch or a long pause) are ignored as stalls, not frames. If the tab is hidden during a run, the whole run is discarded and starts again.

Hz tiers

What each refresh rate means

Where common refresh rates sit, with the frame time each one gives you. Lower frame time means each new image reaches your eyes sooner.

  1. 16.7 ms per frame · standard

    60Hz

    The baseline for office monitors, most TVs and older phones. It is fine for reading and video. Fast motion in games or quick scrolling looks blurrier and less responsive than on a high-refresh panel.

  2. 11.1–8.3 ms · smooth

    90–120Hz

    Common on modern phones, tablets, MacBook Pro ProMotion screens and current TVs. Scrolling and UI animation look clearly smoother than 60Hz, and 120Hz also divides evenly by 24 fps film.

  3. 6.9–6.1 ms · high refresh

    144–165Hz

    The mainstream gaming-monitor tier. It cuts motion blur and input-to-photon delay sharply compared with 60Hz. Most players notice the jump from 60 to 144 straight away.

  4. 4.2 ms or less · esports

    240Hz and up

    Used by competitive players at 240, 360, 480Hz and beyond. The gains over 144Hz are real but smaller, and your GPU has to render that many frames per second to benefit in games.

Troubleshooting

Why a high-refresh screen tests at 60Hz

  • OS still set to 60Hz

    A new high-refresh monitor often ships running at 60Hz. On Windows, go to Settings → System → Display → Advanced display → Choose a refresh rate. On macOS, go to System Settings → Displays → Refresh Rate. Then run the test again.

  • Cable or port limits

    An older HDMI cable or port can cap a 1440p or 4K signal at 60Hz. Use DisplayPort or a certified HDMI 2.0/2.1 cable, and make sure it is plugged into the graphics card rather than the motherboard.

  • Power saving and battery

    Laptops and phones with adaptive or ProMotion screens drop to 60Hz, or lower, on battery or in low-power mode. Plug in, switch off Low Power Mode, and on Android check Settings → Display → Smooth display / Refresh rate.

  • Browser capping frames

    Some browsers limit animation frames when the window is not focused, when battery saver is on, or when hardware acceleration is off. Try another browser or enable acceleration. An unexpected 30Hz result is almost always a power-saving cap.

Accuracy

Tips for an accurate reading

A summary — the full tips page walks through each in depth.

  • Close other tabs and heavy apps before testing. Background work steals frames and shows up as jitter.
  • Keep the browser window on the monitor you want to measure. On multi-monitor setups, the browser usually syncs to the screen the window is on.
  • Plug in laptops and switch off battery saver. Power-saving modes often drop the panel to 60Hz.
  • Turn on hardware acceleration in your browser settings. Software rendering cannot keep up with high refresh rates.
  • If you see 60Hz on a 144Hz monitor, check the refresh rate setting in your OS display settings first, then the cable.
  • Use full screen (F) for the cleanest reading on desktop.
  • Run the test twice. Two results that agree are more trustworthy than a single run.

Devices

Desktop, laptop, phone, tablet

refreshratetest.app runs in any modern browser with no app to install. Results stay on the device you tested on.

  • Desktop monitors

    Chrome, Edge, Firefox and Safari all report the real refresh rate of the screen the window is on. Variable-refresh monitors (G-SYNC / FreeSync) show their maximum rate on a test like this, because the browser presents frames as fast as the panel allows.

  • Phones and tablets

    The layout fits the readout, Start button and frame graph on one portrait screen. iPhones with ProMotion and most Android 90/120Hz phones are detected correctly when they are not in a power-saving mode.

  • Results on this device

    Your highest rate, total tests and the last eight results, with frame time, jitter and dropped frames, are kept in local browser storage. Nothing is uploaded, and results do not sync between devices.

Still seeing an odd number? Read the refresh rate FAQ or run the test again.

Run the refresh rate test