CPS test — clicks per second

Pick a duration, then click the pad as fast as you can until time runs out. You'll see your click count and live CPS while the test runs, and your exact score — clicks divided by seconds, to two decimal places — the instant it ends.

Duration

No score yet for 5s

Ready — 5s test

Time left 5.00s
Clicks 0
Live CPS 0.00

What CPS actually measures

CPS stands for clicks per second: the number of times you press and release a button, divided by how long you spent doing it. The arithmetic is deliberately simple —

CPS = clicks ÷ seconds, shown to two decimal places. If you land 27 clicks in a 5-second round, that's 27 ÷ 5 = 5.40 CPS.

The "seconds" side of that division is the duration you picked — 1 through 100 — not however many milliseconds a timer happened to measure in real time. A round is a fixed-length window by design, so the number you get always divides by exactly the length you chose, and two runs at the same duration are always comparable to each other.

The click count only includes presses that land inside the window. The click that opens the round starts the clock and counts as click #1; anything after the window closes is ignored, even if your finger is still moving.

Clicking techniques people use to raise CPS

The pad above measures whatever motion you actually make. A few distinct techniques exist for producing more clicks per second than an ordinary press-and-release, each with its own tradeoffs.

Regular clicking

A normal, deliberate press and release per click, driven by the finger's own muscles. It's the most controllable and the most sustainable technique, and for most people it plateaus somewhere in the high single digits of CPS over a several-second window.

Jitter clicking

Tensing the forearm so a fast, small muscle tremor vibrates the clicking finger against the button, instead of actively pressing each time. It can raise the count substantially over a short burst, but it's a genuinely tense, awkward motion — most people can't hold it comfortably for long, and the sustained tension is a real repetitive-strain consideration, not a myth to wave away.

Butterfly clicking

Alternating two fingers rapidly on the same button instead of relying on one finger's muscle tremor. It's mechanically a different motion from jitter clicking — less about tension, more about raw alternation speed — and tends to be easier to sustain, though it still depends heavily on the button being wide enough, and the switch responsive enough, for two fingers to register independently.

Drag clicking

Dragging a fingertip across the button's surface so the switch's own mechanical spring rebounds and re-triggers it several times from one continuous motion, rather than lifting and pressing again for each click. How well this works depends almost entirely on the specific switch inside a given mouse — some rebound cleanly enough to register several clicks per drag, others won't register more than one no matter the technique. Because the result depends on hardware rather than skill, some competitive rulesets treat it differently from the techniques above; check the rules for whatever context you're measuring yourself against.

None of these techniques change what this page measures. The pad counts click events exactly as your browser reports them, whatever produced them — it has no way to detect, verify, or penalise a particular technique, and it doesn't try to.

Why click rate has a ceiling: debounce, polling and the OS

A click isn't reported to the browser the instant your finger moves — it passes through several stages first, and each one imposes its own ceiling on how many discrete presses per second can actually get through.

Polling rate

A USB mouse doesn't stream continuously; the host asks it for its current state at a fixed interval, commonly 125 times a second (125Hz) by default, with many mice offering higher configurable rates such as 500Hz or 1000Hz. Two physical presses landing inside the same poll interval can only be reported as whatever state the mouse settles into by the next poll — not as two separate events.

Switch debounce

A mechanical switch's contacts don't close cleanly — they bounce briefly before settling, and left alone that bounce would register as several rapid clicks instead of one. Firmware filters this out with a debounce delay that holds the reported state steady for a short window after each transition. That filtering is what makes an ordinary click reliable, but it also means two genuine presses closer together than the debounce window can get merged into one — a large part of why drag clicking's actual click count depends so heavily on the specific switch.

The browser and the OS

After the driver, input events are queued and delivered to the page on the browser's own event loop, and anything reading a running total — like the live counter above — is redrawn on the next animation frame, typically aligned to the display's refresh rate. None of this changes how many clicks actually occurred, but it does mean the live counter updates in discrete steps rather than continuously.

This isn't a flaw specific to this tool. Every click-counting page in a browser, on any site, sits downstream of the same polling and debounce chain — it's a property of USB input generally, not of the JavaScript reading it.

Use cases & limitations

Where this is useful

  • Gaming warm-ups. A quick burst before a session that rewards fast, repeated input — idle and clicker games, rhythm games, or anything where tapping a key or button quickly matters.
  • Comparing techniques on your own hardware. Run the same duration with a regular click, then again with an alternate technique, and compare the two numbers on your own mouse rather than trusting a general claim.
  • Curiosity and casual comparison. Comparing a score with a friend on the same duration, or seeing whether today's number beats yesterday's.
  • A quick sanity check on a mouse. If a button feels unusually sluggish or seems to register twice for one press, a short run here can surface it fast.

What this tool can't tell you

  • Whether you'd pass an anti-cheat or tournament check. This is a casual self-measurement, not a verification tool, and it has no way to detect which technique produced a given click.
  • Anything medical. It is not a diagnostic tool for repetitive strain injury or any other condition. If a technique causes pain, stop — a number on a screen isn't worth an injury.
  • Your device's true ceiling. Polling rate, debounce and the browser's own event delivery all sit between your finger and the count, so the number reflects your hardware and browser as much as your technique.
  • A single, authoritative "real" CPS. Run-to-run variance is normal — treat the best of several runs as more meaningful than any one run.

Frequently asked questions

What exactly counts as one click?

Every press-and-release the browser reports as a click event — a full mouse click, a tap on a touchscreen, or (with keyboard mode on) a spacebar press. Holding the button down without releasing it doesn't count more than once; you have to actually let go and press again, the same as a real click.

Why is my CPS lower than I expected?

Two separate limits sit between your finger and the number on screen: how fast your mouse's switch and firmware can register and debounce a new press, and how fast your finger can physically move. Most people plateau in the high single digits for a natural, single-finger click; getting meaningfully faster usually means switching technique rather than clicking harder.

What's a good CPS score?

There's no official benchmark, and this page isn't going to invent one — but as a rough feel: a relaxed, natural click sits around 4–6 CPS, a fast deliberate click for most people tops out somewhere in the 6–10 range, and scores well above that usually come from one of the alternate techniques below rather than a single finger clicking harder.

What is jitter clicking?

A technique where you tense your forearm and let a fast, small muscle tremor vibrate your finger against the mouse button, rather than pressing and releasing deliberately each time. It can push CPS well above a normal click, but it's a genuinely tense, awkward motion — sustaining it for long is uncomfortable for most people, and the repeated tension is a real strain consideration, not a myth.

What is butterfly clicking, and is it different from jitter clicking?

Yes — butterfly clicking alternates two fingers rapidly on the same button instead of vibrating one finger, which is a mechanically different motion and typically easier to sustain, though still fast and repetitive. It depends heavily on the button being wide enough, and the switch responsive enough, for two fingers to register independently.

Does this work on a touchscreen?

Yes — the pad responds to taps the same way it responds to clicks. Touch input has its own ceiling too: touchscreens sample at a fixed rate (commonly 60–120Hz depending on the device), so an extremely fast tap can, in principle, land between two samples the same way an extremely fast mouse click can land between two poll cycles.

Is my best score saved anywhere other than my browser?

No — it's written to your browser's own local storage, one entry per duration, and read back only by this page in this browser. It never leaves your device, isn't tied to an account, and clearing your browser data clears it too.

Why do I get a different number every time I run the same test?

Because you're a different measuring instrument each time. Micro-variations in grip, fatigue, warm-up, and plain chance in exactly when a press lands relative to your mouse's polling interval all move the number by a few tenths. Run it a handful of times and treat the best of the set as more meaningful than any single run — that's also why this page tracks a best score per duration instead of just the last one.

Is there a way to test with a spacebar instead of a mouse?

Yes — turn on keyboard mode above the pad, and Space registers a click from anywhere on the page, not just while the pad has focus. It's a genuinely different measurement from a mouse click, driven by a different finger and a different mechanism, so don't expect the two numbers to match.

Go further