Оптимізація швидкості сайту: Core Web Vitals і як прискорити WordPress

Швидкість — єдина технічна характеристика сайту, яку одразу відчуває кожен відвідувач. Він не бачить вашого коду й не знає про плагіни, але точно знає, скільки секунд дивиться на білий екран. І якщо їх забагато — просто закриває вкладку.

Розберемо, з чого складається оптимізація швидкості сайту: що вимірює Google, що насправді гальмує сторінку, у якому порядку це лікувати і чого не варто чекати від «плагіна кешування».

Чому швидкість важлива не лише для SEO

Core Web Vitals входять у сигнали ранжування — про це ми говорили в статті про SEO-оптимізацію сайту. Але вплив швидкості значно ширший:

  • Конверсія. Частина відвідувачів іде ще до того, як побачить вашу пропозицію. Особливо болісно на платному трафіку: за цей візит ви вже заплатили.
  • Поведінкові показники. Швидка сторінка отримує більше переглядів і менше відмов.
  • Бюджет сканування. Робот обходить швидкий сайт глибше й частіше.
  • Мобільні користувачі. 4G у дорозі — не оптоволокно в офісі, де ви тестуєте сайт.

Core Web Vitals простими словами

Google звів досвід користувача до трьох метрик. Кожна відповідає на просте питання.

LCP — коли з’явився головний контент

Largest Contentful Paint фіксує момент, коли відмалювався найбільший видимий елемент — зазвичай банер або заголовок першого екрана. Ціль — до 2,5 секунди. Найчастіші винуватці: важке зображення в hero-блоці, повільна відповідь сервера, шрифти, що блокують рендер.

INP — наскільки швидко сторінка реагує

Interaction to Next Paint замінив старий FID. Він вимірює затримку між кліком користувача й видимою реакцією інтерфейсу. Ціль — до 200 мс. Псує показник надлишковий JavaScript: поки головний потік зайнятий, кнопка «не натискається».

CLS — чи не стрибає верстка

Cumulative Layout Shift — сумарний зсув контенту під час завантаження. Класика: ви цілитеся в кнопку, зверху дозавантажується банер, і ви натискаєте зовсім не те. Ціль — до 0,1. Лікується заданими розмірами зображень і зарезервованим місцем під рекламу й віджети.


Лабораторні дані проти польових

Важливо розрізняти два типи вимірювань, інакше ви оптимізуєте не те.

  • Lab data (Lighthouse, PageSpeed Insights) — синтетичний тест в емульованих умовах. Показує причини й дає перелік проблем.
  • Field data (CrUX, Search Console) — реальні відвідувачі, їхні пристрої й мережі. Саме ці цифри враховує ранжування.

Не ганяйтеся за «100 балів у Lighthouse». Бал — похідна, а не мета. Сайт із 78 балами й зеленими польовими метриками кращий за сайт зі 100 балами, який реальні користувачі бачать повільним.

Що насправді гальмує сайт

Зображення

Найчастіша й найдешевша у виправленні причина. Типова помилка — фотографія 4000 px, стиснута до 400 px засобами CSS: браузер усе одно завантажує оригінал. Що робити: віддавати WebP (або AVIF), генерувати кілька розмірів і підключати через srcset, задавати width і height в атрибутах, вмикати loading="lazy" для всього нижче першого екрана — але не для головного зображення hero-блоку, інакше LCP погіршиться.

Сторонні скрипти

Чат-віджет, дві системи аналітики, піксель, карта, віджет відгуків, шрифти з чужого CDN — кожен тягне свій код і свої запити. Часто саме вони, а не ваш сайт, з’їдають секунди й псують INP. Правило: кожен сторонній скрипт має довести свою потрібність. Те, що лишилося, — вантажити відкладено, після взаємодії.

Роздутий CSS і JS

Універсальні теми та візуальні конструктори підключають стилі й скрипти на всі випадки життя — навіть якщо сторінка складається з заголовка й двох абзаців. Звідси мегабайти невикористаного CSS. Власна тема з критичним CSS у head і рештою — асинхронно, дає приріст, який не витягне жоден плагін кешування.

Шрифти

Три накреслення замість двох — плюс сотні кілобайт і затримка тексту. Тримайте шрифти локально (а не з чужого CDN), обмежтеся 2–3 накресленнями, використовуйте font-display: swap і preload для основного шрифту.

Сервер і хостинг

Якщо сервер думає 800 мс, перш ніж віддати перший байт, фронтенд-оптимізація рятує мало. Дивіться на TTFB: адекватний орієнтир — до 200 мс. Дешевий shared-хостинг, стара версія PHP, база без індексів і сотня плагінів — типовий набір, що дає повільний бекенд.

Кешування: що і на якому рівні

«Поставити плагін кешування» — не стратегія. Кеш буває на кількох рівнях, і кожен вирішує своє завдання:

  • Кеш сторінок — готовий HTML замість повторної генерації. Найбільший ефект для анонімних відвідувачів.
  • Object cache (Redis, Memcached) — кеш запитів до бази. Критичний для магазинів і сайтів з авторизацією.
  • OPcache — скомпільований PHP-байткод. Вмикається на сервері, майже завжди виправдано.
  • Кеш браузера — статика (зображення, шрифти, CSS) не перезавантажується на кожному візиті.
  • CDN — файли віддаються з вузла, ближчого до користувача.

Мінімальні заголовки кешу для статики на Apache виглядають так:

<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/webp        "access plus 1 year"
  ExpiresByType image/svg+xml     "access plus 1 year"
  ExpiresByType text/css          "access plus 1 year"
  ExpiresByType application/javascript "access plus 1 year"
  ExpiresByType font/woff2        "access plus 1 year"
</IfModule>

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/css application/javascript image/svg+xml
</IfModule>

Довгий строк життя безпечний, якщо у назвах файлів є хеш версії — тоді після оновлення браузер завантажує новий файл, а не тримає старий із кешу.

Як прискорити WordPress: порядок дій

  1. Виміряти й зафіксувати старт. PageSpeed Insights + Search Console, обов’язково мобільна версія.
  2. Актуальний PHP і нормальний хостинг. Дивимося TTFB — це база, без неї далі немає сенсу.
  3. Ревізія плагінів. Видалити невикористані; кожен, що лишився, перевірити на вплив.
  4. Зображення. WebP, правильні розміри, srcset, lazy-load (крім hero).
  5. Скрипти й стилі. Прибрати невикористане, відкласти несуттєве, критичний CSS — у head.
  6. Кешування. Сторінки, object cache, заголовки для статики, за потреби CDN.
  7. База даних. Ревізії, спам, транзієнти, autoload-опції.
  8. Повторний замір і контроль польових даних протягом місяця.

Якщо після цього метрики все одно червоні — проблема, найімовірніше, в архітектурі теми. Іноді дешевше зробити чисту тему під ключ, ніж нескінченно лікувати наслідки конструктора.

Типові помилки

  • Ганятися за балами. 100 у Lighthouse при червоних польових даних нічого не варті.
  • Ставити три плагіни оптимізації одночасно. Вони конфліктують і ламають верстку.
  • Lazy-load на hero-зображення. Прямий шлях зіпсувати LCP.
  • Мінімізувати все підряд без перевірки. Об’єднання JS може зламати залежності.
  • Тестувати з увімкненим кешем браузера. Перевіряйте в інкогніто.
  • Оптимізувати лише головну. Трафік приходить на внутрішні сторінки.

Часті питання

Чому сайт повільно завантажується?

Найчастіше через важкі зображення, надлишок плагінів і сторонніх скриптів, роздутий CSS універсальної теми та повільний сервер. Точну причину показує звіт PageSpeed Insights разом із вкладкою Network у браузері: там видно, який саме файл затримує рендер.

Чи достатньо плагіна кешування?

Ні. Кеш прискорює віддачу вже згенерованої сторінки, але не зменшує вагу зображень, не прибирає невикористаний CSS і не рятує від десятка сторонніх скриптів. Це важливий інструмент, а не заміна оптимізації.

Скільки має важити сторінка?

Універсального нормативу немає, але орієнтир для контентної сторінки — кілька сотень кілобайт, а не мегабайти. Практичніше дивитися не на вагу, а на метрики: LCP до 2,5 с, INP до 200 мс, CLS до 0,1 на мобільному пристрої з реальною мережею.

Чи впливає хостинг на швидкість?

Так, і суттєво. Хостинг визначає TTFB — час до першого байта. Якщо сервер відповідає повільно, жодна фронтенд-оптимізація не компенсує цю затримку, бо браузер просто чекає. Орієнтир — TTFB до 200 мс, актуальна версія PHP і можливість увімкнути object cache.

Скільки часу займає оптимізація швидкості?

Базовий пакет — зображення, кешування, ревізія плагінів і скриптів — зазвичай кілька днів роботи. Якщо проблема в архітектурі теми або конструкторі, потрібна глибша переробка, і терміни залежать від обсягу сайту. Точну оцінку дає аудит.

Підсумок

Швидкість — не разова акція, а властивість архітектури. Її неможливо «доклеїти» плагіном до сайту, зібраного з важкої теми й двадцяти розширень. Працює послідовність: швидкий сервер → легка тема → оптимізовані зображення → мінімум скриптів → кеш. І контроль польових метрик, а не балів у тесті.

Надішліть посилання на сайт — подивлюся метрики й скажу, що дасть найбільший приріст швидкості з найменшими зусиллями.

Читайте також

Замовити аудит швидкості