Nevision reconstructs every scroll, click, hover, form input, and DOM mutation at 60fps so you can see exactly what your users experienced — bug reports, drop-offs, confusion points, all visible. Privacy-first by default. One script to install.
Built on rrweb. We don't record video — we record the DOM, so replays are crisp at any resolution and a fraction the size.
Passwords, emails, credit cards, and any element tagged data-nevision-mask are redacted in the browser before any data leaves.
The recorder loads asynchronously after your page is interactive. Real-user data shows zero impact on Core Web Vitals.
Session replay is the most direct way to understand a bug or a UX problem: instead of guessing from logs and analytics dashboards, you watch what the user actually did. Every modern product team uses replay alongside error tracking and analytics, but most replay tools come at a steep price — LogRocket starts at $69/month, FullStory is enterprise-only, and Hotjar limits free plans to 35 sessions a day.
Nevision was built to give you the same pixel-perfect replay (DOM-based, 60fps, accurate at any resolution) without the per-feature pricing trap. The free plan includes 1,000 sessions per month with 7 days of retention. Lite at $12/mo bumps that to 5,000 sessions and 60 days. Pro at $39/mo gets you 25,000 sessions and 90 days. Business at $99/mo handles 100,000 sessions and 365-day retention.
Replays are correlated with the same identifier as your error tracking, uptime checks, RUM metrics, and backend logs — so when a user reports a bug, you can jump from their session to the exact stack trace, the exact API call, and the exact server log line that produced it. That's the unlock: not just watching the screen, but understanding the full trace from click to query.
Every session replay tool can leak PII if misconfigured. Nevision masks passwords, email inputs, credit card fields, and anything tagged data-nevision-mask before the data ever leaves the browser. You can also block recording on entire URL patterns (e.g. /checkout/*). We sign DPAs on paid plans and host EU traffic in EU regions.
Paste one line into your HTML or import the npm package. Works with React, Vue, Angular, Svelte, and plain HTML.
Every interaction is captured and uploaded in compressed chunks. Sessions appear in your dashboard seconds after they end.
Filter by URL, country, device, error count, or custom events. Jump to the exact moment a bug occurred. Share replays with your team.
| Feature | Nevision | LogRocket | FullStory | Hotjar |
|---|---|---|---|---|
| Free plan sessions/month | 1,000 | 1,000 | — | 35 |
| Starting price | $0 | $69/mo | Custom | $32/mo |
| Includes error tracking | — | |||
| Includes uptime monitoring | — | — | — | |
| Includes server metrics | — | — | — | |
| DOM-based replay (not video) | ||||
| Self-host option | — | — | — | — |
| GDPR-compliant masking by default |
Comparison based on publicly listed pricing and features as of April 2026.
Just a script tag. Drop one <script> into your <head> with your siteId and you're done — there's no npm package or bundler config to wire up.
Free: 7 days. Lite: 60 days. Pro: 90 days. Business: 365 days. After retention, replays are deleted automatically — we never sell or share session data.
Yes. Because we record the DOM (not video), the replay re-renders inside an iframe using your live CSS and fonts. Custom animations, web components, and CSS-in-JS all replay accurately.
Yes. Add data-nevision-block on any element to exclude it entirely, or data-nevision-mask to record the element's existence but mask its content. URL-level exclusions are configured in the dashboard.
Under 1KB gzipped at first paint. The full recorder loads lazily after your page is interactive, so it never delays LCP or INP.
Yes. Errors are automatically linked to the session that produced them. To attach a customer ID, set window.nevisionMeta = { user_id: "..." } before the recorder script loads — every session from that page is then tagged and filterable in the dashboard.
Any string key/value pairs you want — user_id, plan, company, feature flags, A/B variant, etc. Set them on window.nevisionMeta or pass them as data-meta='{...}' on the script tag. Up to 20 keys per session, key max 256 chars, value max 1,024 chars. Both keys and values must be strings.