---
title: Introduction to single page application (SPA) monitoring
source: https://docs.newrelic.com/docs/browser/single-page-app-monitoring/get-started/introduction-single-page-app-monitoring
---

New Relic browser monitoring offers single-page application (SPA) monitoring to give you deeper visibility and actionable insights into real user interactions with single-page apps.

The SPA feature monitors [soft navigations](https://developer.chrome.com/docs/web-platform/soft-navigations-experiment#what_is_a_soft_navigation) automatically, and our SPA API allows you to modify the interactions. Developers and their teams can use the API to:

-   Track user journeys through URL paths on their SPA.
-   Monitor the throughput and performance that real users are experiencing.
-   Troubleshoot and resolve problems within the context of the page load.
-   [Query your data](https://docs.newrelic.com/docs/using-new-relic/data/understand-data/query-new-relic-data) to assist with business decisions.
-   Bring better apps to the marketplace more quickly.

## Enable SPA monitoring [#enable]

SPA monitoring is enabled by default for new browser agent installations. The SPA-enabled version of the agent gives access to other powerful New Relic features, like distributed tracing. For more information, see [Enable browser monitoring](https://docs.newrelic.com/docs/browser/new-relic-browser/installation/update-browser-agent/#agent-types).

## Compatibility [#compatibility]

For compatibility information about SPA-related features, see [SPA requirements](https://docs.newrelic.com/docs/browser/new-relic-browser/getting-started/compatibility-requirements-browser-monitoring#spa).

## Analyze throughput and performance data [#spa-data]

`BrowserInteraction` events drives the UI page views tab whenever SPA is enabled. Both the initial page load (hard nav) and route changes (soft navs) are shown.

![browser_SPA.png](https://docs.newrelic.com/images/browser_screenshot-full_spa-pageview.webp "browser_SPA.png")

**[one.newrelic.com > All capabilities](https://one.newrelic.com/all-capabilities) > Browser > (select an app) > Page views:** Use browser monitoring's SPA monitoring to examine the throughput and performance of your SPA-architecture app.

SPA data monitored by browser monitoring includes:

-   Performance data and throughput for page loads and route changes
-   AJAX request data
-   Dynamic page updates, monitored using the [SPA API](https://docs.newrelic.com/docs/browser/new-relic-browser/browser-agent-spa-api)

With this data, you will gain a clear understanding of how your users experience your app's page loads and route changes, and be able to solve bottlenecks and troubleshoot errors. For more about how New Relic handles SPA data, see [Understand SPA data collection](https://docs.newrelic.com/docs/browser/single-page-app-monitoring/use-spa-data/understand-spa-data-collection).

## Browser SPA features [#features]

Here is a summary of SPA monitoring features:

| **Single-page app monitoring**        | **Take advantage of these features**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Robust views in browser's UI          | When a user initiates an interaction event, New Relic tracks the time until the url path changes and the next frame is repainted. When SPA monitoring is enabled, the [**Page views** page](https://docs.newrelic.com/docs/browser/single-page-app-monitoring/browser-ui/view-spa-data-new-relic-browser) in browser shows event-driven data about application usage levels (throughput) and user experience (performance), including: - Charts with drill-down details about initial page load performance, route changes, and historical performance - Sort, search, and filter options, including custom attributes - Additional AJAX breakdown data for all initial page loads and route changes For an explanation of how SPA monitoring will impact your existing browser account's data usage, see [SPA and browser data usage](https://docs.newrelic.com/docs/browser/single-page-app-monitoring/get-started/spa-monitoring-new-relic-data-usage).                                                                                          |
| Data analysis with metrics and events | [Metrics and events](https://docs.newrelic.com/docs/query-your-data/explore-query-data/data-explorer/introduction-data-explorer) supports two SPA-specific event types: [`BrowserInteraction`](https://docs.newrelic.com/docs/insights/new-relic-insights/decorating-events/browser-default-attributes-insights#browserinteraction-attributes) and [`AjaxRequest`](https://docs.newrelic.com/docs/insights/new-relic-insights/decorating-events/browser-default-attributes-insights#ajaxrequest-attributes), which may be associated with the former when using the SPA agent. You can query these events in the [query builder](https://docs.newrelic.com/docs/query-your-data/explore-query-data/query-builder/use-advanced-nrql-mode-specify-data) to analyze your app's performance and make business decisions. Previously, [`BrowserTiming`](https://docs.newrelic.com/docs/insights/insights-data-sources/default-events-attributes/browser-default-events-attributes-insights#browsertiming-attributes) also existed but is now deprecated. |
| Customized data from API              | Use [SPA API](https://docs.newrelic.com/docs/browser/new-relic-browser/browser-agent-spa-api) to obtain the specific data you need, such as custom naming, custom timing, or other custom attributes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
