All Articles/Sessions

Debugging User-Reported Issues with Session Replay

Use session timelines to trace exactly what a user experienced.


The Scenario

A user reports: "The checkout page crashed when I clicked pay." How do you debug this?

Step 1: Find the Session

Go to the Sessions page and search by:

  • User ID (if you set user context with setUser())
  • Session ID (if the user can provide it)
  • Time range (when the user reported the issue)

Step 2: Read the Timeline

The session timeline shows every event in chronological order:

  • Page loads and route changes
  • API calls with status codes and durations
  • User actions (breadcrumbs you recorded)
  • Warnings and errors with full details
  • The final error that caused the crash

Step 3: Reproduce

The timeline tells you exactly what happened:

  1. User loaded /checkout at 14:03:21
  2. Fetched cart data — GET /api/cart 200 (45ms)
  3. Clicked "Apply coupon" — POST /api/coupon 200 (120ms)
  4. Clicked "Pay now" — POST /api/payment triggered
  5. Error: TypeError at payment.js:42 — card token was undefined

Now you know the bug: the payment form didn't wait for the coupon API response before submitting.

Attach user context

Always call setUser() after login. Without it, sessions are anonymous and harder to find when a user reports an issue.