Keyboard Tester
Press any key and see it register instantly — key name, code, and a running log. Find dead, sticky or double-typing keys in seconds.
974 views
This key produced multiple events for one press — possible chatter (worn switch).
How It Works
Every physical key press fires a pair of KeyboardEvents in the browser — keydown when you press it, keyup when you release it. Each event carries two different identifiers, and the difference matters more than it looks: key is the character your layout produces (what actually gets typed), while code is the physical position of the switch on the board, fixed no matter which layout is active. This tool logs both, side by side, for every press.
That distinction is the whole point of a hardware test. Say you switch your OS keyboard layout from QWERTY to Dvorak and press the key in the top-left letter position. Under QWERTY that key reports key: "q"; under Dvorak the very same physical switch reports key: "'" — but in both cases code stays KeyQ, because code describes the switch, not the character. If you are trying to find out whether a physical switch is dead or chattering, code is the number that tells the truth regardless of layout. If you are checking that your layout mapping is correct — say, after installing a new keyboard driver or language pack — you need to compare what key reports against what you expect for that layout, which is a different question entirely.
As you press keys, the page lights up the character or key name instantly, appends the physical code, and keeps a running badge list of every distinct key already tested, so a full sweep of the board is easy to track. A press counter increments on every registered keydown; if a single physical press produces more than one count, that is chatter, not a testing artifact.
What to Know
- Dead key: nothing appears at all for that physical position — check code, not key, since a dead switch produces no event of either kind.
- Chatter: the counter jumps by two or more for one physical press — a worn mechanical switch or a failing membrane contact bouncing the signal.
- OS/browser-reserved keys: Fn, some media keys, and certain Windows/Command combinations are intercepted by the operating system or browser before they ever reach a web page's JavaScript — silence here does not always mean a hardware fault.
- Ghosting and rollover: pressing several keys at once can hit limits of a cheap keyboard's internal matrix; if simultaneous combinations silently drop a key, that is an anti-ghosting/N-key rollover limitation, not necessarily damage.
- Everything stays local: events are read and rendered by JavaScript in your browser only — no keystroke is ever sent over the network, and the log clears the moment you leave the page.
Frequently Asked Questions
A key shows nothing here — is the keyboard broken?
First test in another app to rule out software. Some keys are reserved by the operating system or browser (Fn, some media keys, Windows/Command in certain combos) and never reach a web page — that is expected, not a fault. If the same physical key is silent in every app and every layout, the switch or its cable connection is the more likely cause.
What is keyboard chatter?
A worn switch registering two or more presses for one physical hit — visible here as the counter jumping by more than one for a single press. Mechanical keyboards can often be fixed per-switch by cleaning or replacing the contact; membrane boards usually need full replacement.
What's the difference between "key" and "code", and which should I trust for testing?
"key" is the character your current layout produces; "code" is the physical switch position and never changes with layout. To test hardware — is this physical key alive — watch code. To verify your layout mapping is correct, compare key against what that layout should output.
Are my keystrokes recorded or sent anywhere?
No. Events are handled by JavaScript in your browser and shown on screen only; nothing is stored, logged, or transmitted anywhere.
Why does a key that works in other apps show nothing here?
A handful of keys are intercepted by the operating system or browser chrome before any webpage's JavaScript ever sees them — some media keys, Fn combinations, and certain shortcut chords behave this way on every website, not just this tool.
Similar Tools
Report a Problem
Keyboard Tester
Comments
No comments yet — be the first to write one!