TestKey

What this keyboard test measures

Definitions, rules and limits behind every number on the site. Last updated 1 November 2026.

Which signals are used

The tests listen to the browser’s keydown and keyup events and identify each key by KeyboardEvent.code, the physical key position. key is shown for information only. Events that belong to input-method composition (isComposing or keyCode 229) are logged but not counted. Events with an empty or Unidentified code are shown as unidentified and never mapped to a key.

Definitions

TermDefinition
ReceivedAt least one non-repeat keydown, or a keyup without a preceding keydown, for that code.
Marked by clickA key the user clicked or tapped on the picture. It counts toward progress and is listed separately in the report; a later physical press replaces the mark.
HeldCodes that had a keydown and no keyup yet. Cleared when the page loses focus or the tab is hidden.
PressesNon-repeat keydowns. Auto-repeat (repeat: true) never adds a press.
Peak rolloverThe largest number of codes held at the same moment during the session.
Best togetherIn the rollover test: the largest set of the chosen keys held at the same moment. Keys pressed one after another do not add up.
Possible chatterA non-repeat keydown that follows the release of the same key by less than the chosen threshold (30, 40, 50 or 80 ms; default 40 ms). Modifiers, composition and events after focus loss are excluded.
Not testableKeys that never reach web pages, such as Fn. They are shown dashed and excluded from the total.

Platform behaviour handled by the test

  • When Command is released on macOS, every other held key is released too, because macOS may not send their keyup events.
  • Caps Lock is released automatically shortly after it is pressed, because some systems report its lock state instead of each press.
  • Keys reported only on release, such as Print Screen on Windows, are counted on release.
  • Switching between Windows and Mac layouts keeps every received code; the total is recalculated for the new layout.

What is not measured

A browser receives key events after the keyboard, the USB or Bluetooth connection and the operating system have processed them. The test therefore does not report input latency, polling rate, scan rate, actuation point or rapid trigger settings, and it does not claim N-key rollover certification. A missing key means that no signal reached the page; it is not proof that the key is broken.

Privacy by design

Key events are kept in memory in the open tab. The text report, image and share link contain layout, key positions, counts and the chatter summary, never the typed text or the sequence of keys. See the privacy page.

Sources