Practice

Keyboard tester

Press any key and watch it light up. Tested keys stay marked, so you can walk the whole board and find the switch that stopped responding.

0 / 76keys tested
esc
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
~`
!1
@2
#3
$4
%5
^6
&7
*8
(9
)0
_-
+=
delete
tab
Q
W
E
R
T
Y
U
I
O
P
{[
}]
|\
caps lock
A
S
D
F
G
H
J
K
L
:;
"'
return
shift
Z
X
C
V
B
N
M
<,
>.
?/
shift
fn
control
option
command
command
option

Last key

Nothing pressed yet.

  • Browser and system shortcuts (⌘Q, ⌘W, ⌘Tab, F11) are taken before the page ever sees them, so they cannot be tested here.
  • fn / 🌐 and Touch ID are handled by macOS itself and never reach the browser. They are hatched out and left out of the count, so 100% is actually reachable.
  • Caps lock sends one event when the light comes on and another when it goes off, so it stays lit for as long as caps lock is engaged.

This is a plain keyboard tester built around the Apple Magic Keyboard. Start the test, press a key, and the matching cap lights up. Keys you have already hit stay marked in green, and the counter above the board tells you how much of the keyboard you have covered — which makes it easy to walk every row and find the one switch that no longer responds.

Both keyboard standards are here. The US (ANSI) board is the familiar one; the Japanese (JIS) board is narrower on the space bar and adds five keys the US layout does not have: ¥ next to delete, ろ beside the right shift, ] on the home row, and 英数 / かな either side of the space bar. Its return key is the L-shaped one. Switch between them to see exactly what moves.

Each standard comes in two models — the compact board and the one with a numeric keypad, which adds the F13–F19 row, the navigation cluster and the keypad itself. Coverage is counted per model, so switching to the full-size board simply asks for the extra keys rather than resetting what you have already tested.

What the readings mean

The readout under the keyboard shows the raw browser event. `event.code` is the physical key — it says `KeyQ` no matter which layout or input method is active, and it is what this page uses to decide which cap to light. `event.key` is the character that key would produce right now, so it changes with shift, with the layout, and with your input source.

Holding a key produces auto-repeat events; those are counted separately rather than treated as new presses, so a repeating key never inflates the "most at once" figure. That figure is a quick rollover check: press five or six keys together and see how many the keyboard actually reports.

Anything still held after about three seconds is flagged amber. Modifiers are exempt, since holding shift or command for a while is perfectly normal — but a letter key that stays lit after you let go is exactly the symptom of a sticking switch.

Keyboard checks out? Put it to work: Japanese typing test · Romaji table · Play the Yamanote Line