Frame skipping test - dual gaming monitors, detects dropped frames via rAF

KeyboardTester.click

Free Frame Skipping Test

Free frame skipping test. Detects dropped or skipped frames at your current refresh rate using requestAnimationFrame timestamp analysis. Shows dropped frame count, stutter events, and a moving reference bar for visual confirmation. Browser-based, no install.

Download from Microsoft Store Download from Microsoft Store

Frame Skipping Test

Detects dropped or skipped frames using requestAnimationFrame timestamp deltas. Any frame whose delta exceeds 1.5× the expected interval (based on your display refresh rate) is counted as a stutter. A moving bar gives visual confirmation — jitter or hitching means the browser or GPU is missing frames.

Frame skipping detector

Detected Hz
0Frames rendered
0Skipped frames
Worst delta (ms)
Jitter (stddev)

Click "Start test". The first 1 second is used to calibrate your refresh rate, then frame skips are counted.

Moving bar (visual confirmation)

A bar moves left-to-right at constant pixels-per-frame. Jitter or hitching in the bar = skipped frames. Smooth motion = stable refresh rate.

Stutter log

Rate Frame Skipping Test: Be the first to rate
KeyboardTester.click assistant

Free for your site

Embed this Frame Skipping Test on your website

Add this free, no-signup tool to your own page or blog post in one click — just keep the small credit link.

Frame Skipping Test is a free, browser-based screen testing tool that lets you detects dropped frames using requestAnimationFrame timestamp analysis.

  • Cost: Free, no signup
  • Install: None — runs in the browser
  • Privacy: Runs locally, no uploads
  • Platforms: Windows, macOS, Linux, Android, iOS
  • Time: Under a minute

How The Frame Skipping Test Works

The test runs a requestAnimationFrame loop and records the timestamp delta between each callback. In a properly-vsynced browser on a 60 Hz monitor, every delta should be roughly 16.67 ms; on a 144 Hz panel, 6.94 ms. Any delta exceeding 1.5× the expected interval is flagged as a skipped frame, and the number of frames skipped is derived by rounding delta / expected. The first ~1 second of test time is used to auto-calibrate the expected interval (median of initial deltas), so the same test works on 60, 75, 120, 144, 165, 240, and 360 Hz displays without configuration.

Why Browsers Skip Frames

Even on fast hardware, browsers skip frames for several reasons: JavaScript garbage collection stalling the main thread for 20+ ms, layout thrashing from extensions mutating the DOM, GPU compositing falling behind on scroll or animation, hardware acceleration being disabled, or thermal throttling on laptops. Battery-saver profiles often downclock the GPU and cause occasional skips. If your test shows steady skips every 1-2 seconds at a predictable cadence, the culprit is almost always a browser extension hooking into every frame (common with screenshot tools and ad blockers that rewrite CSS live).

Frame Skipping vs FPS

FPS alone does not tell you about frame pacing. You can average 144 fps with a pattern like 5, 15, 5, 15 ms per frame and feel like garbage, because half your frames are stuttering. A true benchmark needs to measure the distribution of frame times, not just the mean. This tool reports the worst delta, jitter (standard deviation), and count of skipped frames so you can tell whether your 60 Hz display is actually showing 60 smooth frames per second or an uneven 58-62 fps with visible hitching.

Using This With Other Display Tests

Pair this tool with our FPS test, refresh rate test, and ghosting test for a complete display workflow. FPS tells you the average rate, refresh rate tells you what the panel supports, ghosting tells you about pixel response time, and this test tells you whether the browser is actually delivering frames at the expected cadence. A panel can have zero ghosting, native 240 Hz support, and still feel choppy if the browser is dropping every fifth frame. For the full browser-vs-camera workflow, read the frame skipping test guide.

Frame Skipping Test FAQ

Common frame skipping test questions

How does the test detect a skipped frame?

It measures the timestamp delta between each requestAnimationFrame callback. After a 1-second calibration to learn your refresh rate, any frame whose delta exceeds 1.5 times the expected interval is counted as a skip. The number of skipped frames equals round(delta / expected) - 1.

What counts as "normal" skipping?

0-3 skips in a 15-second run is normal. Browser garbage collection, background tasks, and compositor events can occasionally steal a frame. 10+ skips suggests a real issue: a background CPU task, a browser extension hooking into every frame, or thermal throttling.

Why does Firefox show huge jitter?

Firefox rounds performance.now() timestamps to 1 ms by default under privacy.resistFingerprinting, which introduces artificial jitter. Check about:config and disable resistFingerprinting for accurate measurement, or use Chrome / Edge which do not round.

Do I need to run the test full-screen?

No, but keep the browser tab focused and visible. Browsers throttle requestAnimationFrame in hidden or minimized tabs, which will show as severe "skipping" that is just the throttle, not a real display issue.

Windows app

KeyboardTester.click is available from Microsoft Store

Install the official Windows app shortcut, or keep using the same free testing tools in your browser.

Download from Microsoft Store Download from Microsoft Store