Keyboard Tester
Test every key on your keyboard with a live visual layout. Pressed keys light up in real time; tested keys stay marked so you can systematically verify every switch. Perfect for diagnosing dead keys, checking a new mechanical keyboard, or confirming a repair.
Press any key to see event details.
About Keyboard Tester
This keyboard tester displays a full US QWERTY layout that lights up in real time as you press keys. Each pressed key highlights in the primary color; keys you have already tested stay marked in green, so you can systematically verify every switch on the keyboard. A progress counter shows how many keys have been tested out of the total, and the details panel on the right displays the KeyboardEvent properties for each keypress — key, code, keyCode, which, location, plus modifier states. Ideal for diagnosing a specific dead key on a laptop keyboard, testing a new mechanical keyboard before returning it, verifying a repair, or debugging keyboard-shortcut code as a developer.
The tool runs entirely client-side using standard KeyboardEvent listeners — no drivers, no browser extensions, no permissions required. Keys are captured at the browser level, which means the tester works with any physical layout (QWERTY, AZERTY, Dvorak) because it tracks the physical key code (KeyQ is always the top-left letter key regardless of what character it produces). Certain keys the browser reserves for itself (F1 for help, F11 for fullscreen) are prevented from firing shortcuts inside this tool so you can still test them. The Fn key on laptops is handled by keyboard firmware below the OS level and never fires a browser event — that is a hardware limitation, not a bug in this tool.
How to Use
Click anywhere on the page to focus, then start pressing keys.
Currently-pressed keys highlight in blue; already-tested keys stay green.
The details panel on the right shows the last key event — useful for developers checking KeyboardEvent.code vs key vs keyCode.
Progress bar shows how many keys you have tested. Click Reset to clear and start over.
Frequently Asked Questions
Why do some keys not register?
Several possibilities: (1) the key is physically dead — that is the problem you are diagnosing. (2) The browser is intercepting the key for a shortcut (F1 opens help, Ctrl+W closes the tab). This tool prevents the most common ones but not all. (3) The key sends a signal your OS filters out (media keys on some laptops).
What is the difference between key, code, and keyCode?
'key' is the character produced ('a', 'A', 'Shift'). 'code' is the physical key location ('KeyA', 'ShiftLeft'). 'keyCode' is the legacy numeric code — deprecated but still widely used. For modern JavaScript, prefer 'code' for physical layout (e.g. game controls) and 'key' for character input.
Does this work on laptop keyboards?
Yes — the layout shown matches a standard US QWERTY keyboard. Regional layouts (AZERTY, DVORAK, Cyrillic) still work because the tool tracks physical key codes (KeyQ is the top-left letter key regardless of what character it produces).
Why is the Fn key not registering?
The Fn key on most laptops is handled by the keyboard's firmware, not by the OS. It never fires a keyboard event, so no browser tool can detect it. Fn is not a real testable key from the software's perspective.
Is my keyboard input logged anywhere?
No. Every key event is processed locally in your browser and discarded. Nothing is uploaded, stored, or logged. Test whatever you want — passwords, sensitive text — freely.