CPSKIT / BLOG

Which key am I pressing? How a browser key checker reads your keyboard

Short answer: press the key once in the keyboard check and it shows a key name for the physical key — something like KeyA, Digit1, Space or ShiftLeft — along with how many times it went down and up. That name is the key’s position on the keyboard, not the character it types, so it stays the same when you switch layouts. The check reads the key events your browser receives, so it cannot show a key the operating system or the keyboard firmware handles before the page sees it — the Fn key is the usual example.

What the checker shows for each press

Click into the pad in the keyboard check and press a key. For every key you press, the page lists:

  • The key name as a chip — the browser’s code value for that physical key.
  • Down and up counts — one clean press is 1 down / 1 up. Held-key auto-repeats are not counted as extra presses.
  • Which keys are held right now, and the last combination observed when several were down together.

Two keys behave differently on purpose: Tab finishes the run so focus can move on, and Esc cancels it. Neither is a fault.

Why the name is not the letter on the keycap

Browsers report two different things for a key press, and the checker shows the first:

  • code — the physical key, named by its position on a standard keyboard. The key in the “A” position on a US QWERTY board is always KeyA, whatever your layout makes it type.
  • key — the character or action the press produces after your layout, Shift and other modifiers are applied. The same physical key gives a or A, or a different letter on another layout.

That is why an AZERTY keyboard, where the key labelled A sits where QWERTY has Q, shows KeyQ when you press the key marked A: the position is what is being named. It is also why the same physical key reads the same in the checker on a Dvorak or other layout. If you want to know where a key is, that is the more useful name; if you want to know what it typed, look at the text it produced.

How to read the names

Key you pressName shownRead it like this
LettersKeyA … KeyZPosition on a US layout, not the printed letter
Number rowDigit0 … Digit9The row above the letters
Number padNumpad0 … Numpad9, NumpadEnterA separate key from the number row, so the two are easy to tell apart
Shift, Ctrl, AltShiftLeft / ShiftRight, ControlLeft, AltLeft / AltRightLeft and right are reported separately
Windows / Command keyMetaLeft / MetaRightThe operating system may act on it before the page sees it
Space, Enter, BackspaceSpace, Enter, BackspaceNamed as written
Arrows and navigationArrowUp, Home, End, PageUp, DeleteNamed as written
Function rowF1 … F12May trigger a browser or system action instead, or a media function on laptops

These names come from the browser’s standard key-event definitions, not from a measurement of your keyboard, so treat the table as a reading guide: what you see on screen is the authority for your own machine.

Common surprises

  • Number row versus number pad. Digit1 and Numpad1 are different keys. If the pad’s keys show nothing useful or the wrong name, check that Num Lock is on and that you are not pressing the row above the letters.
  • Left and right modifiers. Shift, Ctrl and Alt each report their own side, so you can see which one is held or stuck.
  • AltGr. On some layouts and systems, AltGr does not arrive as one key. Windows commonly reports it as a Ctrl plus right-Alt pair, so a single press can list two keys as held.
  • Extra keys on some boards. International keyboards add keys such as the extra key next to the left Shift on ISO layouts; they appear under their own names, not as a standard letter.
  • A key that shows the wrong name. If pressing the key marked X always shows the name for a different key, the cause is usually a remap, a layout mismatch or keyboard software rather than a broken switch — check those before opening the case.

What a web page never sees

A page only gets the events the browser passes on, so some things stay invisible however the checker is built:

  • Fn and firmware-handled keys. Most keyboards process Fn themselves and never send it as a key, so it will not show up as its own entry.
  • Reserved shortcuts. Combinations the browser or the operating system keeps for itself — closing a tab, switching windows, screenshots — may never reach the page, so a “missing” key is often the system, not the keyboard.
  • Media and system keys. Volume, brightness and similar keys may be handled by the system, or reported under browser-specific names, or not at all.
  • Rollover and ghosting. The checker lists what arrived; it does not measure how many simultaneous keys your keyboard can report or prove that a combination is or is not ghosting.
  • Timing and hardware health. Switch bounce, polling rate and scan speed are not exposed to a web page. See what a browser reports about polling rate.

Using it to track down a bad key

Once you can read the names, the checker answers a practical question quickly: does this physical key send anything at all, and does it send it once? Press the suspect key a single time and read the chip and the counts. No entry at all points toward a dead or sticky key; 2 down / 2 up from one tap is the key chatter pattern, and if it is the space bar the spacebar guide covers it. For a running count rather than per-key events, the keyboard counter measures presses per second. How a run is judged, and what a completed observation does and does not certify, is explained on the method page.

← All posts

Your recent tests

Up to 30 runs on this browser. Clearing site data also removes them.

No completed or interrupted runs saved yet. Start with a quick test.