Skip to main content

Your Users Won't Have to Tell You

See every load, error, and interaction real users hit on web, mobile, and mini programs. Errors group into issues and go straight to on-call and AI SRE.

1.0Error tracking

Errors grouped into issues, stacks mapped to source

Similar errors merge into one issue, showing how many users are affected and which release introduced it. Upload source maps and minified stacks resolve to the original file, function, and line.

TypeErrorOpen1,204 events → 1 issue

Cannot read properties of undefined (reading 'filter')

Events

1,204

Users

86

First seen

v2.14.0

Impact breakdown

Browser
Chrome 128 · 72%
Page
/rule/add · 100%
OS
macOS · 64%

Minified stack

Upload source map

Resolved with source map

src/pages/rule/add/content.tsx:322:16

Duplicates collapse

One root cause, one issue to triage

Straight to the line

File, function, and snippet in the issue

Release-aware

First-seen version makes regressions obvious

2.0Session replay

Rewind to the moment it broke

Session replay reconstructs clicks, scrolls, and navigation, with errors and slow requests marked on the timeline. User input is masked by default, and password fields are never captured.

New alert rule

Rule name

••••••••Masked

Query

••••••••••••••••Masked
Save
00:41 / 01:05
  1. View /rule/add

    00:04

  2. Click “Add condition”

    00:13

  3. Type rule name

    00:22

  4. TypeError: Cannot read properties of undefined

    00:31

  5. POST /api/rule 1.8s

    00:40trace 4bf92f…Backend trace

No more guessing

Replay every step in order

Context included

Errors and requests line up with replay

Private by default

Input masked, elements excludable

3.0Close the loop

From a user's error to a fix PR, in one flow

RUM issues land in your Flashduty team space and page the on-call engineer per your dispatch policy. AI SRE picks up the session, release, and source-mapped stack to investigate and propose a fix.

01

RUM detects

A real user hits an error; it groups into an issue

02

On-call routes

Dispatch policy pages the engineer on duty

03

AI SRE investigates

Session and source stack point to the root cause

04

Fix shipped

A fix is drafted and a pull request opened

Real-world story

From a real user's error to a fix PR in 8 minutes

Read the full story

No waiting on tickets

Handling starts before anyone reports

Reuse on-call

Team-space dispatch, or a webhook

Follow the request to the backend

Frontend requests link to backend traces

4.0Performance

Measure speed with real user data

Not lab scores — the LCP, INP, and CLS each user actually experiences on real networks and devices. Slice by page, release, region, and device in the Explorer to find the slowest stretch.

Core Web Vitals · P75

LCP

2.1s

Good ≤ 2.5s

INP

168ms

Good ≤ 200ms

CLS

0.04

Good ≤ 0.1
LCP
INP
CLS
GoodNeeds workPoor

LCP · by device

Desktop

1.8s

Mobile

2.7s

Tablet

2.2s

Explorer · Slowest pages

Release=v2.14.0Region=US EastDevice=Mobile
/checkout3.8s
/search?q=*3.1s
/product/:id2.6s
/cart2.3s
/1.7s

Page load waterfall

document
app.js
hero.webp
GET /api/cart
fonts.woff2
vendor.js
GET /api/recs

Real users, real conditions

Every network, device, and region

Drill into any page

Split by page, release, region, and device

Slow requests in view

API latency and asset loads side by side

5.0Platforms

One SDK family for every surface your users touch

Native SDKs for 8 platforms with one data model. Whether users arrive from a browser, a phone, or a mini program, their experience lands in one place.

Web
iOS
Android
HarmonyOS
Mini Program
React Native
Flutter
Electron
8platforms

Compare the experience across platforms in one application.

Read the setup docs

One data model

Sessions, views, actions, resources, errors, and long tasks share the same fields on every platform.

SessionViewActionResourceErrorLong Task

A few lines to install

Add it via CDN or npm; collection starts on init — no per-page instrumentation.

Light on the page

The web SDK is about 50 KB gzipped, loads async, and initializes in under 8 ms.

Sampling and privacy controls

Set session sample rates and mask user input by default to keep volume and compliance in check.

Session sampling 100%Replay sampling 10%Input masked by default

FAQ

Less noise. Faster recovery.

Start free—no credit card. Book a demo to see your alerting pipeline end to end.