Блог перформанс-інженера Костянтина Шейдаєва

Time To First Byte (TTFB) та його кент 103 Early Hints

Mar 27, 2025

TTFB - простими словами, це час, який проходить між моментом, коли браузер відправляє запит на сервер, та моментом, коли він отримує перший байт даних у відповідь.

Вважається, що “ровний пацан” має TTFB < 800мс, а якщо TTFB > 1800мс, то “пацан більше неровний”.

TTFB Good vs Bad

При цьому, якщо орієнтуватись на світові тренди, потрапити в 18% “школоти” дуже не хочеться:

TTFB Trends

Тож давайте розберемося, як ця метрика вираховується і як її оптимізувати.

Як вираховується і з чого складається?

TTFB Schema

TTFB - це сума наступних фаз запиту:

  1. Час на перенаправлення (redirect)
    • Зазвичай дуже малий, якщо є - від 10-50мс
    • Часто відсутній взагалі
  2. Час на запуск Service Worker
    • Якщо використовується - від 5-20мс
    • Більшість сайтів не використовують
  3. Час на отримання IP-адреси (DNS lookup)
    • Зазвичай 20-100мс
    • Може бути більшим при проблемах з DNS
    • Часто кешується
  4. Час на встановлення з’єднання (TLS)
    • Від 50-200мс
    • Залежить від відстані до сервера
  5. Час до першого байту відповіді
    • Це найбільша частина - 70-90% від загального TTFB
    • Включає:
      • Час обробки запиту на сервері
      • Час генерації відповіді
      • Час передачі даних по мережі

На цьому етапі стає зрозуміло, що успіх складається з двох компонентів:

  1. Займатися оптимізацією бекенду і мережевої інфраструктури (для зменшення часу до першого байту відповіді)
  2. Використовувати Early Hints, щоб винести час обробки запиту на сервері “за душки”

Що таке Early Hints?

HTTP 103 Early Hints - статусний код HTTP, який дозволяє серверу відправляти попередні відповіді браузеру до того, як буде готова основна відповідь.

Як це працює?

Early hints

Однак, не всі браузери підтримують 103 статус, тому потрібна fallback стратегія. Це означає, що потрібно мати запасний варіант на випадок, якщо браузер не підтримує цю функцію.

Висновок

TTFB - одна з ключових метрік у Core Web Vitals, отже, вона напряму впливає на ранжування вашого сайту в пошуковій видачі.
Звісно, правильний шлях - впливати на неї через оптимізацію швидкості обробки запитів на сервері. (впевний ви це робите, ви ж прийшли читати цю хуйню)
Але, якщо треба швидкі результати, то цю метрику можна трошки наїбати використовуючи Early Hints, не забуваючи про fallback.