Public preview Grafana Cloud

View session replays

Note

Session Replay is currently in public preview. Grafana Labs offers limited support, and breaking changes might occur prior to the feature being made generally available.

After you instrument your application with the Faro Web SDK and add ReplayInstrumentation to your Faro configuration, Grafana Cloud makes session recordings available in Frontend Observability. Use the replay player to see how an end user interacted with your application, and use the User Journey panel to correlate that playback with navigations, custom events, and network requests.

Before you begin

To view recordings, you need the Recordings Viewer role-based access control (RBAC) role. If you don’t see the replay column, the inline replay widget, or the full-screen viewer, you might not have this role. Ask your Grafana administrator to grant it. For details, refer to Session Replay role-based access control.

Open a session replay

  1. In Grafana Cloud, go to Frontend Observability.
  2. Select your application.
  3. Click the Sessions tab.
  4. Select a session to watch its recording, either inline with the User Journey panel or in the full-screen viewer.

From the Sessions tab, you can also browse and filter sessions, or jump from an error, log, or trace to the corresponding replay.

The full-screen viewer opens at a URL in the following format:

text
https://<STACK_NAME>.grafana.net/a/grafana-sessionreplay-app/app/<APPLICATION_ID>/session/<SESSION_ID>

To link to a specific moment, add the t query parameter with an offset in milliseconds from the start of the recording. For example, ?t=41615 starts playback at 41.6 seconds. The Share button builds this URL for you.

Recording availability and retention

After Session Replay records a session, it can take up to 5 minutes for the recording to appear in Frontend Observability. For an ongoing session, new portions of the recording also appear at intervals of up to 5 minutes.

Note

You can’t watch a live session in real time.

Recordings are retained for 30 days and are then deleted automatically. Refer to Data retention for more details.

Replay player controls

The control bar below the player includes the following controls:

  • Elapsed time: Shows the current position and the total length of the recording, such as 0:41 / 0:41.
  • Play and Pause: Start and stop playback.
  • Skip backward and Skip forward: Move the playhead backward or forward 10 seconds.
  • Timeline: Seeks to any point in the recording.
  • Playback speed: Sets the playback speed. The button shows the current speed, and the default is 1x.
  • Skip inactivity: Fast forward stretches of the recording with no user action, for example clicks, scrolling, or typing.
  • Share: Copies a link to the replay at the current playback position.
  • Toggle fullscreen: Expands the player to fill the browser window.

The player header shows the title and URL of the page the user was on at the current position.

Masked text in replays

Session Replay masks all input values and text content in the browser before any data leaves it, so text in a replay appears as asterisks. This is expected behavior, not a corrupted recording. To change what’s masked, blocked, or ignored, configure the privacy and masking options. Refer to Data privacy in Session Replay.

Correlate playback with session events

The User Journey panel beside the player lists the events Faro collected during the session.

The panel has two tabs, each labeled with the number of events it contains:

  • Journey: Page navigations and custom events, including web vitals such as Cumulative Layout Shift. Use the Navigation and Custom buttons to filter by category.
  • Network: Network requests, with the HTTP method and status code, such as Fetch request (GET 200).

For each event, you can:

  • Read its offset from the start of the recording, such as 0:00.136.
  • Click Jump to this event to move the player to that moment.
  • Click View event details to open the event’s attributes, including the HTTP method, status code, request duration, and trace_id. Use the trace_id to look up the corresponding distributed trace in your traces data source.

Click Follow playback to keep the event list in sync with the player as the replay plays.