Оптимізація First Contentful Paint (FCP) сайту

Оптимізація FCP (First Contentful Paint)

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Оптимізація First Contentful Paint (FCP) сайту
Середній
~2-3 дні

Наші компетенції:

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

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1418
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1285
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    983
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1243
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    983
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    997

Оптимізація FCP (First Contentful Paint)

Поганий FCP — бич сучасних веб-проєктів. Ми часто бачимо сайти, де користувач чекає 3–4 секунди перед появою тексту. Наша команда з 10+ сертифікованих спеціалістів за 5 років оптимізувала понад 200 проєктів, і в кожному п'ятому FCP був вище 2.5 секунд. Розбираємося з render-blocking ресурсами, шрифтами та серверним рендерингом. Результат — FCP < 1.2 с навіть на повільних пристроях. Термін оптимізації під ключ: від 1 до 3 днів. Вартість базової оптимізації від 200$ (економія до 30% часу завантаження). Писати можна в телеграм — оцінимо ваш проєкт безкоштовно. Входить аналіз, налаштування critical CSS, preload ресурсів, включення SSR якщо потрібно. Надаємо гарантію результату — 30 днів після здачі.

FCP (First Contentful Paint) — це час до появи першого контенту: текст, зображення, canvas. Хороше значення ≤ 1.8 секунди. FCP безпосередньо впливає на сприйняття швидкості — користувач бачить, що щось відбувається. Поганий FCP майже завжди означає поганий LCP, тому з нього починаємо.

Різниця FCP та LCP

  • FCP — перший піксель контенту (будь-якого).
  • LCP — найбільший елемент (геройське зображення, заголовок). Часто страждає через повільні зображення.

Поганий FCP майже завжди означає поганий LCP. Виправляючи FCP, ми автоматично покращуємо LCP на 20–40%.

Як render-blocking ресурси вбивають FCP?

Браузер зупиняє рендеринг на кожний <link> CSS та <script> у <head>. Типова ситуація: у head 5 стилів і 3 скрипти — користувач бачить білий екран >2 секунд. У великих проєктах це додає до 3 секунд до FCP. Це блокуючі ресурси (blocking resources), які перешкоджають швидкому відображенню контенту.

<!-- Погано — кожен ресурс блокує рендеринг --> <head> <link rel="stylesheet" href="/css/app.css"> <link rel="stylesheet" href="/css/plugins.css"> <link rel="stylesheet" href="/css/vendor.css"> <script src="/js/jquery.js"></script> <script src="/js/plugins.js"></script> </head> 

Рішення — інлайн critical CSS, інші стилі завантажувати асинхронно через preload. Скрипти — defer або async.

Чому critical CSS — основа швидкого FCP?

Critical CSS — це мінімальний набір стилів для видимої частини екрану. Ми генеруємо його автоматично за допомогою critters у Vite. Налаштування:

// vite.config.ts import { defineConfig } from 'vite'; import { critters } from 'critters'; export default defineConfig({ plugins: [ critters({ preload: 'swap', pruneSource: false, }) ] }); 

Для Laravel використовуємо spatie/laravel-vite-plugin та додаткове налаштування Nginx для роздачі pre-built сторінок. Результат — зниження FCP на 0.5–1 секунду. Інлайн critical CSS у 2 рази швидше, ніж завантаження зовнішнього файлу.

Коли без SSR не обійтися?

SPA на React або Vue мають жахливий FCP — користувач бачить порожній екран поки не виконається JS. Server-Side Rendering вирішує цю проблему. У Next.js SSR включений з коробки. Для Laravel + Inertia.js:

// vite.config.ts import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; import react from '@vitejs/plugin-react'; export default defineConfig({ plugins: [ laravel({ input: 'resources/js/app.tsx', ssr: 'resources/js/ssr.tsx' }), react(), ], }); 

SSR покращує FCP у 2–3 рази порівняно з чистою SPA. Для порівняння: SPA з SSR дає FCP ~1.2 с, без SSR — ~3.5 с на мобільному 3G.

Шрифти — прихований вбивця FCP

Кастомні шрифти додають затримку. Рішення:

  • Використовувати системний стек -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif — нульова затримка.
  • Якщо потрібен кастомний шрифт — preload + font-display: swap (щоб показати fallback одразу, замінити коли завантажиться).
@font-face { font-family: 'Inter'; src: url('/fonts/inter-regular.woff2') format('woff2'); font-display: swap; unicode-range: U+0400-045F, U+0490-0491; /* тільки кирилиця */ } 
<link rel="preload" href="/fonts/inter-regular.woff2" as="font" type="font/woff2" crossorigin> 

Що входить у роботу з оптимізації FCP?

Ми надаємо:

  • Аналіз поточних метрик (Lighthouse, PageSpeed Insights, WebPageTest) — звіт з рекомендаціями.
  • Генерацію critical CSS та налаштування збірника (Webpack, Vite, Laravel Mix).
  • Оптимізацію шрифтів: preload, font-display, зменшення кількості гліфів.
  • Включення SSR для SPA (Next.js, Nuxt, Inertia).
  • Перевірку на реальних пристроях (iPhone 8, Android Galaxy S8).
  • Документацію та навчання команди підтримці результатів.

Ми спеціалізуємося на оптимізації продуктивності сайту, фокусуючись на Core Web Vitals та швидкості завантаження сайту. Вартість розраховується індивідуально — пишіть, оцінимо.

Чек-лист для швидкої оптимізації FCP

Крок Дія Очікуваний ефект
1 Інлайн critical CSS -0.5–1 с
2 Асинхронне завантаження CSS -0.3–0.8 с
3 Defer/async скриптів -0.5–1 с
4 Preload шрифтів + swap -0.2–0.5 с
5 SSR включений -0.5–2 с
6 TTFB < 600 мс -0.3–0.8 с

Важливо: Починати з найвпливовішої метрики — TTFB. Якщо сервер відповідає 1.5 секунди, FCP ніколи не буде < 1.8 с. Для покращення TTFB використовуйте кешування Nginx, підключіть CDN (Cloudflare) та оптимізуйте базу даних. Детальніше про TTFB читайте в окремій статті.

Типові помилки та їх рішення

Помилка Рішення Ефект
Critical CSS >50 КБ Інлайнити тільки above-the-fold -0.3 с
Ігнорування мобільних пристроїв Тестувати на реальних пристроях
Невикористовувані CSS-правила PurgeCSS/Tailwind purge -0.2–0.5 с

Як виміряти FCP?

Моніторити FCP можна через PerformanceObserver у консолі браузера. HTTP Archive показує, що 40% сайтів мають FCP > 2.5 с. Регулярна перевірка метрики після деплою — обов'язкова.

Отримайте консультацію — зв'яжіться з нами. Оцінимо ваш проєкт та запропонуємо рішення під ключ.