Home/Hotjar alternative
Hotjar answers "where do people struggle?" by filming your visitors — session recordings and heatmaps that capture what someone typed, hovered and read. That's powerful, and it's also why Hotjar sits behind a consent banner and a long DPA. Kipstats answers the same question a different way: it detects the signals of friction — rage clicks, dead clicks, abandoned form fields, JavaScript errors — as anonymous counters, with no recording, no heatmap storing personal data, and no cookie to ask permission for.
Last updated: July 2026 · no credit card, free plan forever
In short: Hotjar (owned by Contentsquare since 2023) is a behaviour-analytics suite built on session recording, heatmaps, surveys and feedback widgets. It sees a lot — which is exactly why it needs consent and replays potentially personal data. Kipstats keeps the useful half of that promise — the friction detection — while dropping the part that creates privacy risk. No recordings to store, no heatmap of an identifiable page, a 2.9 KB script and a genuine free tier. If you need to literally watch a user's mouse, stay on Hotjar. If you want to know what's broken and where, Kipstats gets you there without the paperwork.
Two different philosophies for the same job: understanding on-page behaviour. Here's exactly where each draws the line.
| Kipstats | Hotjar | |
|---|---|---|
| Rage-click detection | ✓ | Via replay/heatmap |
| Dead-click detection | ✓ | Via replay/heatmap |
| Abandoned form-field signal | Field identity, not contents | Via recordings |
| JavaScript error tracking | ✓ | ✗ |
| Session recording / replay | None, by design | Core feature |
| Visual heatmaps | — | Core feature |
| On-site surveys & feedback | — | ✓ |
| Stores replayable personal data | No | Yes (with masking) |
| Cookie / consent banner needed | No | Yes, in practice |
| Tracking script size | 2.9 KB gzipped | Much heavier + recording payload |
| EU hosting / GDPR posture | EU-hosted, cookie-free | Consent + DPA required |
| Free plan (not just a trial) | Yes, forever | Limited free tier |
| Pricing | 0 / 9 / 29 €/mo | Free (limited), then paid tiers |
Hotjar details from its own docs, pricing and privacy pages, July 2026. Vendors change plans and scripts — check theirs before deciding.
A session recording is a replayable video of a real person using your site. Even with Hotjar's input-masking turned on, a recording of a logged-in account page, a checkout, or a support form can capture an order number, a shipping address, a name that's rendered on screen, or something a visitor pastes into a field before deleting it. Under the GDPR that's personal data — which is why session replay tools ship a Data Processing Agreement and, in practice, need a consent banner before they load.
Kipstats never builds that artefact in the first place. When someone rage-clicks a dead button, we don't store who did it or a film of them doing it — we increment a counter on that element: "this selector received 214 rapid repeat-clicks this week." There is no recording to leak, subpoena, mis-configure, or accidentally expose in a support screenshare. The data-minimisation isn't a setting you have to remember to switch on; it's the architecture.
Capture a replayable session, then mask fields to reduce the personal data inside it. Privacy is a mitigation applied after collection.
Never capture the session. Emit anonymous friction signals as aggregate counts. There's nothing personal to mask because nothing personal is collected.
Heatmaps and recordings make you do the detective work — you watch twenty replays hoping to spot a pattern. Kipstats does the pattern detection in the script and hands you the finding directly.
Three or more clicks on the same element inside a short window with no navigation or change following. It's the digital body language of "why isn't this working?" — usually a link that looks clickable but isn't, or a button whose handler quietly failed. Kipstats attributes the burst to a CSS selector so you know the exact element.
A click that produces no reaction at all — no navigation, no DOM change, no network call. Often an image or icon that users assume is a button. One dead click is noise; a dead click ranked #1 on your pricing page is a design bug.
Kipstats records that a field was focused and then left without the form being submitted — the field's identity, never its contents. When "phone number" is the last field 40% of drop-offs touch, you've found the question that's costing you signups. This is the exact leak we caught on our own network with the friction endpoint (a pre-filled number input that concatenated keystrokes into an unusable value).
Uncaught exceptions and failed promises, grouped by message and page. A checkout that 500s only on Safari, a third-party widget that throws on mobile — these are invisible in a pageview chart but they're why conversions stall. Kipstats surfaces them next to the friction they cause.
None of these need a cookie, a fingerprint or a stored identifier. They're computed in the 2.9 KB script and sent as aggregate counts tied to an element or a page — not a person.
<script> line in your <head>, or a click in Google Tag Manager. Friction detection is on by default — you don't wire up recordings or define heatmap pages.An honest comparison says when to pick the other one. Hotjar has real strengths Kipstats doesn't try to match:
The trade is consent and weight. If watching real people and running surveys is core to your work, and you've done the consent and masking properly, Hotjar earns its place. If you mostly wanted to know what's broken and privacy was the reason you hesitated, Kipstats gets you the answer without any of that.
You want to find friction — dead buttons, broken forms, JS errors — without recording anyone, without a cookie banner, and without adding a heavy script. You'd rather be handed the finding than watch replays hunting for it, and you like starting free.
You need to watch individual sessions, show visual heatmaps to stakeholders, or run on-site surveys — and you're set up to obtain consent and mask sensitive inputs for that collection.
No — and that's the point. Kipstats never captures a replayable session. It detects friction as anonymous, aggregate signals tied to an element or page (rage clicks, dead clicks, abandoned fields, JS errors). There is no video of a user to store, replay or leak.
No. Kipstats sets no cookies and stores no personal identifier, so under the CNIL's conditions for exempted audience measurement it doesn't require prior consent the way Hotjar's recordings do. Always confirm your exact setup with whoever owns your compliance.
Not visual click-map overlays. Kipstats gives you the data a heatmap is meant to reveal — ranked clicks, dead clicks and scroll-depth per page — without rendering and storing a picture of an identifiable page. If a colour overlay for stakeholders is essential to you, Hotjar is the better fit.
It logs that a field was focused and then abandoned before submission — the field's name, never what was typed. When one field is the last one most drop-offs touch, you've found the friction, with zero personal data captured.
Yes. Kipstats is cookie-free and lightweight, so it won't conflict with Hotjar or add anything to your consent banner. Run both for a week, compare what each surfaces, then decide.
Kipstats starts free, then 9€/mo (Pro) and 29€/mo for higher volume. Hotjar has a limited free tier and paid plans above it. Check Hotjar's current pricing before deciding, as vendors change tiers.
Start free, add the 2.9KB script, and see your rage clicks, dead clicks, abandoned fields and JS errors — with no recording and no cookie banner.