Session Replay

The session behind the failure.

Not video. Typed event timelines — page loads, clicks, errors, retries — that attach to error groups and incident evidence. Lighter to capture, safer to store, faster to read.

sessionanon-7f31 · 4m 12styped events · not video
··××
00:0002:0004:12
03:02××rage_click · #pay-button ×6rage_click
03:04Stripe::CardError · card_declinederror
03:04DOM snapshot · scripts strippedsnapshot
03:11retry · POST /checkout/paymentretry
How it works

Events, not pixels.

A session is a sequence of typed events with glyphs you learn once. You scan it like a log, not scrub it like a tape.

01 · Capture

Typed events

page_load →, error ✕, rage_click ××, dead_click ·, retry ↺ — each event is structured data with a target and timing, queryable like everything else.

02 · Snapshot

DOM, opt-in, stripped

Optional DOM snapshots at moments that matter. Scripts are stripped and the render is sandboxed — markup, never execution.

03 · Attach

Evidence, not archive

Sessions attach to error groups and incident evidence — the most relevant session is one click from the backtrace.

The event vocabulary

Six glyphs. The whole story.

A rage click before an error tells you more than thirty seconds of video. The vocabulary is small on purpose — you read a session in seconds.

  • rage_click: 3+ clicks, same target, under 2s
  • error events link straight to the error group
event vocabularytyped, queryable
page_loadnavigation with route + timing
errorlinks straight to the error group
××rage_click3+ clicks, same target, under 2s
·dead_clickclick with no DOM response
retryrepeated failed request
snapshotopt-in DOM capture, sandboxed render
Privacy by construction

No video. No scripts. No surprise PII.

Because replay is typed events, there’s no screen recording to leak what you didn’t mean to capture. Snapshots are opt-in per project, scripts are stripped on ingest, and renders are sandboxed.

  • Per-project sampling rate and retention window
  • Snapshots opt-in — off by default
Read the replay docs →
controlscope
sampling rateper project
retention windowper project
DOM snapshotsopt-in, off by default
script handlingstripped on ingest
snapshot rendersandboxed iframe

Close the errorgap.

Start free, no credit card. Turn scattered production signals into one investigable incident in under five minutes. Cancel anytime, keep your data.