Short answer

This free keyboard tester shows every key you press in real time, so you can confirm each one registers and spot dead, stuck, or chattering keys. It reads the browser's keydown/keyup events — nothing is installed and nothing is logged. Press keys and watch them light up; a key that stays dark is failing.

Keyboard / 01

Keyboard tester.

Press every key on your board. Each one fills in as you hold it. Keys that never light have a dead switch, a stuck membrane, or an OS-level remap. Try the rollover test next to confirm.

Notes

Reading event.code rather than event.key — so layout-independent (a Dvorak user pressing the physical Q still lights the Q key). Browser-suppressed combos (e.g. F11 fullscreen, Ctrl+W close tab) won't reach the page. Click the pad first to ensure keyboard focus.

Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PrSc ScrLk Pause ~ ` ! 1 @ 2 # 3 $ 4 % 5 ^ 6 & 7 * 8 ( 9 ) 0 _ - + = Backspace Ins Home PgUp NumLk / * − Tab Q W E R T Y U I O P { [ } ] | \ Del End PgDn 7 8 9 + Caps Lock A S D F G H J K L : ; " ' Enter 4 5 6 Shift Z X C V B N M < , > . ? / Shift ↑ 1 2 3 Enter Ctrl Win Alt Space Alt Win Menu Ctrl ← ↓ → 0 .

Some shortcuts are owned by the browser or OS (F11, Ctrl+T, Win key) and never reach this page — that's not a dead switch.

Last key
—
awaiting input
Held
0
Unique tested
0
Total presses
0
Untested
—
Modifiers
Shift Ctrl Alt Win Caps Num
Frequently asked

How does the keyboard tester actually work?

DeviceCheckOnline listens for the browser's keydown and keyup events on the page and reads the event.code property — the physical position of the key — rather than event.key, which depends on your software layout. Each press fills its on-screen counterpart and each release empties it, so you can hold a key, walk through the whole board, or test sticky-key behaviour. The tool also logs the time between events so you can spot stuck switches or unusually slow releases. Click the test pad first to ensure keyboard focus before pressing anything.

Why doesn't F11, Ctrl+W, or the Windows key register?

Some shortcuts are swallowed by the browser or the operating system before the page ever sees them. F11 toggles fullscreen, Ctrl+W closes the tab, Ctrl+T opens a new tab, and the Meta/Windows key opens the Start menu or app launcher. That is normal and does not mean the key is broken. To test those keys in isolation, use an OS-level event viewer, or remap the browser shortcut temporarily. Function-row media keys are also often intercepted by the firmware before reaching the OS.

What's the difference between Full, TKL and 60% layouts?

Full (104-key ANSI) includes the numpad, navigation cluster, function row and arrow keys. TKL (tenkeyless, 87 keys) drops the numpad to save desk space — popular for gaming. 60% (61 keys) also removes the function row, arrows and nav cluster; those keys are accessed through a Fn-layer. DeviceCheckOnline lets you switch layouts so the on-screen board matches your hardware. If a key on your physical board has no equivalent on the displayed layout, switch modes.

A key never lights up. How do I know if the switch is dead?

First confirm the page has focus (click the pad), try the key in another app to rule out a browser-blocked shortcut, then check for OS-level remaps like PowerToys Keyboard Manager, Karabiner or xmodmap. If the key still fails everywhere, the switch contact, the PCB trace or the membrane dome is likely the culprit. Re-seat the keycap, blow out debris, or — on hot-swap boards — pull and reseat the switch. Run the rollover test at /keyboard/rollover to check for matrix-blocking issues that can also mask presses.

Does layout-independent detection work for Dvorak or Colemak?

Yes. Because DeviceCheckOnline reads event.code (the physical position) rather than event.key (the mapped character), a Dvorak user pressing the physical Q key will still light the Q slot on the diagram. This means the test verifies hardware regardless of the software layout you've configured in the OS. The exception is firmware-level remaps stored on the keyboard itself — QMK/VIA, Logitech G Hub macros, etc. — which rewrite the keycode before it ever reaches the OS or browser.

Should I follow this up with another test?

If individual keys all register but you have problems while gaming or typing fast, run /keyboard/rollover to check how many simultaneous presses the matrix supports. If a key occasionally registers twice from one press, use /keyboard/chatter to measure the inter-event interval and confirm switch bounce. For typing accuracy and speed, /keyboard/wpm gives a benchmark, and /keyboard/latency measures the keystroke-to-screen delay of your full input chain.