How the FPS test works
Browsers call requestAnimationFrame once before each frame they draw. On a visible tab, that normally happens once per screen refresh. The test records the exact time of every call with performance.now() and works out, over a rolling two-second window:
- refresh rate: from the median time between frames, rounded to the nearest common rate (60, 75, 120, 144, 165, 240 Hz…) when it is within 3 %;
- frame rate: the average number of frames actually drawn per second, skipped frames included;
- stability: the share of frames that arrive within 20 % of the normal interval;
- skipped frames: each interval that lasts two, three or more refresh periods counts one, two or more missed frames.
The graph shows the time between frames. A flat line is what you want. Spikes are late frames.
Read your result
| Refresh rate | Time per frame | What it is |
|---|---|---|
| 60 Hz | 16.7 ms | Office monitors, most laptops and TVs |
| 75 Hz | 13.3 ms | Budget monitors |
| 120 Hz | 8.3 ms | TVs, consoles, recent phones and laptops |
| 144 Hz | 6.9 ms | Standard gaming monitors |
| 165 Hz | 6.1 ms | Common on recent gaming monitors |
| 240 Hz | 4.2 ms | Competitive gaming monitors |
| 360 Hz | 2.8 ms | Esports monitors |
If the number matches what your monitor promises and stability stays above 95 %, you are set. If it is lower, the screen is not running at its full rate, or something is holding the browser back.
The moving objects
Each lane moves an object at a fixed speed: 240, 480 and 960 pixels per second. On a 60 Hz screen, the fastest one jumps 16 pixels between two frames. At 144 Hz it moves about 7 pixels per frame, so it looks sharper and smoother. Follow each object with your eyes: the blur you see comes from the panel holding each frame while your eyes keep moving. The higher the refresh rate and the faster the panel, the cleaner the edges.
If your system asks for reduced motion, the objects start paused. They are the test itself, so start them only if you are comfortable with it.
When the number is wrong
- Monitor set to 60 Hz. The usual culprit after a new install or a driver update. Change it in the display settings, then in the GPU control panel.
- Cable or port. Use DisplayPort or the HDMI cable that came with the monitor. Older HDMI versions cap high refresh rates at higher resolutions.
- Several monitors. Some browsers follow the rate of the main screen. Move the window, reload the page and test again.
- Battery saving. Laptops and phones lower the rate to save power. Plug in.
- Busy system. Heavy tabs, a game in the background or a weak integrated GPU cause skipped frames.
Limits of a browser test
This test measures the browser’s drawing pace, not the panel itself. With G-Sync or FreeSync, power saving or a busy system, it can differ from the real refresh rate. When the tab is hidden, browsers pause it: the test pauses too and ignores the gap. To check overdrive and ghosting, a high-speed camera or a dedicated pursuit test gives a more precise picture.
Frequently asked questions
Why does the test show 60 Hz on my 144 Hz monitor?
Most often the monitor is still set to 60 Hz in the system. On Windows, open Settings, System, Display, Advanced display and pick the highest refresh rate. Then check the cable, since older HDMI cables and ports cap high refresh rates, and the GPU control panel.
Is this the same as the FPS in my games?
No. The test measures how often the browser draws a frame, which normally follows the screen refresh rate. A game's FPS depends on your GPU and settings and can be far above or below it.
Does it work with G-Sync and FreeSync?
It works, but read the number with care. With variable refresh rate, the screen follows what the browser sends, so the test shows the browser's pace rather than the panel's maximum. Most of the time it still lands on the maximum refresh rate.
Why is my iPhone or iPad stuck at 60 fps?
Safari limits web pages to about 60 frames per second by default, even on 120 Hz ProMotion screens. Low Power Mode and battery saving on laptops can also cap the rate. Plug in and turn power saving off to see the full rate.
What are skipped frames?
A skipped frame is a refresh where the browser had nothing new to show, usually because the system was busy. A few per minute are normal. A steady stream of them means stutter you will notice in motion.
Updated October 26, 2026