Skip to main content
Web RUM SDK automatically collects rich user behavior and performance data. Each RUM event includes default attributes (such as view.url, device.type, geo.country) as well as additional metrics and attributes specific to each event type.

Default Attributes

Web RUM SDK automatically captures the following default attributes, applicable to all RUM event types.
Geo-location information is inferred by FlashCat backend based on client IP address. Precise GPS location is not collected on the client.
You can also add custom user attributes such as usr.plan, usr.role, etc. To set user information, see SDK Integration Guide.

Event-Specific Attributes

Different event types have specific attributes and metrics.
RUM collects all performance metrics from the Navigation Timing API as well as metrics related to Core Web Vitals.Core Web VitalsNavigation Performance MetricsNetwork Timing Metrics
RUM collects detailed network timing information from the Resource Timing API for individual resource loading.
If GraphQL request tracking is enabled, the following attributes are attached to resource events:
Long tasks are tasks that block the main thread for 50 milliseconds or longer. These tasks cause high input delay, slow interactions, or janky animations/scrolling.
Long task detection is only available in browsers that support the Long Tasks API (Chrome, Edge). Safari and Firefox don’t support this feature.
Frontend errors are collected via RUM. Error messages and stack traces (if available) are included.General Error AttributesNetwork Error AttributesNetwork errors contain information about failed HTTP requests:
For more information about different JavaScript error types, see MDN documentation.
Action Timing AttributesAction Identification Attributes
RUM automatically detects user frustration signals, helping you understand problems users encounter in your application.
Frustration signals are important indicators for identifying user experience issues. Dead clicks and rage clicks typically indicate UI response delays or interaction design problems.
If the URL contains UTM parameters, RUM automatically captures the following attributes for tracking marketing campaigns:

Data Storage

Before uploading to FlashCat, data is temporarily stored in plaintext in the browser’s local storage (LocalStorage or SessionStorage).
1

Data Collection

SDK adds events to an in-memory batch buffer.
2

Local Caching

When network is unavailable, batches are retained in local storage.
3

Batch Upload

When network is available, data is sent to server in batches.
4

Auto Cleanup

Data exceeding certain time limits is automatically cleaned up to avoid excessive storage usage.
Sensitive data should not be included in RUM events, or should be obfuscated or filtered via the beforeSend callback before sending.

Data Upload

Web RUM SDK uploads collected events to the server in batches to optimize network performance and reduce impact on user experience.

Batch Upload Triggers

  • Event count in batch reaches threshold
  • Batch size reaches threshold
  • Periodic upload (e.g., every 10 seconds)
  • Page unload (beforeunload event)

Upload Strategy

Privacy and Compliance

IP Address Anonymization

SDK can be configured to anonymize IP addresses

Sensitive Data Filtering

Use beforeSend callback to filter or obfuscate sensitive information

Cookie and Storage Control

Configurable whether to use cookies and local storage

GDPR/CCPA Compliance

Supports user privacy opt-out mechanism
For detailed privacy configuration information, see Advanced Configuration.

More Information

SDK Integration

Learn how to integrate RUM SDK in Web applications

Advanced Configuration

Learn how to configure advanced SDK features

Compatibility

Learn about SDK browser and framework compatibility