Tools

Keyboard Key Test Tool

Just type: pressed keys highlight in real time and get marked as tested automatically, with chattering detection and max-rollover stats built in. Ideal for diagnosing dead keys, double-typing and multi-key conflicts. Works instantly, no permissions needed.

Tested0 / 104
Presses0
Max rollover0
Suspected chatter0
Duration0.0s
Untested Pressed Tested Suspected chatter

Currently pressed:(无)

Note: some keys (e.g. the Win key, some Fn combos) are handled by the OS first and the browser may never see them — "untested" does not mean broken for those keys. "Suspected chatter" is a heuristic indicator for reference.

Recent events

Time Code Key Event Status

🔒 Privacy: keyboard events are used only for live display on this page. No input content is recorded, nothing is uploaded, nothing is logged — everything clears on refresh.

About this tool

Just start typing: each physical key highlights live while pressed and is marked tested after release. Press all 104 keys one by one — any unmarked key is your suspect.

Chattering detection: a key that fires again within a very short window after release (default 30ms, adjustable) is flagged as suspected chatter — the classic symptom of worn or oxidized mechanical switches. OS auto-repeat (event.repeat) from holding a key is excluded, so normal long-presses are never misjudged.

Rollover: hold several keys at once (e.g. WASD+Shift+Space in games) and the page shows the current and peak number of simultaneously pressed keys — a practical way to check your keyboard\u2019s n-key rollover behavior.

Just cleaning your keyboard? Use the Keyboard Cleaning Mode to block accidental shortcuts while wiping, then come back here to verify every key afterwards.

常见问题

Which keyboards are supported? Laptop, USB, Bluetooth?

All of them. Any keyboard that produces KeyboardEvent in the browser — laptop built-ins, USB wired, Bluetooth/2.4G wireless, mechanical or membrane — works with this tool, since it relies only on standard browser events, independent of brand or connection.

How do I restart a full test round?

Click the "Reset test" button above the keyboard to clear all markings, statistics and the event log, then test again key by key. Refreshing the page also works but loses your progress.

Are untested keys necessarily broken?

No. The browser only sees events that reach the page: a fully dead key produces none, but keys intercepted by the OS (Win key opening Start, some Fn combos, certain media keys) also produce none. Distinguish "not yet pressed" from "pressed but swallowed by the OS" — verify at the OS level if in doubt.

What is chattering and how is it detected?

Chattering means one physical press registers as multiple inputs, usually from oxidized or worn mechanical switch contacts. Detection here is heuristic: the same key re-triggering within a short window after release (default 30ms; 20/30/50/100ms selectable) is flagged as suspected chatter. OS auto-repeat (event.repeat) from held keys is excluded to avoid false positives on long presses.

What is max rollover useful for?

It reflects your keyboard\u2019s anti-ghosting capability: hold as many keys as possible (e.g. start from WASD and add Shift, Ctrl, Space, arrows), and the recorded peak is the actual simultaneous-key count under current conditions. Many keyboards ghost beyond 2–6 keys in certain combos — this stat exposes such limits directly.

Is any key data uploaded or recorded?

No. Key events live only in this page\u2019s memory for rendering; nothing is written to server logs and nothing links to your actual typed content (the tool reads physical key codes, not your text). Everything clears on refresh — safe to test even while typing into password fields or chats.

A key fails the test — what are the usual causes?

Common causes, roughly in order: (1) debris or dust under the keycap (pulling the cap and cleaning often fixes it); (2) oxidized/worn mechanical switch or membrane contact (shows as chatter or no response); (3) loose ribbon cable (laptop keyboards, peripheral cables); (4) driver or remapping software. Clean first, cross-check on another port/device, then re-test here to isolate hardware vs software.