I-Chieh PanAll work

New Relic · 6 min read

Session Replay

Unified context for faster troubleshooting

Role
Design lead
Team
2 PMs, 9 engineers, a content writer & a support designer
Year
2024
Live
newrelic.com ↗
Session Replay cover

1,000+

Active accounts & 7M weekly sessions within six months.

$3.52M

Monthly recurring revenue — a core Browser pillar.

Minutes → seconds

From symptom to root cause, in one view.

The challenge

When front-end developers troubleshoot, they need to know both what the user was doing and how the application responded. New Relic previously offered only data-centric logs and traces, forcing developers to translate lengthy text into a best guess of user behaviour.

Strategy

A unified diagnostic experience that synchronises three contexts into a single, real-time frame of reference: the visual replay, the behavioural event trail, and the technical session traces.

Impact

Scaled to 1,000+ active accounts and 7M weekly sessions within six months, generating $3.52M in monthly recurring revenue and cutting time-to-insight from minutes to seconds.

Session Replay was our #1 request — so I began by defining what great looks like.

What it is

Session Replay is our number one requested feature from current and prospective customers. It provides visual context of what the end user was doing alongside the telemetry data of how the application was behaving.

It also expands New Relic's capability from traditional app monitoring into Digital Experience Monitoring (DEM).

Understanding the ask

Before starting, I needed to understand what customers expect from a session replay tool — so I ran a competitive analysis, mapping the functional landscape and identifying opportunities for differentiation.

User journey mapping and competitive analysis — functional landscape and opportunities for differentiation

Jobs-to-be-Done

I also conducted internal qualitative research with our engineers who use Fullstory session replay on a daily basis. The interviews revealed they prioritise time-to-insight — specifically the immediate visibility of key events on the replay timeline — and they appreciate the ability to quickly link errors, the user action, and data together for incident triaging. I synthesised these findings into Jobs-to-be-Done statements:

  • The reproduction: As a front-end engineer, when a JavaScript error occurs, I need to see exactly what the user was doing leading up to it, so I can recreate the issue.
  • The impact: As a front-end engineer, I need to see how the application behaved during the error to determine if this was an isolated incident or a critical failure affecting the entire user journey.
  • The root cause: As a full-stack engineer, I need to correlate user actions with back-end technical events on a single timeline, so I can pinpoint the source of a bug without switching contexts.

"The thing I'd love to see is some kind of summary that ties errors together with the sessions."

New Relic engineer · internal interview

Developers were losing time to context-switching — the fix was one synchronized view.

Troubleshooting means reconstructing what the user did — from data scattered across three disconnected places, each jump a context switch that costs time:

  • Logs
  • Traces
  • Timeline

The approach: one synchronized view

The biggest productivity killer in a debugging flow is context-switching — matching a timestamp in a video to a line in a log file. So I unified three layers that move together in real time:

  • Replay player — the visual experience the user saw
  • Event trail — route changes, JavaScript errors & custom events
  • Session traces — the underlying logs & network calls

This mirrors how developers actually troubleshoot:

  1. See the problem in the UI
  2. Identify the high-level event
  3. Reach for the granular logs to find the root cause

Keeping the three layers side-by-side and in sync removes the friction of context-switching — letting developers move from what happened to why it happened in one fluid motion.

Wireframe — unifying replay, event trail & session traces

Long sessions are noisy — so the timeline surfaces only the signals that matter.

Navigating the noise

Reviewing session replays is traditionally labour-intensive. By overlaying event markers like JavaScript errors and route changes onto the timeline, we provide engineers with clear visual cues. Here are some explorations around designing a scrubber that doesn't just play back a video, but actively surfaces the critical signals, allowing engineers to jump straight to the root cause.

Scrubber explorations — surfacing critical signals

Designing for high-density data

To help users parse long sessions without cognitive fatigue, I developed a chapter system that organises dense route changes into a scannable timeline. By clustering rapid-fire interactions, we reduce visual noise while maintaining a 10px minimum hit-area for accessibility. This diagram illustrates three logic models for grouping sub-second events — balancing a high-level overview with granular accuracy.

Three logic models for grouping sub-second route changes

Responsive markers for better legibility

To ensure the timeline and error markers remain useful on any screen size, I designed a merging mechanism for error markers — much like how a map groups landmarks as you zoom out. This eagle-eye view automatically clusters overlapping errors into a single interactive marker, maintaining a clean workspace while preserving the detail within a tooltip.

Error markers merge as space tightens, like landmarks on a map
Chapter hover list across multiple URLs

Stakeholders disagreed on grouped vs. overlay markers — so I let user research decide.

Partnering with the PM, I tested two ways to show errors on a crowded timeline in a small space. The result was decisive.

Option A — Overlay

Every marker stacked on the timeline. Overlapping error sets fight for the same space, and the view gets cluttered fast.

Option B — Grouped ✓

Markers cluster into squares. Scannable and precise, and the deepening red forms a natural heatmap of where issues concentrate.

Grouping won on every dimension we tested:

  • Cognitive ease: the grouped view was "easier for the brain to digest" and "keeps things less cluttered" than the overlay approach.
  • Precision: participants liked that they could click a single square to see exactly what happened in that timeframe without overlapping with other error sets.
  • Efficiency in investigation: the red deepens as more errors cluster together, creating a natural heatmap that shows users where the most issues occurred and where to start.
Marker user test — grouped vs. overlay

How it fits into a real troubleshooting flow.

Session Replay gives engineers a direct way to replay a user's actions and behavior and quickly identify what went wrong. The steps below follow one real error from a monitoring alert to its root cause — the kind of end-to-end visibility that lets engineers correlate the actions leading up to an error faster and reduce time to resolution.

1 · Browser summaryerror-rate spike
2 · Errors Inboxtriage the group
3 · Error occurrencelinked to the session
4 · Session openedreplay + events
5 · Session traceroot-cause error

The result isn't a video player — it's a synchronized diagnostic tool.

The final design of New Relic Session Replay is not just a video player but a synchronised diagnostic tool. By unifying the video player (with timeline scrubber) and the Event Trail and Session Trace components, I ensured that every technical signal is perfectly in sync with the user's visual journey. It lets developers see an error and the user's behaviour side-by-side, at the exact moment it happened. This balance of granular detail and intuitive context is what ultimately cuts time-to-insight from minutes to seconds.

Every entry point into Session Replay, and the golden path from signal to session

Shipped

The final synchronised diagnostic experience

The impact: a new revenue pillar, and troubleshooting in seconds.

Session Replay scaled to 1,000+ active accounts and 7M weekly sessions within six months of launch, generating $3.52M in monthly recurring revenue and establishing it as a core pillar of New Relic's Browser capability.

By giving developers a single source of truth, it eliminated context-switching — turning a symptom into a diagnosed root cause in one fluid motion. Time-to-insight dropped from minutes to seconds.

Next project

ITONICS Cloud — Design System