Security & privacy

webflutter

Tracebird captures screens of real applications — the defaults are built so that doing the right thing requires zero configuration.

Masking, by default

  • All input values are masked in DOM snapshots and session recordings — the masking happens at capture time, in the browser, so real values never enter a buffer.
  • Passwords are always masked, with no way to opt out.
  • Network bodies are never read; auth headers never leave the page.
  • Testers can blur any region of a screenshot before sending — the pixels are destroyed client-side.

Transparency for testers

Recording is never silent: a pulsing REC badge with a live timer is visible for the entire duration of a test session, on every page. The report panel lists what is being captured before the tester hits send.

Abuse containment

The project key is public; the server contains it: per-project origin allowlists, indistinguishable 403s for bad keys and bad origins, rate limiting — each identified caller gets its own budget, with a per-IP backstop for anonymous traffic — an 8 MB request cap with per-field limits, and heavy media stripped from list endpoints so they can't be used to exfiltrate in bulk.

Data handling

  • Screenshots and recordings live in a private bucket, never on a public URL. The dashboard serves them through links that expire in minutes, minted only after checking you belong to the workspace.
  • Deleting a project cascades immediately to its reports, comments and stored media.
  • Dashboard API access is server-to-server only — the token never reaches a browser.
noteTell your testers what's captured — link them to Captured context: it is the exhaustive list, caps included, and doubles as your disclosure page.