Keyboard ghosting & rollover test
Hold down more and more keys and watch the counters below. "Currently held" is how many the browser sees held right now; "Max held this session" is the highest that ever reached. That climbing (or stalling) number is the practical way to check a rollover claim on your own keyboard, on your own connection.
What "ghosting" actually is, mechanically
Almost no keyboard gives every key its own dedicated wire — that would mean over a hundred separate connections back to the controller chip. Instead, keys are arranged in a grid of rows and columns (a matrix), and the controller scans it: energise one row, read which columns report a connection, move to the next row, dozens of times per second. A single key press is unambiguous — one row, one column. The trouble starts at three or more keys held together, when the specific rows and columns involved can form a rectangle that makes a fourth, unpressed key look electrically identical to a real one being held. The controller reports that phantom key exactly as if it were real — that's ghosting. A related, less dramatic failure is blocking: rather than reporting a wrong key, the controller just refuses to report one of the real ones, so a keypress silently does nothing.
The fix is a diode behind every single switch — a one-way electrical valve that stops current finding its way around the matrix through an unintended path. A keyboard with a diode on every key is NKRO capable: every combination of keys can be told apart from every other, so nothing ghosts and nothing blocks, no matter how many are held. It's a hardware decision baked into the circuit board, which is why no firmware update can retrofit it onto a board that shipped without it.
A step-by-step method for testing your own keyboard
- Reset first. Click Reset above so the tested-key marks don't carry over from earlier testing and confuse what you're looking at.
- Test ordinary typing first. Type a sentence at a normal pace with one finger at a time. Every key you touch should mark as tested and the "currently held" count should stay low (1, briefly 2 during fast rollover between keys) — this alone rules out a keyboard so broken it can't type at all.
- Test your actual use case, not a random combination. If you play a first-person game, hold your real movement keys plus a jump key plus a modifier at the same time — for example W, A, Space and Shift together — and watch whether "currently held" reaches 4 and stays there, or drops.
- Push past your use case. Try to hold 6, then 8, then as many keys as you physically can across the board at once (both hands, spread out). Note the highest number "Max held this session" reaches, and whether it plateaus at a specific figure across several attempts — that plateau is your practical rollover limit on this connection.
- Repeat on your actual connection. If the keyboard is wireless, or normally goes through a hub, test on that setup specifically — rollover is frequently lower over Bluetooth or a shared hub than on the keyboard's own direct USB cable.
- Watch for false readings, not just low ones. If "currently held" ever reads higher than the number of keys your fingers are actually touching, that's the browser reporting a key event your keyboard's own controller invented — a true ghost, and evidence the board handled that specific combination badly.
Combinations worth testing on purpose
| Combination | What it checks |
|---|---|
| W + A + Space + Shift | The most common real gaming combination: two movement keys, jump, and sprint held together. |
| Ctrl + Shift + a letter | A modifier-heavy combo used constantly by keyboard shortcuts and some game abilities. |
| Arrow keys, all four at once | A cluster of keys physically close together — a classic ghosting trap on cheaper matrices. |
| Five adjacent letter keys (e.g. Q W E R T) | Keys sharing a single row — another combination that stresses row/column ambiguity. |
| Every key you can reach with both hands | The practical ceiling — this is what "Max held this session" is measuring. |
Frequently asked questions
How many keys should a gaming keyboard be able to hold at once?
There's no single number every game needs, but a board sold as full NKRO should be able to hold every key on it simultaneously with none dropped or ghosted. In practice, most first-person and fighting games rarely need more than 5-7 keys held at the exact same instant (movement keys, a modifier, and one or two action keys), which is why 6-key rollover over USB — a very common, cheaper spec — covers most people. Where it falls short is deliberately mashing many keys at once, or games that bind a lot of simultaneous holds to a small key cluster.
Is 6-key rollover enough for gaming?
For most games, yes — 6 simultaneous keys plus modifiers covers the overwhelming majority of real play, and 6-key rollover has been a USB HID baseline for a long time specifically because it comfortably covers ordinary typing and gaming. It falls short for genres that intentionally demand many keys held together, and for players who rest extra fingers on nearby keys out of habit. If you regularly bind five or six actions to keys near each other and press them together, testing your specific combination here is worth the thirty seconds it takes.
Does a keyboard's rollover depend on whether it's wired or wireless?
Yes, often. NKRO is frequently only guaranteed over the keyboard's own USB connection; the same board can drop to a much lower rollover over Bluetooth, over a 2.4GHz wireless dongle, or when plugged into a cheap USB hub instead of directly into the computer. If rollover matters to you, test on the exact cable, dongle, or hub you actually use day to day, not just once out of the box.
My keyboard fails at 3 held keys but WASD + Space works fine — is it broken?
Probably not broken — this is normal matrix-keyboard behaviour, not a fault. WASD plus Space happen to sit on rows and columns of a typical matrix that don't collide, so that specific combination registers cleanly on boards that would ghost on a different, less common combination. Rollover isn't one number that applies to every possible key combination on a non-NKRO board; it varies by which specific keys are involved, because it's a property of the physical wiring grid, not a single global limit.
Can a firmware update or software fix ghosting?
Not by itself. Ghosting on a keyboard with no per-key diodes is a property of the physical wiring matrix — firmware can choose how to handle an ambiguous combination (report nothing rather than a wrong phantom key, for instance), but it can't add information the wiring never sent. Genuine NKRO requires a diode behind every switch, which is a hardware design decision made when the keyboard's circuit board was built, not something a driver or firmware update can retrofit.