Scale 100%

Online Keyboard Test

Press any key on the keyboard.
1 press 2 3 4 5+ Colors remain until you press Reset
-
-
-
-
-
-
0

About the Online Keyboard Test

Check every key of your keyboard in the browser: see keystrokes light up in real time, measure key rollover, detect ghosting and find stuck or chattering keys. Works with laptop keyboards, mechanical keyboards and external USB or Bluetooth keyboards alike.

What is key rollover and how do I test it?

Key rollover is the number of keys the keyboard can register at the same time. Press and hold multiple keys at once and count how many stay lit. 6-key rollover (6KRO) is typical for office keyboards; NKRO (unlimited) is common on gaming keyboards. Gaming matters: with low rollover, combinations like W+A+Shift+Space can drop a key.

What is keyboard ghosting?

Ghosting happens when the keyboard's matrix cannot distinguish certain key combinations, so it either drops a pressed key or registers a key you never pressed. Hold several combinations of nearby keys and compare the highlights with the keys you physically hold. The internal matrix layout varies by keyboard.

How do I find a stuck or chattering key?

After capture starts, a key that remains highlighted after release may indicate a stuck key or a missed release event. Chatter (one press registering multiple times) shows up in the counters: press each key once and check that its count increased by exactly one. The test also flags chatter automatically: a key that re-registers within 25 ms of its own release is marked with a red ! and counted in the Chatter card. Chattering switches are a common fault on worn mechanical keyboards.

Why do my Fn and some media keys not register?

On most keyboards, the Fn layer is handled inside the keyboard's own firmware and never reaches the operating system, so a browser cannot see it. That is a hardware design limitation, not a defect.

Does the test send my keystrokes anywhere?

No. Keystrokes are processed locally and are never uploaded. Export saves a report only when you choose it; that JSON file contains every key typed during the test, so do not type passwords while testing.

Help — Keyboard Test

Key testing starts automatically. Use Stop Keyboard Test or Escape to pause (Escape is counted as a tested key first), and Start Keyboard Test — or Space/Enter right after pausing — to resume. The key color shows how many times it has been pressed. Colors do not fade — they stay until you press Reset.

Modes:

• Keyboard — visual press heatmap.
• Rollover — N-key rollover / anti-ghosting test (hold several keys at once).

Key strip (above the keyboard): the most recent keys, newest on the left; it shows as many keys as fit the window width.

Form factor (toolbar dropdown): switch between Full 104, TKL 87, 75%, 65%, 60% and JIS 109. The ⌨ icon button toggles ANSI ↔ ISO: ISO draws the tall Enter with the # key (code Backslash) beside it and adds the extra key left of Z (IntlBackslash).

Lock indicators (Caps, Num, Scroll) — the LED dot on the Caps Lock / Num Lock / Scroll Lock keys lights green while that lock is active; the state is read from key and mouse events, so it is correct before you press anything.

Chatter: a key that re-registers within 25 ms of its own release is flagged as a suspected repeat with a red !, counted in the Chatter card and toasted. Browser timing and deliberate rapid input can also produce this flag; repeat the test before drawing a conclusion.

Export: The JSON report contains up to 10,000 recent key events (older ones are dropped and counted in eventsDropped), session counters, the keys of the selected layout that were never pressed (untestedKeys) and the unmapped key codes.

Platform quirks handled: Windows sends Print Screen as a key-up only — it is counted as one press. With an AltGr layout (e.g. Serbian Latin, German, Polish) Windows adds a fake left-Ctrl press to every AltGr press; it is detected and not counted. On macOS, keys released while ⌘ is held never send a key-up; they are released when ⌘ is released.

Privacy: All data stays exclusively in your browser; test data is never uploaded (strict CSP, no network requests). Settings are stored in localStorage under the kbtest: prefix: kbtest:scale (only after you move the slider or press Fit), kbtest:sound, kbtest:iso, kbtest:subLabels, kbtest:form and kbtest:mode. The color theme is shared by all BeogradPC tests under bpc:theme. Export creates a local JSON file that contains everything typed during the test — the character of every key press in the event log and the typed-key strip — plus your browser user agent, platform, language and screen size. Do not type passwords or other secrets while testing, or do not share that file.

Keys with ⚠ (Power, Sleep, Wake) — the operating system captures them before the browser; they cannot be tested from a web application.

Shortcuts blocked in both modes: anything that would scroll the page (arrows, Page Up/Down, Home, End, Space — including the numpad while Num Lock is off), F1–F12, Ctrl/Alt/Meta combinations and the Menu key's context menu. Keyboard mode additionally blocks Tab, Backspace and Enter; press Escape to release capture before navigating with Tab.