Ajouter une ampleur de classement au rapport CrUX dans BigQuery

À partir de l'ensemble de données de février 2021, nous ajoutons une métrique expérimentale au rapport d'expérience utilisateur Chrome (CrUX) dans BigQuery, qui distingue la popularité des origines par ordre de grandeur: les 1 000 premières origines, les 10 000 meilleures, les 100 000 premières origines, les 1 million meilleures, etc.

Voyons à quoi cela ressemble en pratique:

SELECT
  experimental.popularity.rank AS rank_magnitude,
  COUNT(DISTINCT origin) AS num_origins
FROM
  `chrome-ux-report.all.202102`
GROUP BY
  rank_magnitude
ORDER BY
  rank_magnitude
Ligne rank_magnitude num_origins
1 1 000 1 000
2 10 000 9 000
3 100 000 90 000
4 1 000 000 900 000
15 10 000 000 7 264 371

Pour l'ensemble de données mondial de février 2021, nous obtenons 5 buckets. Comme prévu, à la ligne 1, nous voyons qu'il existe 1 000 origines avec une magnitude de rang de 1 000, la 1 000 selon notre métrique. La ligne 2 peut sembler surprenante, indiquant qu’il y a ne font que 9 000 origines dans l'ensemble des 10 000 premières origines ; cela est dû au fait que les origines de la ligne 1 sont et elle fait également partie du top 10. Pour sélectionner les 10 000 origines principales, il faut lorsque vous effectuez une requête, indiquez "experimental.popularity.rank <= 10000".

L'ensemble de données contient également une magnitude de rang spécifique au pays. Par exemple, ce répertorie les 10 000 origines les plus populaires en Allemagne.

SELECT DISTINCT origin
FROM `chrome-ux-report.country_de.202102`
WHERE experimental.popularity.rank <= 10000

Pour évaluer le potentiel de notre nouvelle métrique de popularité, voyons comment différents segments du Web au niveau de la métrique First Contentful Paint (FCP). Pour les besoins de cette requête, nous considérons qu'une seconde est une expérience utilisateur rapide.

SELECT
  SUM(fcp.density)/count(distinct origin)
FROM
  `chrome-ux-report.all.202102`,
  UNNEST(first_contentful_paint.histogram.bin) AS fcp
WHERE
  fcp.start < 1000 AND experimental.popularity.rank <= 1000

Pour les origines où experimental.popularity.rank est inférieur ou égal à 1 000, la requête additionne tous les éléments les densités de buckets d'histogrammes pour les valeurs de métrique FCP inférieures à 1 000 ms et divisent par le nombre d'origines, c'est-à-dire qu'elle calcule le pourcentage moyen les chargements FCP rapides pour les 1 000 origines les plus courantes. Dans cette requête, toutes les origines le même poids, donc ce n'est sans doute pas parfait. Mais voyons si le résultat est sensible à la modification de la magnitude du rang, en modifiant la clause WHERE pour indiquez "experimental.popularity.rank <= 10000". Nous procédons ainsi pour 10 000, 100 000, sur:

Magnitude du rang des origines Pourcentage du FCP < 1 s, moyenne sur les origines
1 000 53,6%
10 000 49,6%
100 000 45,9%
1 000 000 43,2%
10 000 000 39,9%

Cela montre qu'il existe une corrélation entre une expérience utilisateur plus rapide sur le Web et une plus grande popularité.

Dans l'ensemble de données d'octobre 2022, ce nombre a également été divisé par paliers de demi-classement. La réexécution de la première requête pour cet ensemble de données affiche les demi-étapes et le nombre d'origines dans chaque magnitude de rang :

SELECT
  experimental.popularity.rank AS rank_magnitude,
  COUNT(DISTINCT origin) AS num_origins
FROM
  `chrome-ux-report.all.202210`
GROUP BY
  rank_magnitude
ORDER BY
  rank_magnitude
Ligne rank_magnitude num_origins
1 1 000 1 000
2 5 000 4 000
3 10 000 5 000
4 50 000 40 000
5 100 000 50 000
6 500 000 400 000
7 1 000 000 500 000
8 5 000 000 4 000 000
9 10 000 000 5 000 000
10 50 000 000 7 637 195

Découvrez comment utiliser CrUX dans BigQuery et parcourez le livre de recettes CrUX pour découvrir d'autres exemples de requêtes. Partagez vos requêtes si vous le souhaitez et dites-nous ce que vous en trouvez.