
A web app can ace its first-load benchmark and still feel slow by the third tap. The opening screen appears instantly, the install looks polished, and then a route to search, checkout, or the inbox stalls while data and JavaScript catch up. Until now, the performance dashboard could keep insisting that everything was fine because it treated the whole session as one long page.
Chrome 151 changes that picture. The stable release introduces performance entries for soft navigations and the content painted after an interaction. For teams building single-page applications and installable web apps, that turns an important layer of app-like UX from an analytics blind spot into something the browser can describe.
Traditional web performance measurement is organized around a document load. A user requests a page, the browser navigates, and familiar milestones describe what happens next. That model works naturally for sites where every link loads another document.
Many modern web apps do something different. JavaScript changes the visible interface, updates the URL and history, and fetches new data without replacing the underlying document. Users experience a new screen, but the browser has historically seen a continuation of the original page. The first route gets a detailed performance story; later routes can disappear into aggregate interaction data.
This mismatch is especially awkward for installed web apps. Removing browser chrome and launching from an icon makes each route feel more like a screen in a native application. Users do not care that the dashboard, conversation, product page, or payment flow shares one document. They judge the delay in front of them.
Released on July 28, Chrome 151 adds two performance entry types: soft-navigation y interaction-contentful-paint. They are available through the browser’s existing performance-observation machinery rather than through a new PWA-only system.
A soft-navigation entry represents an interaction-driven, same-document history change. When Chrome recognizes one, it establishes a new time origin so subsequent performance information can be attributed to the active route instead of remaining attached to the document’s initial URL.
An interaction-contentful-paint entry reports new contentful paints within the part of the page changed by an interaction. Importantly, the release notes say this includes updates that depend on asynchronous work such as a fetch request. That is precisely where many app-like flows become frustrating: the tap responds, but meaningful content arrives noticeably later.
This does not make an application faster. It makes a class of slowness easier to locate. That distinction matters because observability is what lets teams move from vague reports that an app “feels laggy” to a route, interaction, and rendering sequence they can investigate.
The new entries work for single-page applications generally; they do not require installation, a manifest, or a service worker. But installable web apps have more at stake because installation raises the user’s expectations.
A service worker may cache the application shell and make launch impressively fast. That success can conceal later problems: a large route bundle, an expensive component render, a slow API response, or layout work after the user chooses a destination. If monitoring only celebrates the initial load, the team can optimize the least problematic moment in the journey.
Chrome 151 creates a path toward measuring web apps screen by screen while retaining the web’s URL-based architecture. That is commercially useful. A slow catalogue route affects discovery; a slow authentication transition affects activation; a slow checkout transition affects revenue. Route-level evidence helps connect browser performance work with product outcomes.
The sensible first move is measurement, not a rewrite. Keep existing hard-navigation monitoring so historical and cross-browser comparisons remain intact. Add the Chrome 151 signals as a separate route-level view, then compare what the first-load metrics said with what users encountered later in the session.
Prioritize flows with product meaning: opening a project, switching an account, loading a conversation, adding an item, or confirming a transaction. A generic average across every soft navigation can recreate the same blindness at a smaller scale. The value comes from knowing which transition is slow and whether that transition matters to the business.
Teams should also resist treating the new entries as a universal score. This is a Chrome release, and a production audience may include older Chrome versions and other browser engines. Instrumentation should feature-detect support and preserve existing telemetry for users who cannot report the new entries.
Nor does the release mean that public Core Web Vitals datasets or search systems instantly judge every SPA route differently. Chrome describes the new entries as a way to track interaction-driven performance and build on established metrics. Product teams can use the signals now, but should separate browser-side measurement capability from any future change in ecosystem-wide reporting.
Installable web apps compete on more than installation. They compete on the feeling that every action leads somewhere quickly and predictably. Chrome 151 does not erase the capability gap between platforms or fix a slow application by itself. It does, however, expose performance at the level where users experience an app: the route after the tap.
That is an important step for the web-app market. Once teams can see the slow screen rather than merely the fast launch, they can budget, prioritize, and improve the experience that users actually return to.