smolanalytics
menu
log inStart free
glossary · analytics term

What is a rage click?

The frustration signal you can measure without asking anyone, several fast clicks on the same spot because something isn't responding.

A rage click is a burst of rapid clicks on the same element or spot within a short window, typically three or more clicks in a couple of seconds. It is a behavioral signal that a user expected something to happen and it didn't, so they clicked harder, which flags a broken button, a slow response, or a control that looks interactive but isn't. Detection is simple: the analytics library watches for a cluster of clicks landing on roughly the same coordinates or the same element inside a small time window, and marks that cluster as a rage click. It is one of the few pure frustration signals you can measure without asking anyone, because it captures intent (a user trying repeatedly) rather than an opinion. A related signal is the dead click: a click on something that produces no effect at all, no navigation, no state change, no network call, which usually means the user thinks an element is clickable when it is not. Rage clicks tend to point at things that are broken or too slow; dead clicks tend to point at things that look interactive but aren't. Both matter because they are early, honest evidence of UI problems that never show up in a conversion funnel, the user did not abandon a step, they got stuck on one, and the fix is often a single button or a loading state. To be useful, a rage click has to carry the element that was clicked, so you can go straight to the specific control that is frustrating people instead of knowing only that frustration exists somewhere.
how it's detected

How a rage click is detected

The detection is mechanical, no guessing. The library watches clicks as they happen and flags a cluster:

  • ·Same target. The clicks land on the same element, or roughly the same coordinates, not scattered across the page.
  • ·Short window. Typically three or more clicks inside about two seconds, fast enough that it is clearly repetition, not deliberate separate actions.
  • ·The element is kept. The recorded rage click carries the element that was clicked, so you can go to the specific control, not just know frustration exists somewhere.
a close cousin

Rage clicks vs dead clicks

The two get grouped together as frustration signals, but they point at different problems. Rage clicks are repeated fast clicks, the user is trying again because something feels broken or slow, so they usually flag a control that is failing or a response that is too slow.

Dead clicks are a single click on something that does nothing at all, no navigation, no state change, no request, so they usually flag an element that looks clickable but isn't (a styled label, a disabled button with no feedback). Together they surface UI problems that never appear in a funnel, because the user did not abandon a step, they got stuck on one.

how smolanalytics does it

Captured automatically, with the element

smolanalytics captures rage clicks and dead clicks through autocapture, from one snippet, no tracking code. Each is recorded with the element that was clicked (the full $elements selector chain), so you can ask which controls people rage-click on and jump straight to the offending button.

You do not have to go hunting either. The verdict, on the dashboard and in the morning brief, surfaces this kind of thing unprompted, so a button that a chunk of users are rage-clicking gets named as something to fix, not left buried in a chart.

It does this without session replay or heatmaps (deliberately), it gives you the signal and the element, not a stack of videos to watch. See every feature.

Common questions

What is a rage click in simple terms?
It is when someone clicks the same thing several times fast because it isn't doing what they expect. You have done it yourself: a button that seems stuck, so you click it three or four times in a second. Analytics can detect that pattern and flag it as a frustration signal, pointing you at the exact control that is failing people.
How is a rage click detected?
By watching for a cluster of clicks on the same element or roughly the same coordinates within a short time window, usually three or more clicks in about two seconds. When the library sees that burst, it records a rage click and keeps the element that was clicked, so you know which specific control caused it, not just that frustration happened somewhere.
What is the difference between a rage click and a dead click?
A rage click is repeated fast clicking on the same spot, the user is trying again because something feels broken or slow. A dead click is a single click on something that produces no effect at all, the user thought an element was clickable when it wasn't. Rage clicks usually flag broken or slow controls; dead clicks flag things that look interactive but aren't. Both are frustration signals you get without a survey.
Why do rage clicks matter?
Because they are honest, early evidence of a UI problem that a conversion funnel never shows. A funnel tells you a user dropped off a step; a rage click tells you they got stuck on a specific button and gave up. The fix is often small, a broken handler, a missing loading state, a control that looks clickable but isn't, but you only find it if something records the frustration and the element behind it.
How does smolanalytics capture rage clicks?
Autocapture records rage clicks and dead clicks automatically, with the element that was clicked (the full $elements selector chain), from one snippet, no tracking code. Because the element is captured, you can ask which controls people rage-click on and go straight to the offending button. It does this without session replay or heatmaps, it is the signal, not a video to sit and watch.
Start the 14-day trial
no credit card · or self-host free forever (MIT)

keep reading