パフォーマンスバジェット計算機

目標読み込み時間と接続速度を設定し、アセットカテゴリ別にページウェイトバジェットを配分します。

このツールについて

パフォーマンスバジェット計算機は、フロントエンド開発者やパフォーマンス エンジニアがWebページの各アセットカテゴリがどれだけのウェイトを消費 できるかを計画・視覚化するための無料ブラウザベースツールです。 パフォーマンスバジェットとは、指定された接続速度で許容可能な時間内に サイトが読み込まれることを保証する、ページリソース(HTML、CSS、 JavaScript、画像、フォント、サードパーティスクリプト)の制限値のセットです。

まず、目標接続速度(Slow 3G、3G、4G、Fast 4G、WiFi、またはカスタム値) と目標読み込み時間(例:3秒)を選択します。ツールは速度(Mbps)× 時間(秒)× 125の式に基づいて、KB単位の総転送サイズバジェットを 計算します。次に、スライダーまたは数値入力を使用して、そのバジェットを HTML、CSS、JavaScript、画像、フォント、その他に配分します。リアルタイム のSVG円グラフが配分を視覚化し、残りバジェットインジケーターが制限を 超えた場合に警告します。

すべての処理はブラウザ内で完全に行われます。データがサーバーに送信される ことはないため、内部プロジェクトの詳細を参照するバジェットを自由に計画 できます。個々のアセットの圧縮サイズを確認したい場合は、 Code Minifierをお試しください。

使い方

  1. プリセットボタン(Slow 3G、3G、4G、Fast 4G、WiFi)をクリックするか、カスタムMbps値を入力して接続速度を選択します。
  2. スライダーまたは値の入力(例:3秒)で目標読み込み時間を調整します。
  3. サマリーバーに表示される総バジェットを確認します — これはページの最大転送サイズです。
  4. スライダーまたは数値入力を使用して、各カテゴリ(HTML、CSS、JavaScript、画像、フォント、その他)にウェイトを配分します。
  5. 円グラフがリアルタイムで更新され、バジェット配分を視覚化します。
  6. バジェットを超過すると、超過量とともに赤い警告が表示されます。
  7. プリセットボタン(Blog、E-commerce、SPA、Landing Page、Dashboard)をクリックして推奨配分を読み込みます。
  8. コピーまたはダウンロードボタンをクリックして、バジェットをJSONまたはMarkdownとしてエクスポートします。Ctrl+Shift+CでJSONとしてすばやくコピーできます。

パフォーマンスバジェットの例

すべてのパフォーマンスバジェット例を見る →

よくある質問

データは安全ですか?

はい。すべての計算はJavaScriptを使用してブラウザ内で完全に実行されます。データはサーバーに一切送信されません。内部プロジェクトの詳細を含む場合でも安全に使用できます。

総バジェットはどのように計算されますか?

KB単位の総バジェットは、Mbps単位の接続速度に秒単位の目標読み込み時間を掛け、125を掛けたものです。これにより、メガビット/秒が指定された期間に転送されるキロバイトに変換されます。例えば、1.6 Mbpsで3秒の場合:1.6 x 3 x 125 = 600 KBです。

モバイルユーザー向けの適切なパフォーマンスバジェットは?

一般的な3G接続(1.6 Mbps)で3秒の読み込み目標の場合、総バジェットは約600 KBです。適切な配分例:HTML 30 KB、CSS 50 KB、JS 200 KB、画像 250 KB、フォント 50 KB、その他 20 KB。モバイルではJavaScriptを特に軽量に保ちましょう。ダウンロード時間に加えてパースと実行の時間が必要です。

プリセットは何に基づいていますか?

プリセットは異なるサイトタイプの業界慣例を反映しています。Blogは軽量なJSと適度な画像を重視。E-commerceは商品インタラクション用により大きな画像とJSを許容。SPAはJavaScriptに大きく配分。Landing Pageはすべてを最小限に。DashboardはJSを優先しつつ画像を小さく保ちます。

エクスポートしたJSONをCI/CDパイプラインで使用できますか?

はい。JSONエクスポートはbundlesize、size-limit、またはバンドルサイズ制限を強制するカスタムwebpackプラグインなどのツールと統合できるシンプルな構造に従っています。エクスポートしたファイルをリポジトリに追加し、ビルドプロセスで参照できます。

圧縮(gzip/brotli)は考慮されていますか?

バジェット値は転送サイズ、つまり通常は圧縮後のサイズを表します。バジェットを配分する際は、非圧縮のソースサイズではなく、ブラウザがネットワーク経由で実際にダウンロードするサイズ(gzipまたはbrotli圧縮後)で考えてください。

推定読み込み時間は何を表示しますか?

推定読み込み時間は、配分した総ウェイトを実効接続速度で割って計算されます。これが目標読み込み時間を超えると、アセットサイズを削減するか目標を調整する必要があることを示すために値が赤くなります。

関連ツール