Keyboard Tester
Press any key to verify it registers correctly.
Navigation
Navigation
Private by default
Files stay in your browser. Nothing is uploaded unless a tool says otherwise.
Press any key to see its details
0 of 74 keys tested
A physical keyboard is required to use this tool.
☕ This tool is free forever. If it saved you time, buy me a coffee.
When to Use This
Just unboxed a new mechanical keyboard? This is the first thing to open. Press every single key and watch it light up on the virtual layout — if a key does not register, you know before the return window closes. It is the fastest way to confirm that every switch is working and nothing got damaged in shipping.
The Keyboard Tester is equally useful for diagnosing problems on a keyboard you have been using for a while. Spilled coffee and worried about dead keys? Noticing double-typed characters (chattering)? Suspicious that your Ctrl+Shift+Z shortcut keeps dropping inputs? Fire up the tester and press the suspect keys — you will see exactly what the browser receives. Gamers use it to verify N-key rollover (NKRO) by holding down multiple keys simultaneously and confirming every one registers.
It is also a surprisingly handy tool for developers. You can see the exact event.key, event.code, and legacy keyCode values for any key press, which is invaluable when building keyboard shortcuts or custom key bindings in your applications.
Good to Know
Ghosting vs. rollover matters for gaming. Ghosting is when pressing three or more keys simultaneously causes a phantom fourth key to register. N-key rollover (NKRO) keyboards let you press every key at once without ghosting. Most gaming keyboards offer NKRO over USB; cheaper membrane boards often limit you to 6-key rollover (6KRO).
Chattering means a switch is failing. If you press a key once and it registers two or three times, the switch contacts are bouncing. On mechanical keyboards, this can sometimes be fixed by adjusting debounce settings in firmware. On membrane keyboards, it usually means the board is wearing out.
event.code is layout-independent. It always reflects the physical key position, so "KeyA" is the same physical key whether you use QWERTY, Dvorak, or AZERTY. This is the value developers should use for game controls and keyboard shortcuts.
Some keys are browser-restricted. Certain keys like PrintScreen, the Windows/Super key, and some function keys may be intercepted by the operating system before the browser sees them. If a key does not register here, it may still work fine in native applications.
Quick Reference
| Switch Type | Feel | Actuation Force | Best For |
|---|---|---|---|
| Linear (Red) | Smooth, no bump | ~45g | Gaming, speed typing |
| Tactile (Brown) | Bump, no click | ~55g | All-purpose typing and coding |
| Clicky (Blue) | Bump + audible click | ~60g | Typing enthusiasts (loud!) |
| Membrane | Mushy, quiet | ~55g | Budget boards, quiet offices |
| Topre | Smooth thock | ~45g | Premium typing experience |