Aggiunta dell'entità del ranking al report CrUX in BigQuery

A partire dal set di dati di febbraio 2021, aggiungeremo una metrica sperimentale al report CrUX in BigQuery che distingue la popolarità delle origini in base agli ordini di grandezza: le prime 1000 origini, le prime 10.000, le prime 100.000, le prime 1.000.000 e così via.

Vediamo come funziona in pratica:

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
Riga rank_magnitude num_origins
1 1000 1000
2 10.000 9000
3 100.000 90.000
4 1.000.000 900.000
15 10.000.000 7.264.371

Per il set di dati globale di febbraio 2021, abbiamo 5 bucket. Come previsto, nella riga 1 vediamo che ci sono 1000 origini con una magnitudine del ranking pari a 1000, ovvero le 1000 origini più popolari in base alla nostra metrica. La riga 2 può sembrare sorprendente, indicando che ci sono solo 9.000 origini tra le prime 10.000 origini; questo perché anche le origini nella riga 1 fanno parte del set delle prime 10.000. Per selezionare le prime 10.000 origini, è necessario specificare experimental.popularity.rank <= 10000 durante la query.

Il set di dati contiene anche l'ordine di grandezza del ranking specifico per paese. Ad esempio, questa query elenca le 10.000 origini più popolari in Germania.

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

Per soffermarci sul potenziale della nostra nuova metrica relativa alla popolarità, vediamo le differenze tra i segmenti di popolarità del web rispetto alla metrica First Contentful Paint (FCP). Ai fini di questa query, consideriamo 1 secondo un'esperienza utente rapida.

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

Per le origini con experimental.popularity.rank <= 1000, la query somma tutte le densità dei bucket dell'istogramma per i valori della metrica FCP inferiori a 1000 ms e le divide per il numero di origini, ovvero calcola la percentuale media di caricamenti FCP rapidi per le 1000 origini più popolari. In questa query tutte le origini hanno lo stesso peso, quindi probabilmente non è perfetto. Tuttavia, vediamo se il risultato è sensibile alla modifica dell'ordine di grandezza del ranking modificando la clausola where per specificare experimental.popularity.rank <= 10000. Facciamo questo per 10.000, 100.000 e così via:

Classifica la magnitudine delle origini Percentuale di FCP < 1 s, mediata sulle origini
1.000  53,6%
10.000 49,6%
100.000 45,9%
1.000.000 43,2%
10.000.000 39,9%

Ciò indica che un'esperienza utente più rapida sul web è correlata a una maggiore popolarità.

Nel set di dati di ottobre 2022, questo valore è stato ulteriormente suddiviso in incrementi di mezzo ranking. La ripetizione della prima query per questo set di dati mostra i semipassaggi e il numero di origini in ogni magnitudine del ranking:

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
Riga rank_magnitude num_origins
1 1000 1000
2 5000 4000
3 10.000 5000
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

Scopri di più sull'utilizzo di CrUX su BigQuery e consulta il Cookbook di CrUX per altre query di esempio. Se vuoi, condividi le tue query e facci sapere cosa trovi.