Skip to main content
CompressNConvert

Keyboard Latency Test

See every key press and plot keyboard event-to-frame latency on a live line graph, with median, average, fastest, slowest, P95, and consistency results.

Timing samples stay in this browser tab

This is a browser event-to-next-frame estimate, not a laboratory measurement of total hardware input lag. Use it for controlled comparisons on the same computer, display, and browser.

Press-to-frame test

Collect at least 20 samples for a useful comparison. Up to 100 recent samples are retained.

Latest key press

Click here, then press any key repeatedly

Held-key repeat is ignored. Press Tab to leave the test area.

Recent key presses

Newest first

Pressed keys will appear here.

Waiting for samples

Use the test area above to begin.

Latency results

All figures describe DOM input-event to next animation-frame timing in this page.

Samples
0

Maximum 100 recent samples

Latest

Key: —

Median

Best typical-response comparison

Average

Mean of all retained samples

Fastest

Lowest observed sample

Slowest

Highest observed sample

P95

95% of samples are this fast or faster

Consistency

Standard deviation; lower is steadier

Latency over recent inputs

Each point is one measured key press.

Oldest → newest

The latency line graph will appear after your first input.

Complete tool guide

Keyboard Latency Test guide

Use this online keyboard latency test to estimate how long the current browser takes to carry a keydown event into the next painted frame, then compare the median, average, 95th percentile, and consistency across repeated presses.

Your input is processed in the current browser tab and is not sent to the application server.

Why use this tool?

  • Measure repeated keyboard-to-browser frame response without installing software.
  • See typical delay separately from occasional slow outliers.
  • Compare browsers, display refresh rates, power modes, and background-load conditions.

Common use cases

  • Checking browser responsiveness before a rhythm game or competitive game
  • Comparing a wired, wireless, or Bluetooth keyboard under the same conditions
  • Finding browser, extension, power-saving, or main-thread performance problems

How to use it

  1. 1

    Click the keyboard test area so it has focus.

  2. 2

    Press and release any ordinary key at least 20 times; held-key repeats are ignored.

  3. 3

    Review the median for typical response and P95 for slower outliers.

  4. 4

    Reset, change one condition, and repeat with the same browser and display.

Controls and results explained

Keyboard test area

The page records keydown events only while this area is focused. Tab is never blocked, so you can leave the tester using standard keyboard navigation.

Latest sample

The newest event-to-next-frame estimate. One result can vary with the exact point in the display refresh cycle, so judge a run from at least 20 samples.

Median and average

Median is the middle result and the best headline for typical response. Average includes every sample and moves more when a background task causes a large delay.

Fastest and slowest

These show the range observed in the current run. The fastest result is not a guaranteed hardware minimum, and one unusually slow result may be a scheduling interruption.

P95 latency

The 95th percentile is at least as fast as roughly 95% of recorded samples. It exposes recurring slow frames that a good median can hide.

Consistency

This is the standard deviation of the samples. A smaller number means response is steadier; a larger number indicates variable browser or system scheduling.

Pressed-key display and history

The large keycap flashes the latest key as soon as its keydown event arrives. Recent key presses then list the measured delay beside each key so you can connect every point on the graph to an input.

Latency line graph

The line follows recent samples in order, each dot represents one key press, and the dashed reference shows the run median. Sharp peaks reveal slow frames that summary averages can hide.

Reset samples

Clears the current statistics and chart so you can make a controlled comparison after changing the keyboard connection, browser, refresh rate, or power mode.

What is measured

The estimate starts from the DOM keydown timestamp and ends at the next requestAnimationFrame callback, approximating browser event-to-next-paint delay.

What is not measured

A web page cannot isolate the keyboard scan, USB or Bluetooth transport, operating-system processing, display pixel response, or total physical key-to-photon latency.

Refresh-rate effect

At 60 Hz a frame lasts about 16.7 ms; at 120 Hz it lasts about 8.3 ms. The point within that cycle strongly affects each individual sample.

Practical tips for better results

  • Collect at least 20–30 presses and compare medians rather than the single fastest sample.
  • Keep this tab visible and close games, video, and other busy tabs before testing.
  • Disable battery-saving modes and keep the same display refresh rate for comparisons.
  • Change only one variable at a time, such as wired versus Bluetooth.

Frequently asked questions

Does this show my keyboard’s true hardware latency?

No. It estimates DOM-event-to-next-frame delay inside the browser. True key-to-photon hardware latency requires external high-speed measurement equipment.

Why do results jump by about one frame?

A key can arrive anywhere within the display refresh cycle. Browser scheduling can place feedback in the current or following frame, producing steps close to one frame duration.

Which number should I compare?

Use the median as typical response, P95 for common worst-case response, and consistency to judge variability. Use the same device, display, browser, and sample count.

Are the keys I press saved or uploaded?

No. Only temporary timing values and the latest key label are kept in this tab. Nothing is uploaded, and Reset or a refresh clears the run.

Keep working

Continue with another focused tool from the same collection.