Session replay
Watch real visits to your site as they happened, with sensitive content masked.
Session replay rebuilds a visit from the page's structure and the visitor's interactions, so you can watch what they saw and did: where they moved, what they clicked, where they hesitated and where they left. Recordings sit beside the visitor's events, console logs and network requests, so a drop in a funnel is one click from the sessions behind it.
A recording is not a video of the visitor's screen. It is a reconstruction of your page, which is what makes it possible to mask content before it ever leaves the browser.
Turn on session replay
- Make sure the web snippet is installed.
- In the app, open Project settings and find Session replay.
- Turn on recording.
New visits are recorded from that point on; recordings appear in the app shortly after a session ends. Your plan sets how long recordings are kept.
Privacy and masking
Recordings are designed to show behaviour, not personal details.
- Inputs are masked by default. What a visitor types into form fields is replaced with asterisks in the browser, so it is never sent.
- Text can be masked too. The privacy options in Project settings → Session replay control whether page text is masked.
- Your code can mask or block specific parts of a page. For example, to mask all text and leave out a payment form entirely, set the replay options when the library starts:
// Inside the snippet's start-up options:
session_recording: {
maskAllInputs: true,
maskTextSelector: "*", // mask every piece of text
blockSelector: ".payment-form", // do not record this element at all
},Masking happens in the visitor's browser, before anything is sent to your data region. A blocked element appears in the recording as an empty box of the same size.
Good practice
- Mask or block anything showing personal, health or payment information.
- Tell visitors about recording in your privacy policy.
- Respect opt-outs: a visitor who has opted out is not recorded.
Can't find what you need? Contact support