Device test · Input

Keyboard Tester

Press a key and watch for its event on the diagram or in the extra-keys list. Use the rollover test to compare simultaneous key counts, or try three-key combinations in the ghosting matrix. No download is needed, and nothing you type leaves your browser.

Key Code Held0 Max rollover0 Non-mod peak0 Tested0 Combos0/8 Blocked0 Chatter0 Capsoff

Tab, Enter and Space are being tested instead of operating page controls. Press Escape to use Tab for navigation.

Key rollover / NKRO test

Hold several keys together, then add another. Max rollover records the largest set of keys this page tracked as held; Non-mod peak leaves out Shift, Ctrl, Alt and the OS keys. Try the combinations you use in games or shortcuts as well as a larger spread.

Hold several non-modifier keys, such as letters, to start the rollover check.

Most keys reported at once:

Modifiers in that set: none

Most non-modifier keys reported at once:

These counts describe the events that reached this page, not the keys under your fingers. A high count does not establish NKRO, and a plateau does not identify the keyboard's limit or the cause of a missing event.

Keyboard ghosting test

Hold each three-key combination below for about a second. Watch "Reported now": a row records "all 3 reported" when the page tracks all three together. If you held the whole combination but a key did not appear, release it and choose "Held all 3 — report blocked" for that row.

CombinationReported nowResultIf a key never arrives

No combination run yet.

A missing event does not show why a key failed to appear. "Blocked" is your report that you held all three; the row also shows the largest subset the page recorded together.

What this test cannot see

An untested key means no matching event has reached this page. The event may have been intercepted, may be unsupported, or may never have been sent. Some shortcuts can also switch tabs or take you away from the test.

How this test works

The tester listens for keydown events and marks keys as released when it receives a release event. The event's code reports a key position; key gives the character or action reported for your layout. The diagram uses code with US labels, so an AZERTY A can light the Q position while the Key readout shows the character typed. Codes outside this reference layout appear in the extra-keys list.

The classic USB boot-keyboard report has six ordinary key slots and separate bits for modifiers. That is why the page keeps a non-modifier peak as well as the all-key peak. Each peak stores its own set of keys, since the two records may come from different moments. The browser does not expose the underlying report format here, and one successful set does not show that every other combination will work.

The guided combinations use nearby keys and common game controls, not a map of your keyboard's internal wiring. They omit Ctrl, Alt and OS keys to avoid common system shortcuts. A row records "all 3 reported" as soon as all three are tracked together. If you report a blocked combination, the row keeps that report beside the largest subset recorded so far. A later attempt that registers all three replaces it with "all 3 reported".

Frequently asked questions

How do I test key rollover or NKRO here?
Hold several keys together and watch Max rollover and Non-mod peak. Max rollover includes modifiers; Non-mod peak excludes Shift, Ctrl, Alt and the OS keys, which have separate bits in the classic six-slot USB boot-keyboard report. Try the combinations you use, not just the largest spread you can hold. NKRO means all keys can register together; reaching ten here is not enough to establish that. These are browser-event counts, not a measurement of the keyboard's physical limit or report format.
What does the ghosting matrix show?
Each row asks you to hold three keys together. The row records "all 3 reported" when the page tracks the full combination. If you held all three but one did not appear, use "Held all 3 — report blocked". That records your report alongside the largest subset the page saw together; it does not identify why an event was missing. The list below the matrix shows other non-modifier keys outside these combinations, but cannot tell an accidental press from an unintended event.
Which keys might not reach this test?
Fn is often handled by the keyboard itself without sending a separate event. The operating system can intercept combinations such as Alt+Tab or Command+Tab, and this page leaves Ctrl and Command shortcuts active. Print Screen can report only on release on Windows. An F-row key may send a media event instead of F1–F12; try F-Lock or Fn if that happens. A key that never appears is left untested, not marked as broken.
Does this work with AZERTY, QWERTZ, or other layouts?
The diagram uses KeyboardEvent code values with US labels rather than matching the character printed on each key. On AZERTY, for example, an A can light the Q position; the Key readout shows the character reported by your layout. Codes outside the diagram appear in the extra-keys list. Layout, remapping and browser support can affect the events you see.
My key double-types. Is it broken?
Not necessarily. Chatter counts non-repeat keydown events for the same key code less than 30 ms apart; it flags possible chatter, not a broken switch. Press the suspect key slowly several times and compare a nearby key. Firmware, the connection, remapping software and hardware can all produce duplicate events. Follow the keyboard's service instructions before cleaning or removing keycaps.

Related tools