See where the experience breaks down

Watch real sessions to understand confusing interactions and abandoned tasks. Console and network details stay in sync, while private text is masked before it leaves the browser.

Trial account 4821Chrome, 2:47, 1 pageRage clickError
Import CSVprojects.csv, 6.2 MBUpload failed. Try again.Upload
02:42 / 02:47Skipping inactivity
02:36GET /api/import/limits200, 52 ms02:42POST /api/import413, 1.2 s02:44Rage click on Upload4 clicks
Report a bug from here

Trial account 4821 at 02:42, where the upload failed and they clicked four more times. Sample data.

Private before it is recorded

You decide what's kept

Recording starts with the same snippet as everything else, runs off the main thread, and is invisible to your users. Text and form input are masked in the browser by default, so private content is never sent. You unmask the parts that are safe, element by element.

  • Network request and response bodies are kept only for URLs you allow, and sensitive headers are stripped.
  • Choose a sampling rate if you don't need every session.
  • Recordings expire at the end of your plan's retention period.
Masked fields in a recording, with one field unmasked on purpose.

Read the failed request

The player skips the idle stretch and stops where it matters. The console and network panels stay in step with the screen: at 2:41 the import comes back 413, Payload Too Large, and 4821 tries four more times.

The Kitetrail replay player's Network tab for trial_4821: three GET requests return 200, then five POST /api/import requests return 413, and the selected one shows status 413 after 380 ms.
The Network tab at 2:43: five uploads, five 413s. Sample data.
The Kitetrail bug report CSV import fails above 5 MB, made from trial_4821's replay: the recorded moment, the console error and a comment pinned at 0:09.
The report, with the replay, console and a pinned comment. Sample data.

Report it from the moment

Report a bug from here turns the seconds around the playhead into a report with the replay, console, network and steps attached, ready for Jira, Linear, GitHub, GitLab or Slack.

Replays belong to the same people and events as your analytics, so a person's profile lists their sessions. More in bug capture.

Turn the replay into a fix

On day 6 the 5 MB limit shows in the dialog, 4821 imports their projects, and their setup checklist reads 4 of 4.

How bug capture works

TURN PRODUCT INSIGHTS INTO GROWTH

Build a product
users come back to.

Start improving activation, adoption and retention with Kitetrail.

Start your free trial

14 days free. No credit card needed.