Keyboard Ghosting Test
Hold several keys down at the same time and see exactly which of them your browser registers — the practical way to find combinations that get dropped.
Simultaneous key registration test
Click or focus this panel, then hold several keys down at the same time. Nothing is uploaded.
0
keys held right now
Live keyboard map
The keyboard map appears here once the page scripts load.
Held right now Registered at least once ◆ Target of the selected combination ✕ Did not register on the last attempt
Legends are only labels. A key’s physical position, and the
code value the browser reports for it, do not change when you switch
layout — so a combination behaves the same whichever legend set you pick.
Preset combinations
Pick one, then hold all of its keys down together. The target keys are outlined on the map. Release everything to log the attempt.
Gaming movement sets
Adjacent-key sets
Result
No combination selected. You can also just hold any keys you like on the panel above — the maximum simultaneous count is tracked either way.
Attempt log (0)
| # | Combination | Registered | Did not register | Other keys seen | Outcome |
|---|---|---|---|---|---|
| No attempts yet. | |||||
“Registered” is the largest group of the intended keys that the browser reported as held at the same moment during that attempt.
Measurement environment
Timer resolution: — High-resolution timing: — Browser: — Platform: —
This test reports which keys registered rather than how fast they arrived, so clock precision does not change the pass or fail outcome. Your browser and platform do matter: they decide which combinations are intercepted before a web page sees them. How we measure.
What this test cannot tell you
This runs in a web browser, so it only sees keyboard events after your operating system has already delivered them. It cannot inspect the key matrix, the scan, the keyboard firmware, or the USB or Bluetooth report, and it cannot see any combination the OS or the browser claims for itself before the page runs.
That means a key missing from a result is not proof that your keyboard blocked it, and a complete result is not proof that the keyboard would report the same combination through a different driver, cable, hub or operating system. Confirming a hardware limit takes a second computer, or dedicated instrumentation.
Ghosting and key blocking are not the same problem
Most pages that call themselves a ghosting test are really testing for blocking, and the difference is worth getting right.
Ghosting is a key registering that you never pressed. In a keyboard matrix without isolating diodes, certain groups of simultaneous presses complete an ambiguous electrical path, and the controller can report a key nobody touched. Genuine ghosting is uncommon on keyboards sold today: most designs either add diodes or refuse to report the ambiguous key rather than invent one.
Blocking, also called jamming, is the opposite — a key you did press is not reported at all. When the controller cannot distinguish a real press from a phantom one, dropping it is the safe choice. This is what almost everyone actually means when they say their keyboard ghosts, and it is what this test can observe: the result lists which of your intended keys reached the browser and which did not.
So read a partial result as “this combination was not fully reported”, not “a phantom key appeared”. If a key you are certain you did not touch shows up in the held list, that is the rarer case and the one worth repeating a few times before you believe it.
How to read a combination that did not fully register
A missing key has at least four plausible explanations, and this test cannot tell them apart:
- The keyboard matrix blocked it. The combination is one your keyboard cannot resolve unambiguously, so the controller withholds a key.
- The operating system or the browser intercepted it. Combinations involving Ctrl, Alt, Shift, the Windows or Command key, or the function row are routinely claimed by the OS, the browser, or a background application. Shortcuts such as Alt+Tab, Command+Tab and Ctrl+W never reach JavaScript at all.
- A modifier changed the events. Holding a modifier can change the
keyvalue delivered for other keys, and on macOS holding Command commonly suppresses thekeyupfor other keys — which makes a key look released while it is still physically down. - They were not all down at the same instant. This test records the largest group of the target keys held simultaneously. Roll through them quickly instead of pressing them together and the peak group will legitimately be smaller.
None of those outcomes means the keyboard is faulty. Repeat an attempt several times, and try the same combination in a different browser and on a different computer before drawing any conclusion about the hardware.
Why these particular key sets
W, A, S and D are the default movement keys in most first-person games, so they are the group people notice first. Adding Space, Shift and Ctrl turns it into the realistic worst case: seven keys held together, three of them modifiers that the system may want for itself.
Q+W+E+R, A+S+D+F, E+D+C and Y+U+I+O are groups of physically adjacent keys. Matrix wiring does not have to follow the printed layout, but neighbouring keys frequently do share a row or a column, which makes adjacent groups a sensible place to look for a limit. On inexpensive membrane boards these sets are often among the first to drop a key.
What “anti-ghosting” means on a spec sheet
Anti-ghosting is a marketing term, not a standard. It can mean anything from “a hand-picked group of gaming keys is wired so those specific presses survive” to “every key on the board has its own diode”. The phrase alone tells you very little, which is why testing the combinations you personally use is more informative than reading the box.
Rollover is the related number. USB keyboards commonly report six regular keys plus the modifier keys in the standard report format, which is enough for typing and for most movement combinations. Boards advertised as N-key rollover aim to report every pressed key at once, and generally use a larger, non-standard report to do it. If you want the maximum your browser observes rather than a pass or fail on specific combinations, the N-key rollover test is the counterpart to this page.
Why a browser only sees part of the picture
Everything on this page comes from keydown and keyup events. By
the time those exist, the switch has actuated, the matrix has been scanned, the firmware has
built a report, the report has crossed USB or Bluetooth, and the OS has decided which
application should receive it. A web page sees only the last link in that chain.
Some setups add links of their own. Remote desktop sessions, virtual machines, KVM switches, on-screen keyboards, and keyboard remapping utilities all rewrite key events, and any of them can change a result here without the keyboard being involved. If a combination fails, testing it directly on the machine the keyboard is plugged into removes most of that doubt. For the full measurement model, see the methodology page, or start with the guide on what keyboard ghosting is.
Related keyboard tests
Frequently asked questions
What is keyboard ghosting?
Ghosting is when a keyboard reports a key that nobody pressed. It happens when several simultaneous presses complete an ambiguous path through the key matrix and the controller cannot tell which keys are really down. Genuine ghosting is uncommon on keyboards sold today, because most designs either add isolating diodes or refuse to report the ambiguous key instead of inventing one.
What is the difference between ghosting and key blocking?
Ghosting is an extra key appearing that you did not press. Blocking, also called jamming, is a key you did press not being reported at all. Blocking is far more common and is what most people actually mean when they say their keyboard ghosts. This test mainly shows blocking: it lists which of your intended keys reached the browser and which did not.
Does a failed combination mean my keyboard is broken?
No. A missing key can mean the keyboard matrix blocked that combination, that the operating system or browser intercepted it before the page saw it, that a modifier changed the events being delivered, or simply that the keys were not all physically down at the same instant. This test cannot tell those four causes apart, so treat a partial result as a combination to investigate rather than as a fault.
Which key combinations are most likely to fail?
Combinations of keys that sit close together in the matrix fail most often, which is why clusters like Q+W+E+R or A+S+D+F are the classic test cases and why W+A+S+D with a modifier is the one gamers notice. Adjacency on the board is not the same as adjacency in the matrix, so the failing sets are rarely the ones you would guess. If you want the maximum number of keys your browser registers at once rather than which specific sets work, that is a different question — use the N-key rollover test.
Why do combinations with Ctrl, Alt or the Windows key often fail?
Those combinations are frequently claimed by the operating system, the browser, or a background application before a web page can see them. Shortcuts such as Alt+Tab, Command+Tab and Ctrl+W never reach JavaScript at all. A modifier combination that does not appear here has usually been intercepted rather than blocked by the keyboard.
Does this test measure my keyboard hardware?
No. It reports what your browser received as keydown and keyup events. Everything before that point — the switch, the matrix scan, the keyboard firmware, the USB or Bluetooth report and the operating system's input stack — is invisible to a web page. Confirming a hardware limit requires testing the same keyboard on another computer or using dedicated instrumentation.