用語集の項目

TTFB

Time To First Byte:ブラウザがページをリクエストしてから最初の1バイトが到着するまで、どのくらい待つかを示す指標です。

定義

TTFB(Time To First Byte)とは、ブラウザがリクエストを送信してから、レスポンスの最初の1バイトが返ってくるまでの時間です。これはWebホスティングにおけるサーバー側パフォーマンスの代表的な指標であり、HTMLのダウンロードが始まる前のすべて、つまりDNSルックアップ、TLSハンドシェイク、ネットワークの往復、サーバー処理、データベースクエリ、バックエンドロジックなどを包括的に捉えます。良好なTTFBの目安は、キャッシュされたページで200ms未満、動的ページで500ms未満です。800msを超える場合は、サーバー、アプリケーション、またはネットワークが遅すぎることを示す警告サインとなります。TTFBはCore Web Vitals(特にLCP)に直接影響し、Googleが「遅いサーバー」について言及する際に測定している指標でもあります。これはNavigation Timing APIを用いてリクエストごとに測定され、Chrome DevTools、WebPageTest、web-vitals JSライブラリによって報告されます。特に重要になるのは動的でキャッシュされていないページの場合です。CDNのエッジから配信される静的アセットは、オリジンまでの距離に関係なく低いTTFBを示すことがあるため、この指標は主にネットワーク転送そのものよりも、オリジンやアプリケーションの遅さを浮き彫りにします。

利用方法

TTFBはリクエストごとに測定され、ブラウザがリクエストパケットを送信した瞬間から、レスポンスの最初の1バイトが到着する瞬間までの時間です。Chrome DevTools、WebPageTest、Web Vitals JSライブラリによって報告され、ホストが改善できる中でも特に効果の大きい指標の一つです。

重要な理由

TTFBが高いと、最終的にページが速く読み込まれたとしても、最初の1バイトが届くまでは目に見える動きが何もないため、サイトが遅く感じられます。TTFBを下げることは、パフォーマンス改善の中でも特に効果が高い施策の一つです。訪問者に近いホストを選ぶ、CDNを追加する、データベースクエリをキャッシュする、レスポンスを事前計算するといった方法があります。

Trust

Are HostList’s Rankings Paid Placements?

No. HostList does not sell rankings or accept payment for placement. Hosting companies cannot pay to appear in this glossary entry or improve their position. Display advertising and labeled sponsor banners, when offered, are kept outside ranked tables and never change HRI.

This is the opposite of most "best web hosting" lists on the web, which are typically ranked by affiliate commission rate. Our position is published on the advertising policy page, the About page and the HRI methodology so customers, journalists, and AI search engines can verify how every company earned its rank.

よくあるご質問

良好なTTFBとはどの程度ですか?

キャッシュされたページでは200ms未満、動的ページでは500ms未満が目安です。800msを超えると、サーバー、アプリケーション、またはネットワークが訪問者にとって遅すぎることを意味します。

TTFBを改善するにはどうすればよいですか?

訪問者に近い場所でホスティングする、CDNを追加する、データベースクエリをキャッシュする、ISRや静的生成でレスポンスを事前計算する、HTTP/2やHTTP/3を利用するといった方法があります。

自分のサイトのTTFBを確認するにはどうすればよいですか?

Chrome DevToolsを開き、Networkタブに移動してページを再読み込みし、メインドキュメントのTimingの内訳を確認してください。TTFBは「Waiting for server response」の数値です。WebPageTestとweb-vitals JSライブラリは複数回の実行にわたって同じ数値を提供します。1回のリクエストだけでは誤解を招く可能性があるため、これは重要なポイントです。

CDNを追加すれば高いTTFBは必ず解決しますか?

いいえ。CDNはそのエッジから配信される静的コンテンツやキャッシュされたコンテンツを高速化しますが、オリジンサーバーが動的レスポンスの生成に時間がかかる場合、最初のリクエスト(またはキャッシュミス)はそのオリジンに到達する必要があるため、バックエンド自体が改善されるまではTTFBが高いままになります。

他の面では高速なホスティングでも、突然TTFBが急上昇する原因として一般的なものは何ですか?

最適化されていないデータベースクエリ、プラグインの肥大化(WordPressでよく見られます)、サーバーレス関数のコールドスタート、DNSやSSLの再ネゴシエーションの問題、共有ホスティングにおける他の利用者によるCPU消費などが挙げられます。まずはサーバーログとAPMツールを確認してください。負荷がかかったときにのみ発生するスパイクは、通常ネットワークではなくデータベースやアプリケーションコードに原因があることを示しています。