In brief: Core Web Vitals is the set Google uses to evaluate real user experience through three metrics: LCP for loading, INP for interaction response and CLS for visual stability. For a good experience, LCP should remain at or below 2.5 seconds, INP at or below 200 milliseconds and CLS at or below 0.1, with these thresholds met in at least three quarters of visits. Speed optimization starts by finding which metric is struggling and why.
Core Web Vitals is the set of metrics Google uses to evaluate real user experience on a web page through three measurements: LCP for loading, INP for interaction response and CLS for visual stability. For a good experience, LCP should remain at or below 2.5 seconds, INP at or below 200 milliseconds and CLS at or below 0.1, with these thresholds met in at least three quarters of visits. The practical answer to “what are Core Web Vitals” is this: these three metrics are not a test score, but a measure of how the website feels to real visitors.
Website speed optimization therefore starts by finding which of the three metrics is struggling and why, rather than raising the score given by a tool. This guide explains what each metric measures, the thresholds defined by web.dev, how to read PageSpeed Insights and Search Console reports, and solutions to the most common causes of poor metrics. The explanations apply to every website built with WordPress, a ready-made platform or custom software; only the implementation tools change.
What are Core Web Vitals and which experience do they measure?
Core Web Vitals are the three fundamental metrics within Google’s Web Vitals initiative that it considers applicable to all web pages, measuring loading, interaction and visual stability. While other Web Vitals metrics remain specific to particular tools or scenarios, these three serve as a common language in Search Console, PageSpeed Insights and Chrome developer tools. The set is not permanent; web.dev says changes to definitions and thresholds will be announced in advance and follow an annual schedule.
The last major change to the set occurred in 2024: FID, which looked only at the delay of the first interaction, was retired, and INP, which tracks all interactions on the page, replaced it as a stable metric. This is why FID thresholds still appearing in older guides are misleading. The current set can be remembered through three abbreviations:
- LCP (Largest Contentful Paint): The time taken for the largest content element in the initially visible part of the screen to load and render; represents loading speed.
- INP (Interaction to Next Paint): The time taken for the page to respond visually to a click, tap or keypress; represents responsiveness.
- CLS (Cumulative Layout Shift): The amount of unexpected movement of elements on the page; represents visual stability.
LCP, INP and CLS thresholds: Good, needs improvement and poor
For the three metrics to count as “good,” the limits specified on web.dev’s Core Web Vitals page are 2.5 seconds for LCP, 200 milliseconds for INP and 0.1 for CLS. Google Search Console applies the same limits in a three-tier table:
| Metric | Experience measured | Good | Needs improvement | Poor |
|---|---|---|---|---|
| LCP | Main content appearing on screen | No more than 2.5 seconds | Between 2.5 and 4 seconds | Longer than 4 seconds |
| INP | First visual update after interaction | No more than 200 milliseconds | Between 200 and 500 milliseconds | Longer than 500 milliseconds |
| CLS | Unexpected shifts of elements | No more than 0.1 | Between 0.1 and 0.25 | Higher than 0.25 |
The thresholds apply to the 75th percentile of page loads rather than a single visit, and mobile and desktop are assessed separately. In practice, this means that if LCP is below 2.5 seconds in three quarters of visits, the page passes this metric; the remaining slow visits do not spoil the result on their own. To pass the assessment, all three metrics must be in the good range; a page with two good metrics and one poor metric does not count as passing.
What is LCP? Time for the main content to reach the screen
LCP is the time from when the page starts opening until the largest image, video or text block in the viewport is rendered on screen. It is considered representative of loading performance because it is the closest measure to the visitor’s feeling that “the page has loaded.” Eligible elements include img tags, image elements inside SVG, video poster images or first frames, background images loaded with url() in CSS, and block elements containing text. Elements covering the entire screen and serving as backgrounds are not counted.
web.dev divides LCP time into four subparts that add up to the full value. Knowing which part takes a long time determines which correction will actually work:
- Time to first byte (TTFB): The browser receiving the first byte of the HTML document from the server.
- Resource load delay: The gap between receiving the HTML and starting to download the LCP image.
- Resource load duration: Downloading the LCP image or the font needed for text.
- Element render delay: The wait between downloading the resource and rendering the element on screen.
The goal is to bring the two parts called “delay” close to zero. If the bottleneck is in another part, compressing the image will not reduce LCP; the saved time often shifts into render delay.
What is INP? How quickly the page responds to interaction
INP measures the time between clicks, taps and keyboard interactions on the page and the browser drawing the next frame on screen, reporting the slowest interaction observed during the visit. For visits with many interactions, one highest value is excluded for every 50 interactions to filter outliers. Scrolling and hovering over an element are not included in INP; opening a menu, adding a product to the cart or typing in a form field are included.
An interaction’s latency consists of three stages, each with a different source. Input delay occurs while the main thread is busy with another task, usually parsing and executing downloaded JavaScript. Processing duration is the execution of interaction-related code; presentation delay is the time the browser takes to render the result on screen. Interactions during page loading often produce the worst INP values because they coincide with the main thread’s busiest moment.
Page contents
What is CLS? Why does content shift out of place?
CLS is a unitless score showing the combined impact of elements in the viewport moving when visitors do not expect it. A line being read suddenly pushed downward, or another element replacing the button about to be clicked, is the experience CLS captures. Shifts occurring within 500 milliseconds of user input are considered expected changes and are not counted. In contrast, content loading later during scrolling and pushing text is counted as an unexpected shift.
The most common CLS causes listed by web.dev are images without specified dimensions, ads, embeds and iframes without reserved space, elements added to the page later, and web fonts. In most cases, the solution rests on the same principle: tell the browser how much space an element will occupy before the content arrives. Defining width and height attributes or CSS aspect-ratio for images is the simplest example.
The difference between field data and laboratory data
Field data consists of measurements collected from Chrome users who actually visit the website; laboratory data is the result of a test under a single simulated device and network condition. Google’s pass-or-fail decision comes from real user measurements, while the 0–100 performance score in PageSpeed Insights is calculated from Lighthouse’s lab test. Different results from the two sources for the same page are not an error, but a natural consequence of the measurement method. The most common reasons for the difference are:
- Device and connection diversity: The laboratory simulates a single midrange phone; real visitors arrive with very different devices and connections.
- Cache state: The test opens the page with an empty cache; returning visitors already have some resources in their browser.
- Back/forward cache: Pages revisited with the back button open almost instantly; the laboratory test does not account for this.
- Personalized content: Content that varies by logged-in user, cookie consent or screen size can produce different LCP elements.
- INP requiring interaction: Because a loading test does not click the page, it cannot measure INP; instead, the TBT metric showing blocking time during loading is used as a clue.
Laboratory data is valuable for reproducing an issue and immediately testing a correction; field data is the measure of success. PageSpeed Insights documentation also explicitly emphasizes that a green laboratory score does not mean real user experience is good.
How to read PageSpeed Insights and Search Console reports
PageSpeed Insights examines a single URL with both field and laboratory data; the report in Search Console groups similar pages to show the picture across the website. Evaluating a page’s status in the following order prevents misinterpretations:
- PageSpeed Insights : first open the mobile tab and check whether the three metrics pass in the real user data at the top. This data covers the previous 28 days.
- If the page’s own data is insufficient, the tool switches to origin-level data, meaning data for all pages on the domain; in this case, the result is not specific to that page.
- In the laboratory section, note which image or text is the LCP element and which files delay the first screen.
- Open the Core Web Vitals report in Search Console; URL groups are listed separately for mobile and desktop as “Poor,” “Needs improvement” and “Good.”
- After deploying the correction, start validation in the report; Google monitors the issue over a 28-day observation period.
In Search Console, a URL group’s status is determined by its worst metric; a group with good CLS but poor INP appears poor. The report includes only indexed pages with sufficient visit data, so a “No data” screen is normal for new websites with little traffic. Full details of the report are available on Google’s Core Web Vitals report help page . If speed issues occur together with indexing and crawling errors, the subject is addressed as a whole within technical SEO .
Let us interpret your measurement results together
Send a PageSpeed Insights link or a screenshot of the Core Web Vitals screen in Search Console through WhatsApp, and let us evaluate together which metric is struggling, in which page group and for what reason.
Common causes of poor metrics and their solutions
Most Core Web Vitals issues stem from a few recurring causes, and each cause affects a particular metric. The following table matches each cause with the metric it affects and a platform-independent direction for the solution:
| Cause | Metric affected | Solution direction |
|---|---|---|
| Slow server response, consecutive redirects | LCP (TTFB) | Page caching, shortening redirect chains, a server or CDN close to visitors |
| Late discovery of the LCP image (CSS background, JavaScript insertion) | LCP (load delay) | Provide the image as img in HTML or announce it early with preload |
| Lazy loading of the main image on the first screen | LCP | Remove loading=”lazy” from this image; add fetchpriority=”high” if needed |
| Large images in older formats | LCP (load duration) | Screen-appropriate dimensions, WebP or AVIF, device-specific versions with srcset |
| Render-blocking CSS and JavaScript | LCP | Prioritize critical CSS, remove unused code, defer scripts |
| Long JavaScript tasks, heavy third-party code | INP | Split tasks into smaller parts, reduce unnecessary tracking and chat code |
| Very large DOM, nested page builder layers | INP | A simpler template, removing unnecessary wrapper elements |
| Images, ads and iframe areas without dimensions | CLS | Reserve space with width/height or aspect-ratio |
| Late arrival of web fonts | CLS, LCP | Preload the critical font, use an appropriate fallback font and font-display setting |
| Announcement and cookie bars appearing later | CLS | Reserve space at the beginning or display as an overlay that does not push content |
Some solutions in the table have the opposite effect if not applied carefully. According to web.dev, the LCP image should never be lazy loaded, and fetchpriority=”high” should be used on at most one or two images; assigning high priority to every image makes prioritization meaningless.
Platform-independent website speed optimization steps
Effective website speed optimization follows a cycle of measurement, prioritization, correction and validation regardless of infrastructure. The following sequence is arranged to begin with work that delivers the greatest gains:
- Identify the struggling metric: Find which metric and device type are lagging in field data; address the most visited templates (homepage, service, product, blog) first.
- Speed up server response: web.dev gives a TTFB of 0.8 seconds or less as a rough target for most websites. Page caching, current server software and removing unnecessary redirects are part of this step.
- Load the LCP element early: Make the main image discoverable in HTML, remove lazy loading and assign high priority.
- Reduce image weight: Serve each image at its display dimensions and in a modern format; lazy load those outside the first screen.
- Reduce render-blocking files: Prioritize CSS needed for the first screen, and defer or remove the remaining CSS and JavaScript.
- Review third-party code: Tracking, chat, map and video embed codes each place a load on the main thread; remove unused ones and defer the rest until needed.
- Reserve space for shifting elements: Prevent shifts caused by images, ads, iframes and fonts through dimension definitions.
- Validate: Measure the change again immediately in the laboratory; its field-data impact becomes visible as the 28-day window fills.
On WordPress websites, these steps are implemented through theme, plugin, page builder and server settings; WordPress-specific topics such as cache layers and plugin load are explained separately on the WordPress website speed optimization page. The impact of hosting choice on server response time is covered in the hosting selection guide .
Do Core Web Vitals affect Google rankings?
Google states that Core Web Vitals are used by its ranking systems; however, it describes these metrics as part of good page experience rather than a decisive signal on their own. According to Google’s page experience documentation , there is no single “page experience signal” used in ranking, and good results in the Search Console report do not guarantee high rankings. The same document also warns that chasing perfect scores solely for SEO may waste time.
The question of what Core Web Vitals are is often asked alongside the ranking question, and Google’s position clarifies the order of priorities: if a page does not answer the searched question, speed alone will not earn rankings. Speed’s impact is often seen first in visitors; menus, forms and carts working without delays directly determine the contact and shopping experience. For other topics showing that speed is only one layer of SEO compatibility, see the SEO friendly website checklist article.
Common mistakes in speed optimization
The most common mistake is treating the laboratory score as the goal and field data as a detail. Other mistakes frequently encountered in practice include:
- Testing only on desktop: Thresholds are assessed separately for mobile and desktop; problems mostly arise on mobile, where devices are weaker.
- Deciding from a single measurement: Laboratory results can vary with network and hardware conditions in each test; read several measurements and field data together.
- Lazy loading all images: When the main image on the first screen is included, LCP is delayed.
- Adding tools that do the same job on top of each other: Multiple caching or minification tools can disrupt each other and introduce additional JavaScript load.
- Confusing a single URL result with a group result: Search Console groups similar URLs; the value of one page in PageSpeed Insights may not match the group exactly.
- Expecting results in field data the day after a correction: Real user data updates over a 28-day window.
- Giving up functionality for a score: Instead of deleting necessary elements such as contact forms, maps or videos, loading them when needed is a better approach.
Let us determine your website’s speed priorities together
Speed work performed before clarifying which page is lagging, in which metric and for what reason often changes the score but leaves the delay visitors experience unchanged. Share the website address through WhatsApp, and let us establish the priority order together using field data.
Frequently asked questions
What are good values for LCP, INP and CLS?
The good thresholds are 2.5 seconds for LCP, 200 milliseconds for INP and 0.1 for CLS. These values should be met in at least three quarters of visits, assessed separately for phones and computers.
What are Core Web Vitals?
Core Web Vitals is a set of three metrics measuring page experience with real visitor data: loading speed (LCP), interaction responsiveness (INP) and visual stability (CLS). Values are collected from Chrome users visiting the website and reported in Search Console and PageSpeed Insights.
Can a website be considered fast without a PageSpeed Insights score of 100?
Yes; the score from 0–100 is a laboratory result calculated from a single simulated test. The Core Web Vitals assessment, however, is based on real user data, and a page without a score of 100 can pass all three metrics in field data.
What is the difference between INP and FID?
FID measured only the delay before the first interaction began, while INP tracks all clicks, taps and key interactions throughout the visit until the screen updates. INP has replaced FID in the Core Web Vitals set since 2024.
Why does the Core Web Vitals section in Search Console show "No data"?
The report shows indexed pages for which enough real visit data has been collected from Chrome users. On new websites or those with little traffic, the report may remain empty because this threshold has not been reached; in that case, individual URLs are tested with PageSpeed Insights.
When can the impact of a speed correction be seen?
In laboratory tests, the impact is visible immediately after deployment. Field data covers the last 28 days, so fully refreshing real user values takes approximately that amount of time.
Will a website passing Core Web Vitals rank high on Google?
No, there is no guarantee. Google says Core Web Vitals are used in its ranking systems but good reports do not guarantee high rankings; the answer the content provides to the searched question continues to be decisive.
Why are mobile results worse than desktop results?
A significant share of mobile visitors use devices with less processing power and variable connections; the laboratory test also simulates a midrange phone and a slow network on mobile. Heavy JavaScript and large images cause much more noticeable delays under these conditions than on desktop.
Call us
Call us for detailed information.
Let us call you!
Share your phone number and let us call you!
Our other services
- › Corporate web design
- › E-commerce website development
- › SEO optimization
- › WordPress website development
- › Google Ads management
- › WordPress speed optimization
Service areas
- › Web design in Sakarya
- › Web design in Tekirdağ
- › Web design in Bursa
- › Web design in Beşiktaş
- › Web design in Şişli
- › Web design in Tuzla
- › Web design in Ümraniye
- › Web design in Kadıköy
- › Web design in İstanbul
- › Web design in Ankara
- › Web design in Ataşehir
- › Web design in Üsküdar
- › Web design in Kartal
- › Web design in Maltepe
- › Web design in Pendik
- › Web design in Kocaeli
- › Web design in İzmir
- › Web design in Antalya