Troubleshooting

Troubleshooting

If you experience unexpected behavior with Datadog Browser RUM, use this guide to resolve issues quickly. If you continue to have trouble, contact Datadog support for further assistance. Regularly update to the latest version of the RUM Browser SDK, as each release contains improvements and fixes.

Missing data

If you can’t see any RUM data or if data is missing for some users:

Common causesRecommended fix
Ad blockers prevent the Browser RUM SDK from being downloaded or sending data to Datadog.Some ad blockers extend their restrictions to performance and marketing tracking tools. See the Install the Browser RUM SDK with npm and forward the collected data through a proxy docs.
Network rules or VPNs prevent the Browser RUM SDK from being downloaded or sending data to Datadog.Grant access to the endpoints required to download the SDK or to send data. The list of endpoints is available in the Content Security Policy documentation.
Scripts, packages, and clients initialized before the Browser RUM SDK can lead to missed logs, resources, and user actions. For example, initializing ApolloClient before the Browser RUM SDK may result in graphql requests not being logged as XHR resources in the RUM Explorer.Check where the Browser RUM SDK is initialized and consider moving this step earlier in the execution of your application code.

Read the Content Security Policy guidelines and ensure your website grants access to the Browser RUM SDK CDN and the intake endpoint.

Browser RUM SDK initialized

Check if the Browser RUM SDK is initialized by running window.DD_RUM.getInternalContext() in your browser console and verify an application_id, session_id, and view object are returned:

If the SDK is not installed, or if it is not successfully initialized, you may see the ReferenceError: DD_RUM is not defined error like the one below:

You can also check your browser developer tools console or network tab if you notice any errors related to the loading of the Browser RUM SDK.

Data to the Datadog intake

The Browser RUM SDK sends batches of data periodically to the Datadog intake. If data is being sent, you should see network requests targeting /v1/input (the URL origin part may differ due to RUM configuration) in the Network section of your browser developer tools:

RUM cookies

The Browser RUM SDK relies on cookies to store session information and follow a user session across different pages. The cookies are first-party (they are set on your domain) and are not used for cross-site tracking. Here are the cookies set by the Browser RUM SDK:

Cookie nameDetails
_dd_sCookie used to group all events generated from a unique user session across multiple pages. It contains the current session ID, whether the session is excluded due to sampling, and the expiration date of the session. The cookie is extended for an extra 15 minutes every time the user interacts with the website, up to the maximum user session duration (4 hours).
dd_site_test_*Temporary cookie used to test for cookie support. Expires instantly.
dd_cookie_test_*Temporary cookie used to test for cookie support. Expires instantly.

Note: The following cookies have been used in the past: _dd_l, _dd_r and _dd. They have since been replaced by _dd_s in recent versions of the SDK and had the same purpose.

Further Reading

Additional helpful documentation, links, and articles: