Core Web Vitals: измерение и улучшение веб-производительности

Web2026-10-13TryQuickToolBox

Ваши пользователи нетерпеливы. Если сайт загружается дольше нескольких секунд, они уходят. Поисковые системы тоже это замечают: Core Web Vitals являются сигналами ранжирования. Но их улучшение кажется лабиринтом из метрик и инструментов. Это руководство поможет разобраться. Вы узнаете, что означает каждая метрика, как точно её измерять и какие конкретные шаги предпринять для улучшения.

Что такое Core Web Vitals?

Core Web Vitals — это три метрики, которые количественно оценивают реальный пользовательский опыт:

Эти метрики измеряются по реальным сессиям пользователей (полевые данные) и синтетическим тестам (лабораторные данные). Для ранжирования важны полевые данные.

Как измерять Core Web Vitals

Вам нужны как лабораторные, так и полевые данные. Лабораторные данные помогают отлаживать; полевые отражают реальный пользовательский опыт.

Лабораторные инструменты

Полевые инструменты

Чтобы собирать полевые данные, добавьте библиотеку web-vitals на сайт:

import {onLCP, onINP, onCLS} from 'web-vitals';

function sendToAnalytics(metric) {
  const body = JSON.stringify(metric);
  navigator.sendBeacon('/analytics', body);
}

onLCP(sendToAnalytics);
onINP(sendToAnalytics);
onCLS(sendToAnalytics);

Это даёт вам непрерывный поток метрик реальных пользователей.

Улучшение LCP

LCP обычно представляет собой самое большое изображение, видео или блок текста. Чтобы улучшить его, сосредоточьтесь на критическом пути.

  1. Оптимизируйте изображения: сжимайте изображения, используйте современные форматы, такие как WebP или AVIF, и задавайте явные ширину и высоту. Инструменты вроде Image Compressor помогут уменьшить размер файла без видимой потери качества.
  2. Предзагружайте LCP-ресурс: добавьте <link rel="preload"> для главного изображения или шрифта.
  3. Сократите время ответа сервера: используйте CDN, включите кэширование и оптимизируйте запросы к бэкенду.
  4. Устраните блокирующие рендеринг ресурсы: встраивайте критический CSS, откладывайте некритический JavaScript.
  5. Используйте адаптивные изображения: отдавайте изображения подходящего размера с помощью srcset.

Пример предзагрузки LCP-изображения:

<link rel="preload" as="image" href="/hero.webp" fetchpriority="high">

Улучшение INP

INP измеряет отзывчивость. Долгие задачи блокируют главный поток, задерживая визуальную обратную связь.

Пример уступки главному потоку:

async function yieldToMain() {
  if ('scheduler' in window && 'yield' in scheduler) {
    await scheduler.yield();
  } else {
    await new Promise(resolve => setTimeout(resolve, 0));
  }
}

Улучшение CLS

CLS возникает, когда элементы неожиданно смещаются. Частые причины: изображения без размеров, реклама, встраиваемые элементы и динамически добавляемый контент.

Пример резервирования места для изображения:

<img src="#" width="800" height="600" alt="...">

Инструменты и рабочий процесс

Интегрируйте проверки производительности в процесс разработки:

Сравнение метрик и целевых значений

МетрикаЧто измеряетХорошая цель
LCPПроизводительность загрузки< 2,5 с
INPОтзывчивость< 200 мс
CLSВизуальная стабильность< 0,1

FAQ

Что такое Core Web Vitals?

Core Web Vitals — это три метрики: LCP, INP и CLS, которые измеряют загрузку, интерактивность и визуальную стабильность. Google использует их как сигналы ранжирования.

Как измерять Core Web Vitals?

Используйте лабораторные инструменты, такие как Lighthouse, для отладки и полевые инструменты, такие как библиотека web-vitals или CrUX, для данных реальных пользователей. Оба подхода важны.

Какой показатель LCP считается хорошим?

Хороший LCP — менее 2,5 секунд. Всё, что выше 4 секунд, — плохо. Оптимизируйте изображения, предзагружайте критически важные ресурсы и сокращайте время ответа сервера.

Готовы ускорить свой сайт? Начните со сжатия изображений с помощью нашего бесплатного Image Compressor, чтобы мгновенно улучшить LCP.