LCP (Largest Contentful Paint): что это и как улучшить

LCP — метрика Core Web Vitals, измеряющая время загрузки крупнейшего видимого элемента страницы. Норма: до 2.5 секунды. Прямой фактор ранжирования Google.

core-web-vitalslcpпроизводительностьseoскорость

Что такое LCP

LCP (Largest Contentful Paint) — метрика Core Web Vitals, которая измеряет время от начала загрузки страницы до момента когда самый крупный видимый элемент в области просмотра (viewport) полностью отрендерен.

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

Что может быть LCP-элементом:

  • <img> теги
  • <image> внутри <svg>
  • Фоновые изображения CSS с url()
  • Блоки текста (<p>, <h1>, <div>)
  • Видео-постеры (<video poster>)

Пороговые значения LCP

| Значение | Оценка | Действие | |----------|--------|---------| | до 2.5 секунды | Хорошо | Цель для каждой страницы | | 2.5 — 4.0 секунды | Требует улучшения | Работайте над оптимизацией | | более 4.0 секунды | Плохо | Срочная оптимизация |

Google использует 75-й перцентиль от реальных пользователей (полевые данные CrUX за 28 дней).

Частые причины плохого LCP

  1. Медленный сервер (TTFB): сервер долго отвечает до начала загрузки
  2. Блокирующий JavaScript: скрипты в <head> задерживают рендеринг
  3. Большие изображения: неоптимизированные картинки без сжатия
  4. Отсутствие CDN: ресурсы загружаются с далёкого сервера
  5. Неприоритизированные LCP-ресурсы: браузер поздно начинает загрузку LCP-изображения

Как улучшить LCP

1. Preload для LCP-изображения

<!-- Добавьте в head — ускоряет обнаружение LCP-ресурса -->
<link rel="preload" as="image" href="/hero-image.webp" fetchpriority="high" />

2. Оптимизация изображений

<!-- WebP формат + правильные размеры -->
<picture>
  <source srcset="hero.webp" type="image/webp" />
  <img src="hero.jpg" alt="Главный баннер" width="1200" height="630"
       fetchpriority="high" />
</picture>

3. Ускорение сервера (TTFB)

# Nginx: включить HTTP/2 и кеширование
listen 443 ssl http2;

# Кеш динамических страниц
fastcgi_cache_valid 200 1h;

4. Устранение render-blocking ресурсов

<!-- Плохо: блокирует рендеринг -->
<script src="analytics.js"></script>

<!-- Хорошо: не блокирует -->
<script src="analytics.js" defer></script>
<script src="widget.js" async></script>

5. Использование CDN

Cloudflare, Fastly, Amazon CloudFront — доставка статики с ближайшего к пользователю узла. Снижает TTFB на 50-70% для удалённых пользователей.

6. Встроенный критический CSS

<style>
/* Стили для первого экрана — нет блокировки загрузки -->
.hero { background: #1a1a2e; height: 100vh; }
.hero img { width: 100%; object-fit: cover; }
</style>

Измерение LCP

  • Google Search Console → Основные веб-показатели (реальные данные)
  • PageSpeed Insights — покажет LCP элемент с выделением на скриншоте
  • Chrome DevTools → Performance → нажмите Ctrl+Shift+P → Show LCP
  • web-vitals.js библиотека для измерения в коде:
import {onLCP} from 'web-vitals';
onLCP(metric => console.log(metric));

Проверка LCP на reChecker

Используйте Web Vitals для анализа показателей. Инструмент покажет:

  • Текущее значение LCP в секундах
  • Оценку (хорошо/требует улучшения/плохо)
  • Рекомендации по улучшению
  • Другие метрики Core Web Vitals

FAQ

Почему LCP отличается в лаборатории и реальных данных? Лабораторные тесты (Lighthouse) запускаются на стандартном устройстве в контролируемой сети. Реальные данные включают всех пользователей: медленные устройства, слабый интернет, геолокацию. Для SEO важны реальные данные (75-й перцентиль).

Картинка или текст — что лучше как LCP-элемент? LCP-элемент определяет браузер автоматически — это самый крупный видимый элемент. Вы не выбираете его. Но можете оптимизировать предполагаемый LCP-элемент (обычно hero-изображение или главный заголовок).

LCP изменился после A/B теста — почему? A/B тестирование с изменением hero-изображения или главного заголовка напрямую влияет на LCP. Более тяжёлое изображение в одном варианте = хуже LCP. Учитывайте это при оценке A/B результатов.

Попробуйте инструмент

Проверьте lcp (largest contentful paint) на вашем сайте с помощью бесплатного инструмента.

Web Vitals

Техническая поддержка

Нашли баг, сбой или ошибку в работе сервиса? Есть предложение по улучшению? Напишите нам — мы читаем каждое сообщение и стараемся быстро исправлять проблемы.