Back to Blog
PerformanceNext.jsJanuary 28, 2026

Optimizing Next.js for Perfect Core Web Vitals

by Ugur Yildiz

Core Web Vitals directly impact your search rankings. Here's how I consistently achieve perfect scores on Next.js projects.

LCP: Largest Contentful Paint

Use next/image with priority on above-the-fold images, preload critical fonts with next/font, and leverage server components to eliminate client-side data fetching waterfalls.

CLS: Cumulative Layout Shift

Always set explicit width and height on images, use CSS aspect-ratio for dynamic containers, and avoid injecting content above existing elements after the initial render.

INP: Interaction to Next Paint

Minimize 'use client' components, use React.lazy for non-critical UI, and debounce event handlers. Server components are your best friend — they send zero JavaScript to the browser.