Home
Pricing
Platform Blog About Contact FAQ
Sign in Start free
Session Replay

Watch exactly what
your users experienced.

Pixel-perfect DOM recordings of real user sessions — clicks, scrolls, rage clicks, and navigation — with privacy-safe input masking and a direct link from every error to the replay where it happened.

Free tier included No credit card 2-minute setup
app.siteqwality.com / replay / a3f9c2
Session #a3f9c2 — Checkout Flow Error FlaggedLIVE
DURATION3m 42s
PAGES5
JS ERRORS1
Homepage12ms
/cart38ms
/checkout182ms
/payment241ms
/confirm24ms
What you get

The full picture, not just the stack trace.

When a user hits an error or drops off, a session replay shows you every click, scroll, and navigation that led up to that moment. No log grepping — just press play and watch exactly what happened.

Pixel-perfect DOM recordings

Full fidelity DOM snapshots reconstruct the exact page your user saw — including dynamic content, CSS, and fonts.

Privacy-safe input masking

Every text input is masked by default. Use data-sq-unmask to opt specific fields back in. GDPR-ready without any configuration.

Jump from error to replay

Every JavaScript error links directly to the replay where it fired — one click takes you from stack trace to session timeline.

Rage-click and frustration signals

Automatically detected rage clicks and dead clicks highlight friction points before you even open the recording.

Filter sessions by any dimension

Find the replays you need by URL, error, country, browser, device, duration, or any custom attribute you have tagged sessions with.

Timestamped event timeline

Every click, navigation, network request, and error shown chronologically alongside the replay so context is never missing.

01 · Privacy by default

Mask everything.
Unmask what matters.

Input fields are masked before they leave the browser. No PII reaches our servers unless you explicitly opt a field in. Element-level control via HTML attributes means your legal team stays happy and your engineers stay productive.

  • All text inputs masked by default — zero configuration required
  • Element-level opt-in with data-sq-unmask HTML attribute
  • GDPR-ready — no PII stored without explicit opt-in
app.siteqwality.com / replay / b7d4e1
Session #b7d4e1 — Signup Form MaskedLIVE
DURATION1m 28s
INPUTS MASKED4
PII STORED0
/signup44ms
/verify89ms
/onboarding134ms
/dashboard31ms
02 · Error-to-replay linking

From stack trace
to what actually happened.

Every JavaScript error captured by Site Qwality's error tracker includes a direct link to the session replay. No searching — click the error, click "Watch replay", and the recording starts 30 seconds before the crash so you see the full lead-up.

  • One-click from any error to the exact session replay
  • Replay starts 30 seconds before the error fired
  • Correlated with full error stack trace and source-mapped code
install Session Replay<!-- same script tag as RUM — replay included -->
<script
  src="https://cdn.siteqwality.com/rum.js"
  data-site-id="acme-prod"
  data-replay="true"
  async
></script>
✓ replays recording — inputs masked automatically
0

PII stored without explicit opt-in

1-click

from any error to its session replay

100%

of inputs masked by default, no config

$0

free tier — 100 replays per month included

FAQ

Questions, answered.

Yes. All text input fields are masked before data leaves the browser, so no passwords, card numbers, or personal information are captured by default. You opt individual fields in with a data-sq-unmask attribute. The result is GDPR-compatible out of the box.

Session replay piggybacks on the same ~4 kb RUM script, loading asynchronously. DOM recording is done in idle callbacks, and mutations are batched — the overhead is imperceptible to real users.

In the Error Tracking view, every error row has a "Watch replay" button. Clicking it opens the session replay for the affected user, positioned 30 seconds before the error occurred so you see the full lead-up.

Yes. Filter by URL, error presence, country, browser, device, session duration, or any custom attribute you tag sessions with. Saved filters make it easy to revisit common queries.

Replay data is retained for 30 days on all plans. If you need longer retention, contact us to discuss enterprise options.

Ready?

Start watching in under a minute.

Every product starts free — uptime, cron, synthetic, logs, RUM, incidents, and status pages. No credit card required.