Les équipes de développement de Chrome sont également à l’origine des « Core Web Vitals », les indicateurs clés de performance mesurant la Webperformance de vos sites en se basant sur les données transmises par le navigateur Chrome.
Oui, Chrome agit comme un gentil espion qui envoie (de manière anonyme) les données sur les délais observés lors de vraies visites de vrais gens sur vos pages. Et ces données (baptisées CRux comme Chrome User Experience Report), sont bien utiles pour savoir si votre site est réellement perçu comme lent par vos utilisateurs. Avant les données CRux, on se basait sur des données de laboratoire produites par des outils dont les résultats sont parfois en décalage avec la réalité.
Rappel : pour consulter les données de votre site, le rapport Crux est disponible ici : https://cruxvis.withgoogle.com/
Chaque année, les équipes de Chrome, en liaison avec l’écosystème des acteurs intéressés par l’optimisation de la web performance, font évoluer les Core Web Vitals.
Et là, ils viennent de lancer quelque chose de très utile pour mesurer la web performance des SPA.
Le problème des SPA et la mesure de la web performance
Les sites « Single Page Application » (SPA) sont des sites web qui fonctionnent comme un applicatif unique qui ne génère pas les pages web de manière traditionnelle, mais « virtuellement ». Le site n’a qu’une seule page (la page d’accueil) et c’est en interagissant avec des objets de la page d’accueil (liens, menus, boutons) que vous générez le contenu d’autres pages totalement virtuelles. Mais ces contenus se chargent sans que vous rechargiez une autre page, et d’ailleurs parfois, l’url de ces contenus ne change même pas !
Ce concept, décalqué des applications mobiles « old school », a ses vertus, mais aussi ses contraintes. Un site qui n’a qu’une seule page web crawlable et indexable serait un cauchemar à référencer (et dans les faits, cela arrive que ces technos aboutissent à des sites impossibles à optimiser correctement pour le SEO). Mais la technologie a évolué, et aujourd’hui on implémente des SPA dont les pages virtuelles sont associées à des urls.

En fait, quand vous chargez une page virtuelle, l’application change l’url dans le champ de recherche du navigateur. C’est fait avec un peu de code javascript et l’emploi de la fonction pushstate(). Cette petite astuce permet de simuler un site web normal, avec une relation univoque url <-> contenu et donc des « pages web virtuelles » : crawlable, indexables.

Côté mesure de la web performance : le comportement de ces sites est pour le moins exotique… Et les Core Web Vitals donnaient, dans ce contexte, des résultats parfois aberrants.
L’option soft nav dans le rapport CRUX et les api CRUX
Depuis le 13 octobre, le rapport CRux permet un petit ajustement via un slider, qui permet de basculer en mode « soft nav » si votre site utilise la « navigation douce » (le changement de page via pushtate).

Essayez de regarder la différence sur le open.spotify.com : leurs indicateurs son sérieusement améliorés avec le mode soft nav.
Pour le moment, ce mode est encore expérimental jusqu’en mai 2027 (le mois des changements définitifs sur les CVW)
Pour en savoir plus
L’annonce d’Annie Sullivan :
https://web.dev/blog/crux-experimental-soft-navs
La documentation sur la mesure des navigations douces dans les données CRux
https://developer.chrome.com/docs/web-platform/soft-navigations?hl=fr