BigQuery の CrUX レポートにランク マグニチュードを追加

2021 年 2 月のデータセットから、BigQuery の CrUX レポートに試験運用版の指標が追加されます。この指標では、オリジンの人気度を桁別に区別します(上位 1,000 オリジン、上位 10,000 オリジン、上位 100,000 オリジン、上位 100 万オリジンなど)。

実際にどのようになっているか見てみましょう。

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
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

2021 年 2 月のグローバル データセットの場合、5 つのバケットが生成されます。予想どおり、1 行目には、ランクの桁数が 1,000 のオリジンが 1,000 件あります。これは、この指標で最も人気のあるオリジンの 1,000 件です。行 2 は、上位 1 万セットにオリジンが 9, 000 個しかないことを示しており、これは行 1 のオリジンも上位 1 万セットの一部であるためです。上位 1 万のオリジンを選択するには、クエリ時に experimental.popularity.rank <= 10000 を指定する必要があります。

このデータセットには、国別のランクの規模も含まれています。たとえば、次のクエリは、ドイツで最も人気のある 1 万個のオリジンを一覧表示します。

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

新しい人気指標の可能性について説明するため、ウェブの人気セグメントがコンテンツの初回ペイント指標(FCP)とどのように異なるかを見てみましょう。このクエリでは、1 秒を高速なユーザー エクスペリエンスと見なします。

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

experimental.popularity.rank <= 1,000 のオリジンの場合、このクエリは、1,000 ミリ秒未満の FCP 指標値のヒストグラム バケット密度をすべて合計し、オリジン数で除算します。つまり、最も人気のある 1,000 個のオリジンの高速 FCP 読み込みの平均率を計算します。このクエリでは、すべてのオリジンに同じ重みが割り当てられているため、完璧とは言えません。ただし、where 句を変更して experimental.popularity.rank <= 10000 を指定し、結果がランクの桁数に敏感かどうかを確認しましょう。これは 1 万人、10 万人など、すべてのユーザーに対して行われます。

オリジンのランクの桁数 送信元全体の平均で、1 秒未満の FCP の割合
1.000  53.6%
10,000 49.6%
100,000 45.9%
1,000,000 43.2%
10,000,000 39.9%

これは、ウェブでのユーザー エクスペリエンスの高速化が人気と相関していることを示しています。

2022 年 10 月のデータセットでは、さらに半ランク単位で分割されています。このデータセットの最初のクエリを再実行すると、各ランクの半ステップとオリジンの数が表示されます。

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
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

BigQuery での CrUX の使用の詳細を確認する。CrUX クックブックでその他のサンプルクエリを確認する。ご希望の場合はクエリをお知らせください。結果をお知らせいたします。