On this page

Real user monitoring and Web Vitals

Real user monitoring (RUM) measures how your pages perform for real visitors. A tenant administrator turns it on and records the privacy decision, a web developer makes sure the extensions script loads, and anyone with analytics access reads the results on the Client RUM page.

Key points

  1. Two switchesRUM needs RUM Collection on for the workspace and a domain sample rate above 0. A rate of 0 sends nothing.
  2. Sample rate is set by operators todayThe per-domain sample rate field is editable by Noxtica operators. Ask your account team to set it.
  3. API latency is the SDK's own callsAPI latency measures the SDK's calls to Noxtica endpoints, never your page's own requests.
  4. Do Not Track is honoredWith the policy set to Honor, a visitor who sends Do Not Track or Global Privacy Control is excluded.
How this page is organisedBar length shows each section’s share of the text. Select a section to jump to it.

What it is

Availability: Controlled availability. RUM is off until it is switched on for your workspace and for a domain, and it runs when enabled for your organisation.

The browser sends small, sampled beacons to the ingest host. The beacons come from the extensions script. The core script alone never sends RUM.

GroupWhat you seeBackoffice name
Web VitalsLoading speed, visual stability, responsiveness and paint timingLCP, CLS, INP, FCP
Navigation timingsDNS lookup, TCP connect, TLS handshake, response start and DOM processingDNS lookup, TCP connect, TLS handshake, TTFB, DOM processing
Page viewsSampled page views, including route changes in single-page appsPageviews
Error countsUncaught errors and unhandled promise rejections, recorded under a closed set of names. Raw error message text is not used as a name.Capped error count, Error rate
API latencyMean round trip of the SDK’s own calls to Noxtica’s /client/* endpoints. It is never your page’s own requests.API latency
Resource timingDurations for third-party hosts you allow-listResource duration
SDK healthThe SDK and recorder’s own counters and closed diagnostic codes, never page contentSDK health panel

Each Web Vital is rated Good, Needs improvement or Poor against the standard Core Web Vitals boundaries. For what the browser stores on the visitor’s device and which category governs it, see Install & Browser Runtime and Privacy.

Gates

Beacons flow for a domain when all of these hold:

  1. Workspace switch. RUM Collection is on for the workspace. It is off by default.
  2. Domain sample rate. The domain’s Client RUM sample rate is above 0. A rate of 0 means nothing is sent. The default is 0.
  3. Privacy decision. The domain records whether visitors must consent, a legal basis if they do not, and how Do Not Track and Global Privacy Control are handled.
  4. Visitor signals. With the policy set to Honor, a visitor who sends Do Not Track or Global Privacy Control is excluded. The browser checks it and the collector checks it again. In consent-gated modes (api and cookie), the analytics category must also be granted.

Because sampling decides which page views send beacons, treat the numbers as a sample, not a census.

Prerequisites

  • Extensions script. It must load on the page, either through your consent flow or through Auto-load extensions. See Consent modes, GPC and Google Consent Mode.
  • Roles. Switching on RUM Collection and recording the privacy decision need the Admin role and a fresh step-up verification. Reading Client RUM needs the Viewer role or higher.
  • Sample rate. Today the per-domain sample rate field is editable by Noxtica operators. It is disabled for tenant roles in Backoffice, so ask your account team to set it.
  • Content Security Policy. The page allows the collector host and the ingest host in connect-src. See Content Security Policy, hosts and relay.
  • Flags. RUM works when enabled for your organisation.

Steps

1. Make the extensions script load

Pick one route. Both are on Backoffice → Integrations & API → Script & Consent.

  • Your site loads it after its own consent. Record the visitor’s choice with setConsent(), then load the extensions. Visitors who decline never load them and send no RUM.
  • Turn on Auto-load extensions. Switch on Load the extensions script automatically for the domain. No change to your site is needed.

2. Record the domain’s privacy decision

Backoffice → Web Analytics & Privacy → Consent & Privacy. The Consent & privacy decisions card puts domains that still need a decision at the top of its list.

  1. Choose the Legal basis. The list offers rum_observability. Leave it at — none — when visitors must consent.
  2. Set Requires consent.
  3. Set the DNT/GPC policy to Honor, or to Documented override.
  4. Select Save decision and complete the step-up verification.

Rules the page enforces:

  • Capturing without consent needs an approved legal basis.
  • Overriding Do Not Track and Global Privacy Control needs an approved legal basis and your acknowledgement: “I acknowledge this domain overrides DNT/GPC on an approved legal basis.”
  • This decision covers per-domain RUM consent and Do Not Track decisions. Tenant-wide gate receipts are recorded in the Legal Basis Register.

3. Turn on RUM Collection for the workspace

Backoffice → Web Analytics & Privacy → RUM Collection. Switch Client RUM collection on and select Save. The page shows when the setting last changed.

4. Set the domain’s sample rate

Backoffice → Administration → Domains → open the domain → Configuration → Client RUM → Sample rate. The value runs from 0 (off) to 1 (every page view) and defaults to 0. Raising a rate above 0.5 from a value at or below it needs a separate risk acknowledgement.

Ask your account team to apply the value until your role can edit it.

5. Optional: report on third-party resources

Backoffice → Web Analytics & Privacy → Tracking Allowlists → RUM trace controls.

  1. Add hostnames under Resource-host allowlist. Use lowercase hostnames without a port or an IP address. The list holds up to 50 hosts.
  2. Switch on Enable Resource-Timing observation.
  3. Select Save trace controls.

The observer installs when the switch is on and the list is not empty. For trace origins see Custom events, session tags and request tracing.

6. Read the Client RUM page

Backoffice → Session Insights → RUM & APM → Client RUM.

  • Filters. Choose Domain, Device (Desktop, Tablet, Mobile, Unknown), Browser (Chrome, Firefox, Safari, Unknown) and Time range.
  • Overview tab. KPIs show Total samples, Error rate, LCP, API latency and Capped error count. The metrics table shows each metric’s samples, mean and the split across Good, Needs improvement and Poor.
  • Vitals by environment. INP, LCP and CLS are broken down by connection type, device memory and CPU bucket. Browsers that do not expose connection type or device memory, such as Safari and Firefox, land in the Unknown bucket.
  • SDK health. The SDK and session recorder’s own counters, such as recorder starts, events dropped, flush failures and diagnostics.
  • Errors tab. It opens the Issues page. See Browser errors, console logs and source maps.
  • Console logs tab. Masked console lines, when capture is on.
  1. Make the extensions script load

    Load it after your own consent, or switch on Auto-load extensions in Script and Consent.

  2. Record the privacy decision

    In Consent and Privacy choose the legal basis, whether consent is required and the Do Not Track policy.

  3. Turn on RUM Collection

    Switch on Client RUM collection for the workspace and complete the step-up verification.

  4. Set the domain sample rate

    Set a rate above 0 on the domain's Client RUM card. Ask your account team until your role can edit it.

  5. Read the Client RUM page

    Filter by domain, device, browser and time range, then read vitals, errors and SDK health.

Turning RUM on for a domain

Verify it works

  1. Load a page on the domain, accept consent if your site asks, and browse for a minute.
  2. In your browser’s network panel, look for requests to the ingest host whose path starts with /client/rum.
  3. On the Client RUM page, widen Time range if needed. Total samples rises and LCP shows a value.
  4. If a card is empty, read its message. Each message names the missing switch.

Troubleshooting

SymptomCauseFix
Client RUM capture is offRUM Collection is off for the workspace.Switch it on in step 3.
No domain is sampling RUMThe workspace is on but every domain has a sample rate of 0.Ask your account team to set a rate in step 4.
RUM needs the extensions script, and your settings do not load itAuto-load extensions is off and your page does not load the extensions.Use either route in step 1.
No visitors in this window yet or No RUM data in this windowThe window is too short, or no sampled visit arrived.Widen the range, clear filters, wait for traffic.
No RUM data in this window, capture settings could not be readBackoffice could not read the capture settings.Open RUM Collection and check the switch. Retry.
Visitors with Do Not Track or Global Privacy Control are missingThe domain policy is Honor.This is the intended behaviour. Change the policy with a recorded legal basis.
Save refused: consent-optional capture needs a basisYou turned off Requires consent without a legal basis.Choose rum_observability, or turn Requires consent on.
Save refused: override needs a basisYou chose Documented override without a legal basis.Choose a legal basis and tick the acknowledgement, or set the policy back to Honor.
Vitals by environment shows mostly UnknownThe browser does not expose connection type or device memory.No fix. Safari and Firefox expose neither.

Who it fits

Use RUM to see where friction appears, then decide what to change.

  • How do visitors move within a page load? Where tracker collection is enabled, the console also offers journeys, funnels and heatmaps. A tracker session covers one page load by design, so they do not follow visitors across pages. See Behavior analytics: heatmaps, journeys and funnels.

How teams connect

RUM runs from the same browser script as the rest of Noxtica and needs no extra code. You connect it in three places:

Limits

Measurements are samples from browsers that allow collection.

  • Controlled availability. Capture and read access are configured separately for each tenant and domain, and access is agreed with Noxtica.
  • A missing measurement does not mean a good or a bad visit. Browser support, privacy settings and consent change what is collected.
  • You are responsible for notice, consent, sampling and retention. Console output and error detail can contain personal data that your page writes.
  • Measurements and any alerts built on them can produce false positives and false negatives. Your team decides what to do. Native mobile app monitoring is not supported.

Common questions

Is RUM the same as session replay?

No. RUM samples performance and error measurements. Session replay records page structure and interactions and has its own consent category. See Session replay: setup, masking and playback.

Can I follow a visitor across pages?

No. Journeys and funnels do not span pages. The reason is in the third item under Who it fits.

Can I turn RUM off for a domain?

Sampling is set per domain and can stay at zero, which sends nothing. See step 4. Capture and read access are configured separately; see Limits.