FPSテスト

ブラウザーのフレームレートとフレーム間隔のばらつきを測定。

軽量な描画を行いながら、このタブにアニメーションコールバックが届く間隔を10秒間測ります。GPUに高負荷をかけずに、平均FPS、1% Low、フレーム間隔を確認できます。

これはブラウザーのタイミング測定です。ゲームのベンチマークやモニターのリフレッシュレートを直接測るものではありません。

ローカルで計算 · 登録不要 · ダウンロード不要

測定できます

平均FPS

— FPS

現在のFPS

— FPS

フレーム間隔の中央値

— ms

1% Low FPS

— FPS

0.0 / 10 s · 0 間隔

時間ごとのフレーム間隔

— ms

0 s · 0 ms10.00 s
指標の定義

現在のFPS: 直近の短い時間窓に含まれる完全な間隔を数えて算出します。

平均FPS: 1,000 × 間隔数 ÷ 合計ミリ秒。瞬間FPSの算術平均ではありません。

1% Low FPS: 最も長いceil(N × 0.01)個の間隔の平均で1,000を割ります。100間隔以上が必要です。

フレーム間隔の中央値: アニメーション間隔の中央値(線形補間)。GPUの実行時間ではありません。

P95間隔: (N − 1) × 0.95の位置で線形補間した95パーセンタイル。

P99間隔: (N − 1) × 0.99で線形補間した99パーセンタイル。1,000/P99はこのテストの1% Lowとは異なります。

長い間隔の数: 中央値の1.5倍を厳密に超える間隔。ディスプレイの欠落フレーム数ではありません。

代表的なコールバック頻度: 1,000 ÷ 間隔の中央値。代表的なコールバックの頻度であり、確認済みの表示仕様ではありません。

測定したいディスプレイで、ウィンドウサイズと電源設定を固定し、測定中はスクロールを控えてください。全画面表示でもブラウザーの制約はなくなりません。 計算は端末内で行い、測定レポートはアップロードしません。サイト全体の分析についてはプライバシーポリシーをご確認ください。

フレームレートの動きを比較

低い更新頻度の動きを、現在のブラウザーのコールバック頻度と比較します。見える違いはブラウザーやディスプレイの制約を受けます。

30 回/秒(目標)
実測更新回数/秒: —

60 回/秒(目標)
実測更新回数/秒: —

120 回/秒(目標)
実測更新回数/秒: —

ブラウザーの頻度
実測更新回数/秒: —

これはアニメーションの更新回数であり、実際に表示されたフレーム数ではありません。全トラックの速度は同じです。頻度が割り切れない場合、更新間隔は均等になりません。再生は手動で開始します。

FPSテストの手順

1. 測定条件をそろえます。確認したいディスプレイでこのページを開き、比較時はブラウザー、ウィンドウサイズ、電源設定を同じにします。不要なアニメーションページや負荷の高いアプリを閉じてください。

2.「FPSテストを開始」を選びます。約1秒の予備測定後、完全なフレーム間隔を10秒以上収集します。

タブを表示したまま、ディスプレイ間でウィンドウを移動しないでください。表示サイズ、DPR、画面の向き、全画面状態が変わると中断します。

3. 平均と間隔を確認します。平均FPSは全体のコールバック頻度を示します。間隔グラフや1% Lowは平均だけでは分からないばらつきを示します。小さな差を評価する前に再測定してください。

FPS・フレーム間隔・リフレッシュレート

FPSは1秒あたりのフレーム数を表します。このページではブラウザーのアニメーションコールバックから求める推定値です。フレーム間隔はコールバック間のミリ秒数です。

Hzで表すリフレッシュレートはディスプレイの更新周期です。ブラウザーの動きは表示周期に連動することが多いものの、OSやブラウザーのスケジューリングによって制限・変更されます。

コールバックが来たことは、新しいフレームが実際に表示された証拠ではありません。このページでモニターの最大リフレッシュレートは確認できません。

完全に均等な場合は、フレーム間隔 = 1,000 ÷ FPSです。以下は計算例で、測定値ではありません。

計算例です。検出した表示設定ではありません
FPSフレーム間隔 (ms)
3033.33
6016.67
1208.33
1446.94
1656.06
2404.17

FPSが60前後になるのはなぜ?

60 FPS前後という結果だけで故障とは判断できません。現在の条件で、このタブが観測した頻度を表しています。

OSのリフレッシュレート設定、ブラウザーを表示しているディスプレイ、省電力設定を確認します。外部ディスプレイでは接続方法と表示モードも確認してください。

バックグラウンドアプリ、拡張機能、ブラウザー固有のスケジューリングも影響します。原因を決めつけず、同じ条件で繰り返し測定してください。

このページでリフレッシュレートの上限を解除したり、ケーブルの不良やハードウェアアクセラレーションの有無をFPSだけから特定したりすることはできません。

描画経路を詳しく調べるには、ハードウェアアクセラレーションの確認へ。

このFPSテストの測定方法

内部解像度640×160、DPR 1の小さなCanvas 2Dを描きながらrequestAnimationFrameのコールバック間隔を記録します。予備測定は除外し、動きを減らす設定ではマーカーを静止させて同じ計時を行います。

平均FPS = 1,000 × 間隔数 ÷ 実測ミリ秒。分位点は(N − 1) × pで線形補間します。1% Low = 1,000 ÷ 最長ceil(N × 0.01)個の間隔の平均で、1,000/P99とは異なります。

P95、P99、1% Lowには100間隔以上が必要です。末尾サンプルが5個未満なら注意を表示します。長い間隔は中央値の1.5倍を超えるものです。表示中の停滞は保持し、2,000 msを超える空白や非表示で中断します。

10秒を超える最後の完全な間隔も保持します。グラフは実際の終了時刻と最小・最大値を保ち、統計には全間隔を使います。温度、ハードウェアの健康スコア、ゲームFPS予測は出しません。プロトコル:fps-raf-v1。

関連するグラフィックステスト

GPUストレステスト

持続的なWebGL負荷をかけ、負荷中の性能を確認します。

GPU安定性テスト

より長い制御されたブラウザー負荷で変化を調べます。

WebGPUテスト

ブラウザーがWebGPUの基本検証を完了できるか確認します。

WebGLテスト

ブラウザーが公開するWebGL機能と基本描画を確認します。

FPSテストのよくある質問

このFPSテストで分かることは?

軽量な描画中に、このタブに届くアニメーションコールバックの間隔を測ります。実際に表示されたフレーム数ではありません。

ゲームのFPSと同じですか?

いいえ。ゲームでは負荷や描画方式が異なります。ゲーム内のカウンターや適切なデスクトップツールを使ってください。

モニターの正確なリフレッシュレートを検出できますか?

いいえ。表示設定と近い値になることはありますが、正確な値や対応する最大値は確認できません。

どのくらいのFPSなら良い結果ですか?

共通の合格点はありません。同じ条件で繰り返し比較してください。高い数値だけでGPUが優れているとは証明できません。

ここでの1% Low FPSとは?

最も長い1%の間隔を平均し、1,000をその平均で割ってFPSに変換します。ツールごとに定義が異なるため、同じ方法の結果を比較してください。

平均と1% Lowに大きな差があるのはなぜ?

少数の長い間隔が1% Lowを下げても、平均は高く保たれることがあります。グラフを確認して再測定してください。ハードウェア故障の特定にはなりません。

タブを切り替えると停止するのはなぜ?

非表示のページではコールバックが停止・抑制されることがあります。異なる条件を混ぜないため、新しい測定を行います。

120 FPSの比較が実現しないのはなぜ?

デモは届くコールバックより速く更新できません。毎秒120回を目標にしても、コールバックが少なければ120回の表示更新にはなりません。

WebGPUは必要ですか?

いいえ。アニメーションの計時とCanvas 2Dを使い、WebGPUもWebGLも必要ありません。

結果はアップロードされますか?

レポートはローカルで計算し、アップロードしません。コピー、ダウンロード、ブラウザー内の履歴保存ができます。サイト全体の分析にはプライバシーポリシーが適用されます。

ブラウザー内に保存 / アカウント不要

レポートと比較

このブラウザーに最大20件を保存します。基準として固定したレポートは保持されます。読み込んだレポートは検証されていない外部データです。

読み込んだレポートの本文は元の言語で表示します。

保存済みレポート(0/20件)・2件選ぶと比較できます

保存したレポートはありません。テストを実行するか、レポートを読み込んでください。