Guide

N-key rollover and ghosting explained, with a test you can run now

Rollover is how many keys your keyboard can report as held at the same time. Ghosting is different and worse: a key you never pressed registers anyway. Both come from the switch matrix inside the keyboard. You can demonstrate a rollover limit in a browser by holding keys one at a time and watching where new presses stop appearing, but a browser cannot prove a keyboard has full n-key rollover, because the operating system and the browser can each drop keys before the page ever sees them.

Run the test nowLight up pressed keys on a virtual keyboard and find dead or stuck keys.Run the keyboard test

The matrix, in one paragraph

A keyboard does not have a wire per key. The keys sit on a grid of rows and columns, and the controller scans the grid to find which intersections are closed. That is cheap and reliable for one key. For three keys forming three corners of a rectangle on the grid, the controller sees a pattern that is indistinguishable from the same three keys plus the fourth corner. That phantom fourth key is ghosting.

Manufacturers solve it by adding a diode per key, which makes each intersection one-directional and removes the ambiguity. A board with diodes throughout can report any combination, which is what n-key rollover means. Blocking, where the controller simply refuses the ambiguous combination rather than inventing a key, is the cheaper answer and is what most anti-ghosting boards actually do.

Rollover levels

Rollover levels and what they mean in use
LevelSimultaneous keysWhere the limit comes from
2KROTwo, plus modifiersThe matrix, with limited or no diode coverage. Fine for typing, limiting in games.
6KROSix, plus modifiersThe USB HID keyboard boot protocol report, which carries six key slots and a modifier byte. This is a protocol ceiling, not a matrix limit.
NKROEvery key, in principleFull diode coverage plus a report format that is not bound to six slots. Often a firmware toggle rather than an always-on state.

The six-key figure comes from the USB HID keyboard boot protocol report format. The rest describes the matrix behaviour above.

Running the test honestly

  1. Open the keyboard test and press one key at a time, holding each one down as you add the next.
  2. Start with keys that are far apart on the board, for example Q, then P, then Z, then M. Keys spread across the matrix are less likely to collide.
  3. Note the number of keys lit at once when a new press stops appearing. That is the number this chain of hardware, operating system and browser will deliver.
  4. Now repeat with keys that are close together, such as Q, W and E, and then A, S and D. If the ceiling drops when the keys are neighbours, you are seeing a matrix limit rather than a protocol limit.
  5. Watch for a key lighting up that you did not press. That is ghosting, and it is worth recording: it is a genuine hardware limitation, not wear.

What this test cannot prove

If you reach six keys and stop, three explanations fit equally: the keyboard is 6KRO, the keyboard is NKRO but running in a compatibility mode, or something between the keyboard and the page dropped the seventh. The browser cannot tell them apart, because it only sees what arrives.

If you get past six, you have proved something real: more than six simultaneous keys reached the page, so the keyboard is not limited to the boot protocol report. That is a positive result you can trust.

This asymmetry is worth stating plainly because most online keyboard testers do not. The test can prove keys are being dropped. It cannot prove they are not.

Run the test nowLight up pressed keys on a virtual keyboard and find dead or stuck keys.Run the keyboard test

Does any of this matter for you?

For typing, no. Touch typing rarely holds more than three keys at once, and 2KRO handles that.

For games, it depends on the game. A movement key plus a modifier plus two action keys is four, which most anti-ghosting boards handle. The combinations that break are dense clusters in one corner of the keyboard, which is exactly where WASD and its neighbours live, so the problem lands precisely where it is most noticed.

For music software and anything treating the keyboard as an instrument, full rollover matters a great deal, and that is the use case NKRO was really built for.

Ghosting versus blocking, and how to tell

True ghosting, where a key you never touched lights up, is rare on anything sold in the last decade. What you are far more likely to see is blocking: you hold three keys, press a fourth, and nothing happens at all. The controller detected an ambiguous pattern and refused rather than guessing.

In the keyboard test, the difference is visible immediately. Ghosting adds a lit key you did not press. Blocking means the key you did press never lights. Blocking is the safer behaviour and is what anti-ghosting marketing usually describes.

Frequently asked questions

Can a browser prove my keyboard has n-key rollover?

No. It can prove your keyboard delivered more than six simultaneous keys, which rules out the boot protocol limit. It cannot prove there is no limit, because the operating system and browser can drop keys before the page sees them.

What is the difference between ghosting and blocking?

Ghosting registers a key you never pressed. Blocking refuses a key you did press. Both come from the same matrix ambiguity, and blocking is the response almost every modern keyboard chooses.

Why do some keyboards need NKRO switched on?

Full rollover uses a report format that older systems and some firmware setups do not accept, so keyboards often ship in the compatible 6KRO mode with a toggle. Check your keyboard's documentation for the key combination or software switch.

Do modifiers count towards the rollover limit?

Not in the boot protocol: Shift, Control, Alt and Meta travel in a separate modifier byte, which is why the limit is described as six keys plus modifiers rather than six keys total.

Does a mechanical keyboard automatically have better rollover?

No. Rollover comes from diodes in the matrix and the report format, not from the switch type. A membrane keyboard with full diode coverage outperforms a mechanical one without it.

Is rollover different over Bluetooth?

It can be. Wireless keyboards sometimes use a more constrained report over Bluetooth than over their own dongle or a cable. If your rollover ceiling changes when you switch connection, that is the reason.

Why does the ceiling change depending on which keys I press?

Because the limit is in the matrix, and the matrix cares about geometry. Keys spread across the grid rarely collide; keys clustered together often do. That is why the test asks you to try both.

My keyboard drops keys during fast typing. Is that a rollover problem?

Usually not. Rollover is about keys held at the same time, and fast typing releases each key before the next. Dropped keys during fast typing point at a failing switch or a wireless link, both of which the keyboard test will show as missing presses.

Run the test nowLight up pressed keys on a virtual keyboard and find dead or stuck keys.Run the keyboard test

Related

This guide belongs with the keyboard test. If you are working through a whole machine rather than one device, the full check walks you through every test in order.