Skip to content
Maple Docs
Open app
Browse the docs
On this page

Replays

Find a browser session on the Session Replays page, play it back next to its events and backend traces, and move between a trace and the replay that produced it.

The Replays page (Session Replays in its header) lists the browser sessions recorded by the Browser SDK. Open a session to watch what the user saw, with the clicks, console messages, network requests, errors and backend traces from that session beside the player.

Prerequisites

The Browser SDK initialized with replay enabled (the default). Sessions sampled out by replay.sampleRate are not recorded.

Find a session

The toolbar shows how many sessions match and how many are live (still recording). Use the time range picker to change the window, and Search by URL… to find sessions that visited a page. The Analytics button opens Web analytics for the same window.

The sidebar narrows the list:

FilterWhat it matches
Session lengthDuration. Bounced is under 10 seconds. The other presets come from your own p50 and p95.
Active timeTime the user was active. Idle is under 5 seconds, Engaged over 30 seconds.
Page visitedSessions that visited a page.
ServiceThe serviceName the SDK was initialized with.
Browser, Device, CountryThe visitor’s environment.
GroupThe company or team passed to identify(). Shown once any session has one.
IdentityName or email… and User ID…, from identify().

Sessions with errors are marked in the list.

Watch a session

Click a session to open it. The player rebuilds the page as the user saw it.

  • Space plays and pauses. The left and right arrow keys seek 5 seconds.
  • Playback speed is 0.5×, 1×, 2×, 4× or 8×.
  • Skip idle jumps over periods with no activity.

The rail on the right has three tabs:

  • Events. Every recorded event in order. Filter it to Product events, Console messages, Network requests or Errors. Click an event to seek the player to that moment. A network request that carried a trace has an Open trace link.
  • Traces. The backend traces observed during the session. Click one to seek the player to it, or open it in the trace view.
  • Session. The session’s metadata: identity (name, email, user id, group, traits), visitor id, entry and exit page, referrer and UTM source and campaign, browser, operating system, device, country, service, and session id.

From the Session tab, the links next to User ID, Group and Visitor ID list every session from that user, group or visitor.

The SDK tags every span and replay event with the same session.id, so Maple links the two both ways:

  • From a replay to a trace. Use the Traces tab, or Open trace on a network event.
  • From a trace to a replay. When a browser session observed a trace, the trace page shows View Session Replay. It opens the replay at that session.

For a backend span to appear in the same trace as the browser request, the request must carry the traceparent header. Same-origin requests always do. For a cross-origin API, see Connect browser and backend traces.

Privacy

Masking happens in the browser, before anything is sent. A replay never contains what the SDK masked.

  • Every <input> value is masked by default (privacy.maskAllInputs).
  • privacy.maskAllText: true masks all rendered text.
  • Elements with the rr-block class or data-rr-block attribute are recorded as placeholders.
  • URLs are redacted: the values of credential-shaped parameters such as token or password are replaced, and privacy.sanitizeUrl can rewrite the rest.

See Privacy and masking and Consent for the options.

Verify

Load a page with the SDK installed, click around, then close the tab. Open Replays. The session is listed within about a minute, and it plays back when you open it.

Troubleshooting

  • “No sessions recorded yet”. Check that the SDK initializes on the page, that replay.enabled is not false, and that consent was granted if privacy.requireConsent is on.
  • Some sessions are missing. replay.sampleRate below 1 records only that fraction of sessions.
  • The Traces tab is empty. The session made no traced requests, or the backend traces are in a different trace because the request did not carry traceparent.
  • A replay stops partway. A session records at most 1 GiB of replay data. See Session size limit.

Next steps