See the refresh rate this window really gets, and the frames it misses
The refresh rate test starts timing the moment the page opens. It measures how often the browser redraws the screen and shows the refresh rate this window gets, in Hz. The value is an average over the last 2 seconds, hundreds of intervals rather than one, so close settings such as 144 Hz and 165 Hz are told apart to one decimal place. Pick the rate you set on your monitor and the test judges whether that setting is actually in effect; if it is not, it points to the first places to check.
Below the readout, a tape of frame intervals adds one bar for every frame and scrolls from right to left. Bars sitting evenly on the baseline are frames that arrived on time; tall bars in the accent colour are frames the browser missed. In the motion track under it, the same object moves at the same speed at the screen's maximum frame rate, at half of it and at a quarter of it, so you can compare choppiness and blur by eye. The camera cells at the bottom let you photograph the screen and check whether the monitor itself skips frames. Everything is calculated inside this browser; nothing is stored or sent.
When a refresh rate test helps
- You just connected a new 144 or 165 Hz monitor: a monitor may support a high rate, but if the operating system is set to 60 Hz the screen runs at 60 Hz. Only a measurement shows whether a change took effect.
- You changed a cable, port or adapter: the real output follows the weakest of the computer's port, the cable and the monitor. With an HDMI 2.0 cable, for example, 4K tops out at 60 Hz.
- You use a laptop with an external monitor, or two monitors: drag the browser window to each monitor in turn and check that each one has the right setting.
- Games or scrolling look choppy: if the rate is right but motion still stutters, look at the tape to see whether frames are missed and when.
- You overclocked the refresh rate or bought a used monitor: a monitor can receive the signal and still skip frames, while the browser reading looks normal. Photographing the camera cells reveals it.
- You want to check the 120 Hz screen of a phone or tablet: Low Power Mode, smoothness settings and the browser can each hold the same device at 60 Hz.
How to use it
- Move the browser window to the monitor you want to test. While it measures, pause videos in other tabs and heavy programs.
- Wait about a second and read the big number. It is the refresh rate the window gets now. The line under it shows the nearest common setting and the length of one frame in ms. Keeping the mouse and scrolling still gives a steadier value.
- Choose "Refresh rate set on your monitor". If the reading matches, it says so; if not, a sentence names the likely state (60 Hz limit, half rate, power saving) and the first places to check.
- Look at the tape and the missed-frame count. If no frames were missed in the last 10 seconds, the browser is drawing evenly.
- Follow an object in the motion track with your eyes. The three lanes have the same speed and differ only in how often they are drawn, so comparing them shows the choppiness and blur that fewer frames cause. Try other speeds and backdrops.
- If you overclocked or suspect stutter, turn on the camera cells. Turn the cells on, photograph them at the suggested shutter speed and see whether the lit cells form an unbroken run.
- Press "Copy result" if you need it. The measured Hz, verdict, missed frames and screen size are copied as text you can paste into a support message or a note.
How to read the result
A reading within ±2% of the setting counts as the same value. A lower reading is narrowed down by which value it is near: around 60 Hz points to a setting or browser limit, around 30 Hz to power saving, and half of the setting to a browser that draws every other frame.
| Setting | Reading | Verdict | Check first |
|---|---|---|---|
| 165 Hz | 164.9 Hz | Matches | Working as set. If motion still stutters, look at missed frames and the camera cells. |
| 165 Hz | 60.0 Hz | Low, at 60 Hz | The refresh rate in your operating system, the 60 Hz limit in Safari and Low Power Mode, the cable and the port |
| 120 Hz | 30.0 Hz | Low, around 30 Hz | Power-saving mode on a laptop or phone, the browser's energy saver |
| 144 Hz | 72.0 Hz | Low, at half | The browser's power saving, heavy tabs or programs, overlapping windows |
| 165 Hz | 144.0 Hz | Lower | Whether the window is on another monitor, whether the change was applied, cable bandwidth |
| 60 Hz | 144.0 Hz | Higher | Whether the window is on a faster monitor, whether the rate you picked is correct |
Frame time and blur length by refresh rate
The higher the refresh rate, the shorter each frame stays on screen. Most LCD and OLED monitors are sample-and-hold: they keep the current frame lit until the next one arrives, so when your eyes follow a moving object it smears by that duration. Blur Busters puts it this way: a scene held for 1 ms moving at 1,000 px per second leaves 1 px of blur. The blur lengths in the table below are calculated with that relation, and the numbers beside the motion track use the same formula.
| Refresh rate | One frame | Blur · 960 px/s | Blur · 1,920 px/s |
|---|---|---|---|
| 60 Hz | 16.67 ms | 16.0 px | 32.0 px |
| 75 Hz | 13.33 ms | 12.8 px | 25.6 px |
| 120 Hz | 8.33 ms | 8.0 px | 16.0 px |
| 144 Hz | 6.94 ms | 6.7 px | 13.3 px |
| 165 Hz | 6.06 ms | 5.8 px | 11.6 px |
| 240 Hz | 4.17 ms | 4.0 px | 8.0 px |
| 360 Hz | 2.78 ms | 2.7 px | 5.3 px |
The table values are estimates that include only the hold time of the screen. If a pixel is slow to change from one colour to another (its response time), the object trails a longer tail, and if the response is pushed too hard it overshoots the target colour and leaves an inverse halo. Turning on a backlight strobing feature (sold under names such as motion blur reduction or ULMB) shortens the time the image is lit and so shortens the blur.
Where to check when the reading differs from the setting
If the reading is lower than the setting, something in the monitor, the operating system, the browser or the connection is capping the rate. Going through the list below finds it in most cases.
| Where | What to check | Good to know |
|---|---|---|
| Windows 11 | Start > Settings > System > Display > Advanced display > Choose a refresh rate | With more than one monitor, pick the monitor first. Dynamic Refresh Rate (DRR) adjusts the rate automatically to what you are doing. |
| Windows 10 | Start > Settings > System > Display > Advanced display settings > Refresh rate | If the graphics card's control panel has its own value, check that one too. Windows 10 does not support DRR. |
| Mac | Apple menu > System Settings > Displays > Refresh Rate | On 14-inch and 16-inch MacBook Pro models with Apple silicon, choose ProMotion for an adaptive rate up to 120Hz. |
| iPhone, iPad | Settings > Accessibility > Motion > Limit Frame Rate, and Low Power Mode | On ProMotion devices, turning on Limit Frame Rate or Low Power Mode limits the screen to 60 frames per second. |
| Galaxy | Settings > Display > Motion smoothness | Standard sets a 60 Hz refresh rate; Adaptive adjusts it up to 120 Hz. |
| Pixel | Settings > Display & touch > Smooth Display | Available on Pixel 4 and later, including Fold. When Battery Saver is on, Smooth Display is disabled. |
| Safari | Open the same test in another browser and compare | To save power, WebKit limits web page updates to 60 Hz by default (default on macOS, iOS and iPadOS). |
| Chrome | Settings > Performance > Energy Saver | With Energy Saver on, Chrome reduces its image capture rate and other background tasks, and game and video performance may change. |
| Cable, port | The maximum rate per port in the monitor's manual | Output follows the lowest version among the computer's port, the cable and the monitor. DisplayPort is often the better choice for high refresh rates. |
A problem has been reported where Chrome on Windows does not handle several monitors with different refresh rates correctly. If the value does not change when you move the window, connect only the monitor you want to test, or make it the main display, and measure again.
How to read the motion track
All three objects move at the same speed, but the first lane moves them every frame, the second every second frame and the third every fourth frame. On a 144 Hz screen the lanes run at 144, 72 and 36 fps from the top. Follow one object with your eyes: the fewer the frames in a lane, the more the object jumps, and the more the numbers and stripes smear. The stripes on the object are 1, 2 and 4 px apart from the left, so when the blur is longer than the gap, the stripes merge into one.
- Speed: 480 px/s is easy to follow, while 1,920 px/s makes the differences large. On a narrow phone screen, start with 480 px/s.
- Backdrop: dark, gray and light change the brightness step a pixel has to make, so the trailing tail can look different from one backdrop to another.
- Full screen: the F key or the full-screen button fills the screen with the work area, which makes the track bigger and easier to compare, and also shows whether the rate differs between windowed and full-screen modes.
Check frame skipping with a camera
When a refresh rate is overclocked, the monitor may accept the high-rate signal but not show some of the frames. The browser only knows what it sent, so the measured value still looks normal. When you turn the cells on, one of 32 cells lights up and moves on to the next cell with every frame. A long-exposure photo captures all the cells lit during that time at once. If the lit cells form an unbroken run, all is well; an empty cell in the middle means the monitor skipped that frame. A gap means that frame never reached the screen. A frame the browser missed only keeps the same cell lit longer and leaves no gap, so a gap while missed frames are 0 usually means the monitor skipped it. In windowed mode the operating system's compositor can also drop frames, so photographing in full screen is more reliable.
| Refresh rate | Shutter speed | Cells that should run together |
|---|---|---|
| 60 Hz | 1/15 s | about 4 cells |
| 144 Hz | 1/15 s | about 10 cells |
| 165 Hz | 1/15 s | about 11 cells |
| 240 Hz | 1/15 s | about 16 cells |
| 360 Hz | 1/30 s | about 12 cells |
| 540 Hz | 1/30 s | about 18 cells |
TestUFO recommends exposing 1/10 s or longer, but this tool suggests 1/15 to 1/60 s depending on the refresh rate, so the lit run stays at 20 cells or fewer and does not wrap around the 32 cells. Phone cameras let you pick the shutter speed in pro or manual mode, and in a dark room even automatic mode exposes for longer. If only one or two cells are lit, the shutter is too fast, so shoot again more slowly.
Common mistakes
- The window is on another monitor: the reading belongs to the monitor the browser window is on. With two monitors, move the window to the one you want to test and wait a few seconds.
- A laptop or phone on battery: power-saving and low-power modes often cut screen updates to 60 or 30. Plug in, turn power saving off and measure again.
- Scrolling or switching tabs while measuring: missed frames rise and the value wobbles for a moment. Leave it alone and after about 2 seconds it settles.
- A 60 Hz setting reads 59.9 Hz: depending on the signal timing used by the graphics card and the monitor, the decimals can differ slightly. The verdict treats ±2% as the same value.
- Comparing with a game's fps: this number is how often the browser redraws the screen. How many frames a game draws per second has to be read from the game's own fps counter.
- Windows Dynamic Refresh Rate (DRR) is on: the rate changes with what you are doing, so if the value differs from the setting, turn DRR off and measure again.
Limits
- This test measures how often the browser redraws the screen. It cannot read how many frames the monitor actually showed, so whether the monitor skips frames can only be checked with the camera cells.
- Timestamps are usually cut to 0.1 ms, and some browsers or privacy settings cut them more coarsely. The tool detects the time unit and averages many intervals, so Hz stays within the ±2% verdict range, but with a coarse clock on displays above 400 Hz the missed-frame count can be off by one or two, and the jitter value includes this error.
- If a browser such as Safari caps updates, that cap is what you see. The value is the rate that browser uses, not the maximum rate of the monitor.
- If the browser keeps drawing every other frame, the period looks doubled and a half value appears. The monitor's real refresh rate is then higher than the reading.
- Blur length is an estimate that assumes a sample-and-hold screen. Pixel response time, overdrive and backlight strobing are not included.
- Measurement stops when the tab is hidden or the work area leaves the screen, because browsers also stop sending draw signals to background tabs.
Reference date Menu names and source documents were checked on 2026-10-28. Menu names can change when the operating system or browser is updated.
Sources
- 01MDN: Window.requestAnimationFrame()The draw callback usually runs at the display refresh rate and is paused in background tabs and hidden iframes
- 02MDN: Performance.now()Browser time is coarsened to 100 µs in documents that are not cross-origin isolated and 5 µs in isolated ones
- 03Microsoft Support: Change the refresh rate on your monitor in WindowsRefresh rate path in Windows 11 and 10; Dynamic Refresh Rate (DRR) adjusts the rate to what you are doing
- 04Apple Support: Change the refresh rate of your Mac displayRefresh Rate menu in System Settings > Displays; ProMotion and an adaptive rate up to 120Hz
- 05iPhone User Guide: Low Power ModeOn iPhones with a ProMotion display, Low Power Mode limits the refresh rate to 60 frames per second
- 06iPhone User Guide: Customize onscreen motionSettings > Accessibility > Motion > Limit Frame Rate caps the frame rate at 60 frames per second
- 07Samsung: Adjust the screen refresh rate on your GalaxySettings > Display > Motion smoothness; Standard = 60 Hz, Adaptive = adjusts up to 120 Hz
- 08Google Pixel Help: Change display settingsDisplay & touch > Smooth Display (Pixel 4 and later)
- 09WebKit Bugzilla 173434: requestAnimationFrame 60 fps capWebKit limits web content updates to 60Hz to save power; the "Prefer Page Rendering Updates near 60fps" flag is on by default in macOS, iOS and iPadOS
- 10Chrome Help: Chrome performance settingsEnergy Saver reduces the image capture rate and other background tasks, and game and video performance may change
- 11Dell: HDMI port FAQOutput follows the lowest version among computer port, cable and monitor (HDMI 2.0 tops out at 4K 60 Hz); DisplayPort is often better for high-refresh gaming
- 12Blur Busters LawOn a sample-and-hold display, 1 ms of persistence at 1,000 px per second equals 1 px of blur
- 13TestUFO: Frame SkippingPhotograph with an exposure of 1/10 s or longer; a gap between the lit cells means skipped frames
- 14RTINGS: Motion Blur and Response TimeResponse time is how long a pixel takes to change from one colour to another; too fast a response overshoots the target colour and causes inverse ghosting
- 15Chromium issue 40386822A report that Chrome on Windows does not handle several monitors with different refresh rates correctly
- 16Google Pixel Help: Manage screen & display settingsWhen Battery Saver is on, Smooth Display is disabled
Frequently asked questions
How accurate is the Hz measured by this test?
It averages the intervals between browser redraws over the last 2 seconds. Timestamps are usually cut to 0.1 ms, so one interval wobbles, but averaging hundreds usually gets the first decimal right. Even in browsers that cut time more coarsely, the result stays within the ±2% range the verdict treats as the same value.
My monitor is 144 Hz but it reads 60 Hz. What should I check first?
Start with the operating system. On Windows 11, choose the refresh rate under Settings > System > Display > Advanced display; on a Mac, choose it under System Settings > Displays. If the setting is right and it still reads 60, check Safari's 60 fps limit, Low Power Mode, then the cable and port. Output follows the lowest version among the computer's port, the cable and the monitor.
Why doesn't Safari on a Mac or iPhone reach 120 Hz?
WebKit, the engine behind Safari, limits web page updates to 60 Hz by default to reduce power use. This is done with the feature flag "Prefer Page Rendering Updates near 60fps", which is on by default in macOS, iOS and iPadOS. So a 60 in Safari may be the browser's value rather than the screen's.
How many missed frames is a problem?
A missed frame is a time the browser could not deliver a new image on time. Everyone gets more of them while scrolling, switching tabs or running heavy programs. If accent-colour bars keep appearing while you leave the mouse and scrolling alone, check other programs, browser extensions and power-saving settings.
Missed frames are 0 but the screen still looks choppy.
When a monitor receives the signal but does not show some frames (frame skipping), the browser cannot know. If you overclocked the refresh rate or suspect this, turn on the camera cells below, shoot with a slow shutter and check that the lit cells form an unbroken run.
How is the blur length beside the track calculated?
On a sample-and-hold screen that keeps a frame lit until the next one, a scene visible for 1 ms moving at 1,000 px per second leaves about 1 px of blur. So blur length is estimated as speed ÷ frames per second. At 960 px/s, 144 fps gives about 6.7 px and 60 fps gives 16 px. Pixel response time and backlight strobing are not included.
Can I measure on a phone?
Yes. A phone browser measures the same way. An iPhone is limited to 60 Hz when Low Power Mode or Limit Frame Rate is on. On a Galaxy, choosing Standard under Settings > Display > Motion smoothness gives 60 Hz, while Adaptive adjusts up to 120 Hz. On a Pixel, Smooth Display under Display & touch is disabled when Battery Saver is on.
Are my measurements stored or sent?
No. Measuring and calculating happen entirely in this browser, and nothing is stored or sent to a server. To keep a result, press Copy result and paste it where you want.