spacebar clicker
Keyboard CPS Test
Bind one safe physical key, run a 5, 10, or 30 second Keyboard CPS test, and view total presses, speed, best second, consistency, and repeat events.
select
0 independent presses
No local runs.
Listening is active only while binding or testing Space. History stores no text or key sequence; repeat events are separated.
spacebar cps test
Open the related tool with a different measurement purpose.
spacebar key test
Open the related tool with a different measurement purpose.
Binding one target key
Enter binding mode, then press the one key you want to test. The page shows a readable event.key label and the physical event.code used for matching. Letters, digits, Space, Enter, arrows, and ordinary keys are supported. Tab, Escape, modifiers, browser controls, and high-risk function keys are blocked so the tool does not undermine navigation or common system shortcuts.
event.key and event.code
event.key describes the produced character or meaning and can change with layout, language, or modifiers. event.code identifies a physical keyboard position such as KeyA or Space. This tool matches code for a stable physical target and uses key only as a readable label. The distinction is important when comparing different layouts.
Independent presses and repeat
A valid count is a target-key keydown after release. Long-hold repeat events and a second keydown while held are counted separately as repeat behavior, not speed. Editable controls are excluded. Best second uses fixed per-second buckets in this compact tool, while the dedicated Spacebar CPS analysis offers a deeper sliding-window and pacing report.
Privacy and listener lifecycle
The page listens during explicit binding and active test states only. It does not inspect ordinary browsing input, save text, or store a continuous sequence. Aggregate local history contains only target code, duration, count, and CPS, and can be cleared. Leaving the state removes or disables listeners.
Device and comparison limits
Key size, switch design, location, rollover, keyboard scanning, connection, operating system, and browser scheduling can change output. Avoid treating two different keys or devices as identical conditions. The tool is for local browser comparison and does not create separate A-key, Enter-key, brand, browser, or keyboard-model pages.
Comparing keys carefully
Complete several clean rounds at one duration before changing the target. Keep technique constant, and remember that a large Space key is not mechanically equivalent to a small letter key. Best-second output shows a burst, average CPS describes the whole round, and consistency describes per-second variation. Repeat totals show that held events entered the browser stream, but do not diagnose a switch by themselves.
Five seconds favors a short burst, ten seconds is a compact baseline, and thirty seconds adds pacing variation. Use the same duration for key-to-key comparisons and review local history before clearing it. A code such as KeyA refers to the physical position, while the displayed key may change under another layout; record both when reproducing a test. Restricted keys remain unavailable even if a browser would technically emit them, because preserving Tab navigation, Escape behavior, and modifier shortcuts is more important than offering every possible target.
The page does not listen between binding and active test states, and its history is deliberately aggregate. It cannot reconstruct a word, password, sentence, or continuous typing pattern from a code, duration, total, and CPS value. Clearing history removes those local summaries. If localStorage is unavailable, the active test still works without persistence. Public Spacebar leaderboards remain separate because an arbitrary key has different mechanics and eligibility rules.
Frequently asked questions
Why are Tab and modifier keys blocked?
They are essential for accessibility or common shortcuts and should not be captured as speed targets.
Does the test save what I type?
No. It matches one selected event.code only during active states and stores no text sequence.
Why show both key and code?
key is readable and layout-dependent; code identifies the physical target position.