Test your keyboard

Press any key and watch it light up. Keystrokes are handled inside this browser tab only. Nothing is logged, stored or uploaded.

How it works

A keyboard rarely fails all at once. One key stops registering, another repeats, a modifier sticks down and everything you type comes out in capitals. Because you cannot see what the keyboard actually sent, it is hard to tell a hardware fault from a driver problem or a jammed keycap.

This page draws a keyboard layout and lights each key as the browser reports it. A key highlights while it is held and stays marked once it has been tested, so you can work across the whole board and immediately see which keys never responded. For each press it also shows the raw values the browser received (the key value, the physical code, and the legacy key code) which is what you need when a key registers as something other than what is printed on it.

Holding several keys at once tests rollover and ghosting: cheaper membrane keyboards can only report a limited number of simultaneous presses, and the counter shows exactly how many yours manages.

Keystrokes are read by the page and discarded. Nothing is logged, nothing is stored, and nothing is sent to a server, which matters more for a keyboard tester than for most tools, since a page that captures every key you press is a page you should be able to trust.

How to use it

  1. 1 Click the keyboard area below so it has focus.
  2. 2 Press every key in turn, each one lights up and stays marked as tested.
  3. 3 Watch the untested keys: anything still unmarked after you have pressed it is dead.
  4. 4 Hold several keys together to check rollover, then reset to run the test again.

Good to know

  • Keystrokes never leave your device, the test runs entirely in this browser tab.
  • A key that shows as held when you are not touching it is stuck, usually by debris under the cap.
  • Some shortcuts are captured by the operating system and never reach any web page.
  • The key code tells you what the keyboard really sent, which is how you spot a wrong layout.

Browser support

  • Chrome 94 and later
  • Firefox 93 and later
  • Safari 16.4 and later
  • Edge 94 and later

These are the oldest versions with everything the tool uses. They are worked out from the tool itself, so they change when it does.

Version numbers checked on 2026-09-04.

Rollover, ghosting, and why your keyboard drops the third key

Keyboards do not have a wire per key. That would need over a hundred connections, so keys are wired as a grid of rows and columns and the controller scans it, energising one row at a time and reading which columns respond. A key at the intersection of row three and column five is identified by being the thing that connects them. This is efficient and it has a specific failure.

Hold three keys that share rows and columns in the wrong arrangement, and the current finds a path through the other two that is indistinguishable from a fourth key being pressed. The controller reports a key nobody touched. That phantom is called ghosting, and the cheap defence against it is blocking: when the controller detects an ambiguous pattern it refuses to report the third key at all. Blocking is why a key you are definitely pressing does nothing, and it is far more common than ghosting because most manufacturers choose to drop input rather than invent it.

The fix in hardware is a diode at every key, which makes current flow one way only and removes the phantom path. Keyboards advertising N-key rollover have those diodes. Keyboards advertising six-key rollover usually do not; six is the number of simultaneous keys the standard USB keyboard report can carry, and is a protocol limit rather than a matrix one. This is why the distinction matters to anyone gaming or playing a software instrument, and why it is invisible to anyone typing prose, where three simultaneous keys is already unusual.

There is a second thing this tool tests that has nothing to do with rollover, which is layout. Browsers expose two different identifiers for a keystroke. One is the character produced, which depends on the layout, so the same physical key gives "a" on QWERTY and "q" on AZERTY. The other is the physical key position, which is the same everywhere. Testing has to track the physical position or the diagram lights up the wrong key for anyone not on a US layout, and where the browser can report your actual layout the printed legends are relabelled to match rather than showing you someone else keyboard.

Keystrokes are read to drive the display and are never stored or transmitted, which is worth stating plainly on a page of this shape, since a keyboard tester is exactly what a keylogger would look like.

Frequently asked questions

How do I find a dead key on my keyboard?

Press every key in turn and watch the layout below. Each key that registers stays marked as tested. Any key still unmarked after you have pressed it firmly is not reaching the browser at all, which usually means a hardware fault.

How do I check for a stuck key?

Take your hands off the keyboard and look at the held indicator. If a key is shown as held while you are not pressing anything, it is stuck down: often debris under the keycap, or a modifier latched by the operating system.

What is keyboard ghosting and rollover?

Rollover is how many keys your keyboard can report at the same time. Ghosting is when pressing several keys makes the keyboard report a key you did not press, or drop one you did. Hold several keys at once and watch the counter: many membrane keyboards stop at around six.

Why does a key show the wrong letter?

The code field shows the physical key and the key field shows what it produced. If they disagree with the printed legend, your operating system is using a different keyboard layout than the hardware, not a broken key.

Are my keystrokes recorded or sent anywhere?

No. The page reads key events to light up the layout and discards them immediately. Nothing is logged, stored or transmitted, and closing the tab clears everything.

Why do some shortcuts not register?

Combinations reserved by the operating system or the browser (closing a window, switching tabs, opening developer tools) are handled before any web page sees them, so they cannot be tested here.

Related tools

Your files are processed on your device and are not uploaded. You can verify this in your browser’s developer tools under the Network tab.