TTFB / Time to First Byte
Леонид Суматохин
Время до первого байта (TTFB) - это основополагающий показатель для измерения времени установки соединения и скорости реагирования веб-сервера. Он помогает определить, когда веб-сервер слишком медленно отвечает на запросы.
TTFB - это сумма следующих этапов запроса:
- Время перенаправления
- Время запуска Service worker (если применимо)
- Поиск в DNS
- Подключение и согласование TLS
- Запрос, вплоть до момента поступления первого байта ответа
В качестве приблизительного ориентира, большинству сайтов следует стремиться к тому, чтобы время ожидания составляло 0,8 секунды или меньше. Рекомендуется ориентироваться на значение 75-ти процентного показателя, отдельно рассчитанного для мобильных и десктопных устройств.

Поскольку TTFB не является основным показателем жизнедеятельности веб-сайта, нет абсолютной необходимости в том, чтобы сайты соответствовали "хорошему" порогу TTFB, при условии, что это не препятствует их способности получать высокие оценки по важным показателям.
Веб-сайты различаются по способу доставки контента. Низкий TTFB имеет решающее значение для скорейшего доведения разметки до клиента. Однако, если веб-сайт быстро выполняет начальную разметку, но затем эта разметка требует JavaScript для заполнения ее значимым контентом — как в случае с одностраничными приложениями (SPA) - тогда достижение минимально возможного TTFB особенно важно, чтобы клиентская визуализация разметки могла произойти раньше.
И наоборот, сайт с серверной визуализацией, который не требует такого количества работы на стороне клиента, может иметь более высокий TTFB, но лучшие значения FCP и LCP, чем полностью клиентский интерфейс. Вот почему пороговые значения TTFB являются "приблизительным руководством", и их необходимо сопоставлять с тем, как ваш сайт предоставляет свой основной контент.
Способы улучшить TTFB:
- Переход на более производительный тариф
- Расположение серверов ближе к целевой аудитории
- Использование SSD-накопителей
- Качественная техническая поддержка
- HTTP-кэширование
- Настройка заголовков Cache-Control
- Кэширование страниц
- Генерация статических копий
- Использование CDN (например, Cloudflare)
- Удаление неиспользуемых данных
- Удаление дубликатов
- Индексация таблиц
- Оптимизация запросов
- Минимизация внешних подключений
- Объединение CSS и JavaScript
- Использование встроенных стилей
- Использование последних версий веб-сервера
- Настройка HTTP/2
- Применение PHP-оптимизаторов (OPcache)
- Сжатие изображений
- Использование WebP
- Минификация HTML, CSS, JavaScript