Google Chrome is testing a new way to measure Core Web Vitals in Single Page Applications (SPAs), which is a long-standing blind spot in performance tracking that affects SEO audits and ranking signals.
Starting with Chrome 139, developers can opt into an origin trial for the Soft Navigations API. This enables measurement of metrics like LCP, CLS, and INP even when a page updates content without a full reload.
Why This Matters For SEO
SPAs are popular for speed and interactivity, but they’ve been notoriously difficult to monitor using tools like Lighthouse, field data in CrUX, or real user monitoring scripts.
That’s because SPAs often update the page using JavaScript without triggering a traditional navigation. As a result, Google’s measurement systems and most performance tools miss those updates when calculating Core Web Vitals.
This new API aims to close that gap, giving you a clearer picture of how your site performs in the real world, especially after a user clicks or navigates within an app-like interface.
What The New API Does
Chrome’s Soft Navigations API uses built-in heuristics to detect when a soft navigation happens. For example:
- A user clicks a link
- The page URL updates
- The DOM visibly changes and triggers a paint
When these conditions are met, Chrome now treats it as a navigation event for performance measurement, even though no full page load occurred.
The API introduces new metrics and enhancements, including:
interaction-contentful-paint
– lets you measure Largest Contentful Paint after a soft navigationnavigationId
– added to performance entries so metrics can be tied to specific navigations (crucial when URLs change mid-interaction)- Extensions to layout shift, event timing, and INP to work across soft navigations
How To Try It
You can test this feature today in Chrome 139 using either:
- Local testing: Enable
chrome://flags/#soft-navigation-heuristics
- Origin trial: Add a token to your site via meta tag or HTTP header to collect real user data
Chrome recommends enabling the “Advanced Paint Attribution” flag for the most complete data.
Things To Keep In Mind
Chrome’s Barry Pollard, who leads this initiative, emphasizes the API is still experimental:
“Wanna measure Core Web Vitals for for SPAs?
Well we’ve been working on the Soft Navigations API for that and we’re launching a new origin trial from Chrome 139.
Take it for a run on your app, and see if it correctly detects soft navigations on your application and let us know if it doesn’t!”
Here’s what else you should know:
- Metrics may not be supported in older Chrome versions or other browsers
- Your RUM provider may need to support
navigationId
andinteraction-contentful-paint
for tracking - Some edge cases, like automatic redirects or
replaceState()
usage, may not register as navigations
Looking Ahead
This trial is a step toward making Core Web Vitals more accurate for modern JavaScript-heavy websites.
While the API isn’t yet integrated into Chrome’s public performance reports like CrUX, that could change if the trial proves successful.
If your site relies on React, Vue, Angular, or other SPA frameworks, now’s your chance to test how well Chrome’s new approach captures user experience.
Featured Image: Roman Samborskyi/Shutterstock