A rage click is when a visitor clicks the same spot rapidly several times in a row — usually three or more clicks within about a second — because something didn't respond the way they expected. A dead click is a single click on something that does nothing at all: an image, a label, a badge or a heading that looks interactive but isn't. Both are your website telling you, in the visitor's own body language, exactly where it confuses or fails people. Neither shows up in pageview analytics. This guide explains what causes each, how to find them on your own site, and the specific fix for every common case — with a real report as the example.
Key takeaways
- A rage click is three or more rapid clicks on one spot (something is broken or unresponsive); a dead click is a click on something that does nothing (something looks clickable but isn’t).
- Rage clicks usually need an engineering fix; dead clicks usually need a design fix or missing information.
- Fix friction on money pages first — a rage-clicked coupon button at checkout outranks anything on the homepage.
- Pair each count with the session recording to see the ten seconds before the frustration.
- Google Analytics doesn’t detect either by default; behavior analytics tools detect both automatically.
Rage clicks vs dead clicks: the difference that matters
| Rage click | Dead click | |
|---|---|---|
| What it looks like | 3+ fast clicks on the same spot | One click with no visible response |
| What the visitor feels | Frustration — "why isn't this working?" | Mild confusion — "oh, that's not a link" |
| Usually means | Something is broken, slow, or disabled without explanation | Something looks clickable but isn't |
| Revenue risk | High — often on buttons in the buying path | Medium — lost intent and wasted attention |
| Typical fix | Repair the bug, add feedback, explain the disabled state | Make it clickable, or make it stop looking clickable |
The distinction matters because the fixes point in opposite directions. Rage clicks are almost always an engineering or feedback problem — the thing should work and doesn't, or it works but gives no sign. Dead clicks are almost always a design expectation problem — the page promised interactivity it doesn't deliver. Treat them as two separate to-do lists.
What a real friction report looks like
Here's the Rage & Dead Clicks report from Clicktics on a demo ecommerce store. The tracking script detects both patterns automatically from the click stream — no tagging, no setup per page — and groups them by page and by the exact element that was hit:

Read this report the way an engineer reads an error log — from the top of the "most-hit elements" list down:
- "Apply" — 23 rage clicks on /checkout. The coupon button. Visitors type a code, click Apply, nothing visibly happens, and they hammer it. Either the button fails silently, the code validation is slow with no spinner, or invalid codes produce no error message. On the checkout page, every one of these is a buyer on the edge of abandoning.
- img.hero-illustration — 31 dead clicks on the homepage. The big hero image. Visitors expect it to lead somewhere — a product, a collection, a video. It doesn't. That's 31 moments of intent the page threw away.
- "Waterproof 20K" — 17 dead clicks on the product page. A spec badge. Shoppers want to know what 20K means. A tooltip or a link to a short explanation turns a dead click into reassurance.
- "XL" — 14 rage clicks. An out-of-stock size that looks selectable. The visitor clicks, nothing happens, clicks again harder. The fix is visual: grey it out and say "sold out — notify me".
- "Shipping calculated at next step" — 12 dead clicks. People clicking a text label because they want the shipping cost now. That's not a UI bug — it's a business signal that hidden shipping costs are making buyers nervous.
Five line items, five fixes, each one specific enough to hand to a designer or developer today. That's the value of friction data: it converts "the site feels clunky" into a prioritized ticket list.
The 7 most common causes of rage clicks
- Silent failures. A button whose click handler throws a JavaScript error. To the visitor it simply does nothing. These are the most valuable rage clicks to find because they're pure bugs — pair the friction report with JavaScript error tracking and you'll usually see the error firing on the same element.
- No loading feedback. The action works but takes two seconds with no spinner, so the visitor assumes it failed and clicks again — sometimes submitting a form or order twice.
- Disabled states that don't look disabled. A "Continue" button that stays grey-but-not-quite-grey until an invisible requirement is met (an unchecked terms box, a field failing validation further up the page).
- Unavailable options that look available. Sold-out sizes, unavailable dates, plans you can't downgrade to.
- Tiny tap targets on mobile. Visitors tap, miss by four pixels, tap again. Common on close buttons, carousel arrows and quantity steppers.
- Overlays blocking the real button. A cookie banner, chat bubble or sticky bar sitting invisibly on top of the button the visitor is trying to press.
- Slow pages. On a slow connection the first click lands before the JavaScript has loaded, so nothing is wired up yet. The visitor keeps clicking until the page catches up.
The 5 most common causes of dead clicks
- Images that look like links — product photos, hero banners, logos in a "trusted by" strip.
- Underlined or coloured text that isn't a link — often inherited styling from a page builder.
- Cards where only the title is clickable — visitors click the card body, which does nothing.
- Icons and badges with no explanation — feature icons, spec badges, certification logos.
- Labels people want to expand — "Shipping calculated later", "Terms apply", "Plus taxes". Clicked because the visitor wants information you're withholding.
Notice that the last category isn't really a UI mistake. Dead clicks on withheld information are one of the clearest pieces of evidence you'll ever get about what your visitors need to know before they buy.
How to find rage and dead clicks on your own site
Step 1: Turn on automatic detection
You can't spot these in Google Analytics, because they don't create pageviews or events unless someone has coded them in advance. You need a behavior tool that watches the raw click stream. In Clicktics, rage-click and dead-click detection runs automatically from the same ~24 KB script that powers session recordings and heatmaps — install it once and the report starts filling as visitors arrive. (New to the category? Our explainer on how session replay works covers what the script captures and what it masks.)
Step 2: Sort by page, then by element
Start with the page list. Friction on the homepage is annoying; friction on the cart, checkout or signup form is expensive. Fix friction on money pages first, even if the counts are lower. Then go to the element list: the same element appearing on several pages (a shared header button, a global chat widget) is usually one fix with sitewide impact.
Step 3: Watch the recordings behind the numbers
A count tells you where; a recording tells you why. Open a few sessions where the rage clicks happened and watch the ten seconds before them. Did the visitor fill in a field that failed validation off-screen? Did a modal open behind the cookie banner? Did the page shift just as they tapped? Our step-by-step guide to seeing what visitors do on your website covers how to filter recordings to exactly these moments.

Step 4: Cross-check with the heatmap
The click heatmap shows the same story at the level of the whole page: hot zones on non-interactive elements are dead clicks seen from a distance. If the heatmap glows on your hero image while the "Shop now" button beside it stays cold, the fix is obvious.

How to fix each type — a practical playbook
| What you find | Fix | How to confirm it worked |
|---|---|---|
| Rage clicks on a submit or apply button | Check the JS error log for that element; add a loading state; show an explicit error message for invalid input | Rage count on that element drops to near zero within a week |
| Rage clicks on an unavailable option | Visually disable it; add "sold out" text; offer "notify me" | Clicks move from the option to the notify button |
| Rage taps on mobile controls | Grow tap targets to at least ~44×44 px; add spacing | Mobile friction falls; mobile funnel step improves |
| Dead clicks on images | Link the image to the obvious destination | Dead clicks become real navigation; product views rise |
| Dead clicks on badges/icons | Add a tooltip or short explainer | Fewer exits from the product page |
| Dead clicks on withheld info ("shipping later") | Show the information up front | Cart-to-checkout conversion improves |
One rule keeps this disciplined: change one thing per element, then let a week of traffic tell you whether it worked. The friction counts are easy to compare week over week, and a working fix makes the line item disappear from the top of the list.
Why friction data is worth more than it looks
Rage and dead clicks are a small share of all clicks, which makes them easy to dismiss. But they're concentrated on exactly the visitors you most want: people actively trying to do something. A visitor who never clicks anything left for a dozen reasons you can't fix; a visitor who rage-clicks your Apply button was trying to buy. In our walkthrough of why sites get traffic but no conversions, broken and confusing elements on the checkout path rank among the most common — and most fixable — causes of lost revenue. Friction reports are the fastest way to find them.
There's also a compounding effect. Fixing friction rarely produces one dramatic jump; it produces a series of small improvements on different steps of the funnel. Five modest lifts multiply, which is why teams that review friction weekly tend to outperform teams that redesign annually. We break down that math in the conversion playbook.
A 20-minute weekly friction routine
- Minutes 0–5: open the Rage & Dead Clicks report. Note the top three elements and whether any are new since last week.
- Minutes 5–15: watch two recordings for each new top element — just the 30 seconds around the friction.
- Minutes 15–20: write one ticket per element: what's happening, the fix, and the number to check next week.
That's it. Twenty minutes a week, and your site stops quietly frustrating the people who were trying hardest to convert.
Frequently asked questions
What counts as a rage click?
Several rapid clicks on the same spot within a short window — commonly three or more clicks within about a second, close together on the screen. Exact thresholds vary slightly by tool, but the pattern is unmistakable in a recording: frantic, repeated clicking on one element.
What is a dead click?
A click that produces no response: no navigation, no state change, no new content. It usually lands on something that looks interactive — an image, an underlined word, a badge — but isn't.
Can Google Analytics detect rage clicks?
Not out of the box. GA4 records pageviews and configured events; rage and dead clicks aren't events unless someone writes custom code to detect them. Behavior analytics tools detect them automatically from the raw click stream.
Are rage clicks always bad?
Almost always. A few come from impatient double-clickers or game-like elements (carousels people flick through quickly), but clusters of rage clicks on the same element nearly always point to a real problem. Check the recordings — a genuine issue shows the same pattern across many visitors.
How many rage clicks is normal?
There's no universal benchmark, because it depends on traffic and page complexity. The useful comparison is internal: the same element week over week, and the same page before and after a change. Any element with rage clicks concentrated in your buying path deserves a look regardless of the absolute number.
Find your site's frustration hotspots
Your visitors are already reporting your UX bugs — through their clicks. Clicktics detects rage clicks and dead clicks automatically, ranks them by page and element, and links every one to the session recording and heatmap that explain it, all from a ~24 KB script. 14-day free trial, every feature included, no credit card.
Start your 14-day free trial → or explore the full feature list.
Tomás García
Tomás García writes for the Clicktics blog about session replay, analytics engineering, and building privacy-first products that agencies love. Reach the team at [email protected].