Session Replay That Shows You What Your Users See
Clairvio is an on-demand session replay tool for engineering and support teams. Send a magic link (a one-click URL that starts a recording), watch the session live, and close the gap between bug reports and reality.
No credit card required.

Debug in three steps
Install the snippet
Add a single <1 kB script tag to your site. No build step, no dependencies. Clairvio stays dormant until a diagnostic session is triggered via a magic link, so there's zero impact on normal page loads.
Trigger a session
Generate a magic link from your dashboard and send it to the customer, or let them start a session themselves via the embedded support widget. No account or install required on their end.
Watch live or scrub the replay
Join the session in real time, or scrub the completed recording with console errors, network requests, and navigation events all timestamped on the same timeline.
From support ticket to live replay
A support agent generates a magic link, pastes it into a support ticket, and the customer opens it. The agent's dashboard shows the session activating in real time: DOM replay, console errors, and network requests all timestamped on the same timeline.
How Clairvio captures sessions
The loader and the capture library
The Clairvio integration is split into two distinct JavaScript artifacts. The first is a
small loader (under 1 kB minified and gzipped) that you add to every page via a
single <script> tag. The loader does almost nothing
on a normal page load: it registers one listener and exits. Because it contains no replay
logic, no tracking code, and no third-party dependencies, it has zero measurable impact on
Lighthouse scores or Core Web Vitals for your ordinary visitors.
The second artifact is the full capture library. It is never fetched unless a valid magic link token is present in the URL query string. When a customer opens a diagnostic link, the loader detects the token, dynamically inserts the capture script, and initialises a WebSocket connection back to the Clairvio ingestion endpoint. This lazy-load architecture means your regular users are never exposed to the capture overhead.
DOM serialisation
Once active, Clairvio records the session. It works by taking a full snapshot of the DOM
at session start, serialising every element, attribute, text node, and computed style
into a compact JSON representation, and then continuously listening to a MutationObserver for incremental changes. Rather than storing pixel frames like a screen recording, it stores
a stream of structural diffs. A typical session produces under 1 MB of replay data, compared
to hundreds of megabytes for an equivalent video file.
Pointer position, scroll depth, viewport resizes, and form inputs are recorded as discrete timestamped events on the same clock as the DOM mutations. During playback, Clairvio re-hydrates the serialised DOM inside an isolated iframe and re-applies the event stream frame by frame, producing a pixel-perfect reconstruction of exactly what the customer saw.
Four parallel capture streams
In addition to the DOM replay, Clairvio captures three supplementary streams
simultaneously: console output (every console.log, console.warn, and console.error call with its arguments and stack trace), network activity (every XMLHttpRequest and fetch call with request method, URL, status code,
timing, and configurable payload capture), and navigation events (every pushState, replaceState, and popstate transition). All four streams share the same millisecond-resolution
clock so you can scrub to any point in the replay and immediately see which network request
was in-flight, which error had just been thrown, and which route the user was on.
Privacy and sensitive data
Clairvio supports element-level masking via CSS selectors or data attributes. Any input[type=password] is masked by default. Masked elements
are replaced with a solid block in the replay; the actual value never leaves the browser.
You can mask any other element by adding a data-clairvio-mask attribute to it. For a
deeper look at recording models and consent, see The Privacy-First Approach to Session Recording and Session Replay and GDPR: How to Stay Compliant.
Customer support, QA, and engineering debugging
Customer Support
A customer files a ticket describing a checkout issue. Paste a magic link into your support reply, or let them trigger it via the embedded widget. You get a full replay of exactly what happened: the clicks, the network requests that returned 500, the console error that fired silently.
- Magic link or embedded self-service widget
- Email alert when the session starts
- Replay URL ready to share with engineering
QA & Testing
Intermittent bugs are the hardest to reproduce in a test environment. Send magic links to internal testers for specific scenarios. The replay captures every interaction, network call, and JavaScript error with millisecond precision — a deterministic record that doesn't rely on the tester's memory.
- Links scoped to specific test environments
- Attach replays to bug reports in your tracker
- Compare replays before and after deploys
Engineering Debugging
Production bugs rarely reproduce locally. Request a session from the exact user who hit the problem and get the full diagnostic trace: DOM state at every frame, every API call with request and response payloads, every exception logged to the console, and the full navigation path that led to the failure.
- Frontend errors alongside API responses on one timeline
- DOM state at the moment an exception fired
- Share replays without sharing credentials
Clairvio vs. traditional session replay
Always-on session replay tools were designed for product analytics. Clairvio was designed for debugging.
| Clairvio | LogRocket / FullStory | |
|---|---|---|
| Recording model | On-demand Magic link or self-service widget | Always-on Every user, every session |
| Impact on real users | None Loader is dormant for all other users | Measurable 100–300 kB SDK on every page load |
| SDK payload | <1 kB loader Capture lib loaded lazily on demand | 100–300 kB Bundled on every page load |
| GDPR / consent | Simple Explicit consent for support session | Complex Passive consent required for all users |
| Data volume | Only what you need One session per ticket | Enormous Every visitor, most never reviewed |
| Primary use case | Debugging & support Reproduce a specific reported issue | Product analytics UX research and funnel analysis |
| Pricing model | Starts free $0 – $99 / month | Enterprise Typically $200+ / month |
Everything you need to reproduce bugs
Stop asking customers to describe what happened.
Let them show you.
Live & Recorded Replay
Watch a session update in real time while the user is still active, or scrub through the full recording once it completes; same pixel-perfect DOM replay either way.
Magic Link & Support Widget
Send a one-click diagnostic link to any customer, or embed a self-service widget so users can initiate a recording themselves. Either path captures the same full session with no install required.
Console Capture
Every console.error, console.warn, and console.log is intercepted and timestamped alongside the replay.
Network Inspector
All XHR and fetch requests (URLs, status codes, request bodies, response payloads, and timing) in one timeline.
Zero-friction Setup
One script tag under 1 kB. No build step, no npm install, no configuration. Stays dormant until a session is triggered, invisible to normal users.
Navigation Timeline
Every page transition (pushState, replaceState, and popstate) is captured and timestamped. Follow a multi-step flow exactly as the customer experienced it.
Simple, predictable pricing
Start for free. Upgrade when you need more sessions or longer retention.
Free
- 25 sessions / month
- 7-day session retention
- Session replay
- Console capture
- Network inspector
- 1 workspace
Starter
- 200 sessions / month
- 30-day session retention
- Session replay
- Console capture
- Network inspector
- 3 workspaces
Growth
- 1,000 sessions / month
- 90-day session retention
- Session replay
- Console capture
- Network inspector
- Unlimited workspaces
Scale
- 5,000 sessions / month
- 1-year session retention
- Session replay
- Console capture
- Network inspector
- Unlimited workspaces
Common questions
-
Clairvio is built for engineering support workflows, not passive product analytics. Unlike LogRocket or FullStory, Clairvio only records a session when a specific diagnostic link is sent to a customer; your normal users are never recorded. There is no persistent SDK overhead, no background data collection, and no GDPR complexity on sessions you didn't ask for. LogRocket and FullStory record every user session continuously, generating enormous volumes of data you will mostly never look at.
See what your customers see.
Create your free account and send your first diagnostic
session in minutes.
No credit card required.