Home›Insights›Product & Technology
Product & Technologypractical-guide

Core Web Vitals Explained: LCP, INP, and CLS in Practice

Core Web Vitals describe loading, responsiveness, and visual stability. Learn what each metric measures, the current good thresholds, and how to prioritize fixes based on real-user data.

Written by Kapitech Editorial TeamEditorial11 min read
ShareIGfXin0%
  1. 01Core Web Vitals at a glance
  2. 02LCP: make the main content appear sooner
  3. 03INP: keep interactions responsive
  4. 04CLS: prevent unexpected movement
  5. 05Use field data and lab tools together
  6. 06A practical optimization workflow
  7. 07Prioritize fixes by user impact
  8. 08Conclusion: optimize the experience, not just the score
Ready to discuss?Book a call↗
↗0%

A page can look polished and still feel slow or unstable when someone uses it on a real phone, connection, or browser. Core Web Vitals provide a practical way to measure three parts of that experience: how quickly the main content appears, how quickly the page responds to input, and whether content shifts unexpectedly while the page is being used.

They are not a substitute for usability research or business metrics, but they help teams identify experience problems that deserve attention. The current Core Web Vitals set is LCP, INP, and CLS.

Article key takeaways

The ideas worth carrying forward.

5
  • 01LCP measures loading, INP measures responsiveness, and CLS measures unexpected visual movement.
  • 02Good field thresholds are LCP at or below 2.5 seconds, INP at or below 200 milliseconds, and CLS at or below 0.1.
  • 03Assess the 75th percentile of real user visits, not only one lab run.
  • 04Optimize the bottleneck behind the metric instead of applying generic speed tricks.
  • 05Re-test mobile devices, templates, and real interactions after each meaningful change.

Core Web Vitals at a glance

Article visualVisual
An overview of Core Web Vitals and the experiences they measure
Loading, responsiveness, and visual stability are separate dimensions of quality.

Swipe to compare

4 columns
Google's recommended field thresholds are evaluated at the 75th percentile of page visits.
MetricWhat it measuresGood thresholdPoor threshold
LCPTime until the largest visible content element is rendered≤ 2.5 seconds> 4.0 seconds
INPResponsiveness across user interactions≤ 200 ms> 500 ms
CLSUnexpected visual layout movement≤ 0.1> 0.25

These thresholds are documented by web.dev's Core Web Vitals guidance. A page should be assessed with real user data where available, because hardware, network conditions, interaction patterns, and page types can affect outcomes.

LCP: make the main content appear sooner

Article visualVisual
The LCP path from request start to main content rendering
Find the largest content element, then identify the delays before it appears.

Largest Contentful Paint estimates when the main visible content has appeared. Depending on the page, that element may be a hero image, a large heading block, or a primary content image. Reducing unrelated asset size will not necessarily help if the actual LCP element is delayed by discovery, server response, or render-blocking resources.

Common causes of slow LCP

  • A slow server response or expensive initial rendering.
  • A hero image discovered late or loaded with low priority.
  • Oversized images that take too long to download and decode.
  • CSS or JavaScript that blocks rendering before the main content is ready.
  • Third-party scripts competing for bandwidth and main-thread time.

A useful LCP investigation

Identify the LCP element in browser performance tools and separate server response, resource load delay, resource load duration, and render delay. Give priority to the actual LCP asset, reserve appropriate space for it, and ensure the browser can discover it early. Test the result on realistic mobile conditions.

INP: keep interactions responsive

Article visualVisual
An interaction path illustrating input, event handlers, and visual feedback
A responsive interface provides timely feedback without long main-thread tasks.

Interaction to Next Paint reflects how quickly the page responds visually after user interactions, such as opening a menu, applying a filter, submitting a form, or switching a tab. It looks across interactions rather than measuring one isolated click.

Common causes of poor INP

  • Long JavaScript tasks that block the main thread.
  • Heavy event handlers or repeated synchronous calculations.
  • Rendering too much content after one action.
  • Large third-party scripts competing with the interface.
  • A slow interaction design that waits for the whole request before giving feedback.

Make the next visible state clear

Break up long tasks, reduce unnecessary re-renders, defer non-critical work, and keep event handlers small. For network-bound actions, show a clear pending state and then update the relevant region when the response arrives. Feedback does not replace performance work, but it helps users understand that their action was received.

CLS: prevent unexpected movement

Article visualVisual
A layout stability path showing content movement during loading
Reserve space for content before images, embeds, and late-loading components appear.

Cumulative Layout Shift measures unexpected movement of visible content. A button that shifts just as someone tries to tap it is more than a cosmetic issue; it can cause mistakes and make the page feel unreliable.

Common causes of layout shift

  • Images or video elements without reserved dimensions or aspect ratios.
  • Ads, embeds, and banners inserted above existing content.
  • Fonts that change text metrics after the first render.
  • Components that expand without reserved space when data arrives.
  • Animations that change layout properties instead of transform or opacity.

Stabilize the layout before content arrives

Reserve image dimensions, use aspect-ratio containers, avoid inserting content above the user's current position, and handle font loading intentionally. Test the real page while content, fonts, and embeds load rather than evaluating only the final static state.

Article visualVisual
The three Core Web Vitals metrics and their roles in user experience
A good experience needs loading, responsiveness, and stability to work together.

Use field data and lab tools together

Field data shows how visitors experience the page across real devices and networks. Lab testing helps reproduce and diagnose a specific cause under controlled conditions. Use field trends to decide what matters, then use lab traces and browser tools to investigate why the metric is poor.

Article visualVisual
A performance optimization loop from measurement to verification
Measure, diagnose, change one cause, and verify the impact.

A practical optimization workflow

Checklist

Performance checklist

7
  • ✓Identify the affected page templates, devices, and user journeys.
  • ✓Check field data and separate it by page type where data is available.
  • ✓Find the actual LCP element and inspect its request and render delays.
  • ✓Record long tasks and heavy event handlers that affect key interactions.
  • ✓Reserve dimensions for media and late-loading components to reduce CLS.
  • ✓Re-test with realistic mobile CPU and network conditions.
  • ✓Monitor after release to confirm that field experience improves.

Prioritize fixes by user impact

Start with issues affecting important entry pages or common conversion journeys. A dramatic lab score improvement is not automatically the highest business priority if users rarely visit that template. Pair performance metrics with measures such as form completion, product exploration, and support reports so improvements serve the actual audience.

Conclusion: optimize the experience, not just the score

Core Web Vitals work best as a repeatable engineering practice. Measure the real experience, identify the bottleneck, fix the cause, and validate the result. Treat LCP, INP, and CLS as complementary signals: a page should appear quickly, respond when people interact, and stay stable while they use it.

Web performance

web-development
Kapitech

Turn performance findings into a prioritized engineering plan

Identify high-impact loading, interaction, and layout problems across the page templates that matter most.

Review your website ↗
Back to Insights
In this article

8 sections

  1. Core Web Vitals at a glance
  2. LCP: make the main content appear sooner
  3. INP: keep interactions responsive
  4. CLS: prevent unexpected movement
  5. Use field data and lab tools together
  6. A practical optimization workflow
  7. Prioritize fixes by user impact
  8. Conclusion: optimize the experience, not just the score
Ready to discuss?Book a call↗
FAQ

Frequently asked questions

Short answers to the questions readers are most likely to have after this article.

01What are the current Core Web Vitals?›

The current set is Largest Contentful Paint (LCP), Interaction to Next Paint (INP), and Cumulative Layout Shift (CLS). They measure loading performance, responsiveness, and visual stability.

02What are the good Core Web Vitals thresholds?›

The good thresholds are LCP at or below 2.5 seconds, INP at or below 200 milliseconds, and CLS at or below 0.1, evaluated at the 75th percentile of real page visits.

03Can a website pass a Lighthouse test and still have poor Core Web Vitals?›

Yes. Lab tests use controlled conditions while field data reflects real users, devices, and networks. Both are useful for different purposes.

04Which Core Web Vital should be fixed first?›

Prioritize the metric and template with the largest real user impact. Identify the bottleneck using field and lab data rather than choosing a metric solely from one score.

05Does a good Core Web Vitals score guarantee a high Google ranking?›

No. These metrics describe aspects of page experience and are not a guarantee of rankings. Useful content, relevance, accessibility, and other factors remain important.

06How often should performance be checked?›

Monitor important pages continuously where field data is available and repeat lab checks after changes to images, JavaScript, fonts, layout, third-party scripts, or core templates.