Recording privacy: masking and hiding content
Choose how much text recordings hide, hide or show specific parts of a page, and what is never recorded.
In this article
A session recording is a replay of a visit: the page, the mouse, the clicks and the scrolling. It is built from the page itself, not a video. Before anything leaves the visitor's browser, Varly replaces hidden text with dots (•••). What is hidden can't be made visible later, not even by Varly.
Always hidden or never recorded
Whatever level you choose:
- Form fields are always hidden. What visitors type, including passwords, and what they pick in dropdowns is never recorded.
- Pages under Never track these pages are never recorded. By default this includes
/checkout,/cart,/winkelwagenand/afrekenen. If a visitor moves to such a page, the recording stops. Change the list under Settings → Tracking & privacy, and keep your checkout in it. - Embedded content from other websites (such as a payment widget or a video in a frame) and drawing areas (canvas) are not recorded.
- Nothing is recorded without consent. Recordings only start after the visitor accepts cookies. See Cookie consent.
- No query strings. Recordings store page addresses without the part after
?or#, because that part can contain an email address or a code.
Choose how much text to hide
- Go to Settings → Session recordings.
- Under Hide text in recordings, choose a level:
- Strict: all text on the page is hidden. Use this for sites with personal or sensitive content.
- Balanced (recommended): numbers and email addresses are hidden. Headings, buttons and product names stay readable.
- Relaxed: all text stays readable. Only what visitors type in form fields is hidden.
- Click Save recording settings.
New visits use the new settings within a minute. Recordings that were already made don't change.
Heatmaps follow the same rules
When a visitor clicks something, Varly saves the text of that element for the Most clicked list in heatmaps and for click impact. That text is hidden in the same way, in the visitor's browser: with Strict all of it shows as dots, with Balanced numbers and email addresses do, and Always hide and Always show apply too.
Hide or show specific parts
Next to the level, you can make exceptions with CSS selectors. A CSS selector is a short name for a part of a page, such as .customer-name or #account. Your developer or theme can tell you which ones to use.
- Always hide: one selector per line. These parts are always hidden, whatever the level. Use it for things like a customer name in the header, an account page block or order details.
- Always show: one selector per line. These parts stay readable, even with Strict. Use it for things like product titles or prices.
If a part is in both lists, Always hide wins. You can add up to 50 selectors per list.
Check your settings
After saving, make a test visit (with cookies accepted) on a page with personal or sensitive content, then watch that recording under Recordings. Check that names, addresses and other personal details show as dots. If something is still readable, add it to Always hide or choose a stricter level.
If How many visits to record is set below All visits, your test visit may not be picked for recording. Try another visit, or choose All visits while you test.
Common problems
I can't read anything in my recordings. You are probably on Strict. Switch to Balanced, or add the parts you need to Always show.
A customer's name is visible in the header. Add the element that shows the name to Always hide.
My checkout appears in recordings. Your checkout path is missing from Never track these pages. Add it under Settings → Tracking & privacy. You can delete the recording itself; see Delete data.
For developers
You can also mark elements in your HTML:
data-varly-mask: hide all text in this element and everything inside it.data-varly-unmask: show the text in this element, even with Strict.data-varly-block: leave the element out completely. The recording shows an empty box of the same size.
<div class="account-box" data-varly-mask>…</div>
<h1 class="product-title" data-varly-unmask>…</h1>
<div class="chat-widget" data-varly-block></div>
Form fields stay hidden even inside data-varly-unmask. Invalid selectors in Always hide and Always show are skipped, so they never break a recording.
Still stuck? Email support@varly.ai and we'll help you out.
Related articles
- Set up session recordingsChoose how many visits Varly records and how much text it hides, so you can watch real visits safely.
- Privacy and GDPR: what Varly stores and for how longWhat Varly collects about visitors, what it never stores, retention periods, and sample privacy policy text.
- Watch session recordingsFind the right visits, replay them, add notes for your team, keep favorites and get an AI summary.
- Exclude your own visits and pages you don't want trackedKeep your own team's visits out of the data, exclude office IP addresses, and choose pages Varly never tracks.