The three metrics and their targets
- Largest Contentful Paint (LCP) measures how quickly the main content appears. Good is 2.5 seconds or less.
- Interaction to Next Paint (INP) measures how responsive the page is to taps and clicks. Good is 200 milliseconds or less.
- Cumulative Layout Shift (CLS) measures unexpected movement as the page loads. Good is 0.1 or less.
These are assessed on real-user (field) data at the 75th percentile, so most visitors need to have a good experience, not just the average one.
Improving LCP
- Identify the LCP element, which is often the hero or main product image.
- Serve that image at the right size and do not lazy-load it.
- Give it high fetch priority and avoid render-blocking scripts and styles above it.
- Remove slow or unneeded apps that delay the first paint.
Improving INP
- Reduce the amount of JavaScript running on the page, especially third-party scripts.
- Defer non-essential scripts such as chat widgets and trackers.
- Break up long tasks and avoid heavy work on click handlers.
- Audit apps: many affect responsiveness more than load time.
Improving CLS
- Set width and height on images and videos so space is reserved.
- Reserve space for banners, review widgets and other late-loading elements.
- Load fonts in a way that avoids visible text jumps.
- Avoid inserting content above existing content after load.
How to measure and track
- Check PageSpeed Insights for field data on your key URLs.
- Use the Core Web Vitals report in Search Console to see groups of affected pages.
- Fix the worst templates first: usually product and collection pages.
- Recheck after changes. Field data takes a few weeks to reflect improvements.
More practical steps in our guide to speeding up your store without changing themes, and our Core Web Vitals service.
Frequently asked questions
- What are good Core Web Vitals scores?
- LCP of 2.5 seconds or less, INP of 200 milliseconds or less and CLS of 0.1 or less, measured at the 75th percentile of real-user data.
- Do Core Web Vitals affect Shopify SEO?
- They are part of Google's page experience signals, and they also affect conversion. They are one factor among many, so content and relevance still matter most.
- Why is my Shopify INP high?
- Usually because of heavy JavaScript, often from third-party scripts and apps. Reducing or deferring them typically helps most.
Keep reading
- Shopify Image Optimization: Sizes, Formats, Lazy Loading and Alt Text
- How to Speed Up Your Shopify Store Without Changing Themes
- Are Shopify Apps Slowing Down Your Store? How to Find and Fix the Culprits
- How to Run a Shopify Speed Audit Yourself: A Step-by-Step Method
- Pet Profiles in Shopify Customer Accounts: What We Built for a Pet Brand