Rank Frame Logo

Features

Plugin

Company

Resouces

Rank Frame Logo

8 min read

How-To Guide

Framer Core Web Vitals: How to Measure and Improve Your Scores

Framer ships fast by default, then animations, parallax, and hero images push Core Web Vitals into the red. Here's how to measure and fix each one.

7 Seers

Team 7 Seers

Creators of

and

SH

Table of Content

No headings found on page

Framer Core Web Vitals: How to Measure and Improve Your Scores

What Core Web Vitals Are (and Why They Matter for Framer Sites)

Core Web Vitals are a set of standardized, user-centric performance metrics that Google uses to measure real-world page experience. They are not abstract benchmarks, they measure how a real user experiences the act of loading your page: how quickly content appears, how stable the layout is, and how quickly the page responds to interaction.

Google officially incorporated Core Web Vitals as a ranking signal as part of the Page Experience update. Poor Core Web Vitals directly harm user experience, increase bounce rates, and reduce conversion rates, all of which have downstream effects on your site's performance in search.

The Three Core Metrics

First Contentful Paint (FCP) measures the time from navigation start to the moment the browser renders the first piece of DOM content. A fast FCP (under 1.8 seconds) reduces the perception of a slow or unresponsive page.

Largest Contentful Paint (LCP) measures the time from navigation start to when the largest visible element in the viewport has fully rendered. On most Framer landing pages, this is the hero image or the hero headline text. Google's "good" threshold is under 2.5 seconds; "needs improvement" is 2.5 to 4.0 seconds; anything above 4.0 seconds is "poor."

Cumulative Layout Shift (CLS) measures the sum of all unexpected layout shift scores during the page's lifetime. A layout shift occurs when a visible element changes its position between frames. CLS is scored as a unitless value; lower is better. The target is below 0.1.

Why Mobile Score Is the One That Counts

Google uses mobile-first indexing. This means Google primarily crawls and indexes the mobile version of your site. The Core Web Vitals data that Google collects through the Chrome User Experience Report (CrUX) is real-world data from mobile Chrome users. Your desktop Lighthouse score can be excellent while your mobile score is poor, and it is the mobile score that affects your rankings.

Mobile-First Mindset

When prioritizing performance improvements, test on mobile first and desktop second. A change that improves desktop LCP by 0.3 seconds is useful; a change that improves mobile LCP by 0.8 seconds is urgent.

How Framer Handles Performance Natively

Framer's publishing infrastructure provides a solid performance foundation that most web builders do not match.

Static Site Generation (SSG)

Framer generates static HTML files at build time rather than rendering pages dynamically on each request. This means when a user or Googlebot requests a page, the server sends a pre-built HTML file rather than executing server-side code. Static files are faster to deliver and eliminate server-side rendering bottlenecks.

Edge CDN Delivery

Framer delivers your static site through a global edge network. Your pages are cached at edge nodes geographically close to your users. Edge delivery reduces Time to First Byte (TTFB), which is a prerequisite for good FCP and LCP.

Rolldown Code Splitting

Framer uses Rolldown (a Rust-based JavaScript bundler) for code splitting. According to Framer's own benchmarks, Rolldown-based code splitting has delivered LCP improvements of up to 41% compared to previous bundling approaches.

Automatic Image Optimization

When you upload images to Framer, they are automatically converted to WebP format and served through Framer's CDN. Images are also resized and served at appropriate dimensions for the device viewing them.

Where Framer Falls Short Natively

Despite this foundation, Framer cannot optimize what you deliberately add to the design: heavy animations, third-party embeds, oversized images, custom code components with unoptimized external dependencies, and fonts without explicit size reservations.

How to Measure Core Web Vitals for Your Framer Site

Google PageSpeed Insights

Google PageSpeed Insights (PSI) at pagespeed.web.dev is the free, authoritative tool for Core Web Vitals measurement. Enter your page URL and PSI returns two types of data: lab data (a Lighthouse audit run in controlled conditions) and field data (real-world data from Chrome users in the CrUX dataset, if your site has enough traffic).

RankFrame Page Speed: Integrated Lighthouse for Framer

RankFrame's Page Speed feature removes this friction by running Google Lighthouse audits for mobile and desktop directly inside the Framer editor.

The Page Speed tab displays mobile and desktop Lighthouse performance gauges, Core Web Vitals per device, Speed Optimization Suggestions, and a Re-analyze button that triggers a fresh Lighthouse run after you make changes.

Improving LCP on Framer Sites

LCP is the Core Web Vital that most directly reflects how quickly users see the main content of your page. For Framer sites, it is also the metric most likely to be in the "needs improvement" or "poor" range on mobile.

Identify the LCP Element First

Before optimizing LCP, identify exactly which element Google is measuring as the LCP element on your page. Run your page through Google PageSpeed Insights and look for the "Largest Contentful Paint element" in the diagnostics section.

Optimize the Hero Image

If the LCP element is a hero image: use WebP format, size images to their display dimensions, set explicit dimensions, and use Framer's native image hosting.

Avoid Render-Blocking Resources

Render-blocking resources are scripts and stylesheets that must be downloaded and processed before the browser can render any content. In Framer, the most common render-blocking additions are synchronous third-party analytics scripts, chat widget scripts loaded in the <head>, and custom web font stylesheets without display=swap.

Minimize Animation Initialization Before LCP

Framer's animation system initializes JavaScript before rendering begins. The simplest fix is to either remove entrance animations from the LCP element itself, or set a very short (under 100ms) delay before the hero section animation starts.

Animation vs. Performance Balance

You do not need to remove all animations. Animations that run after the LCP element has already rendered do not affect the LCP score.

Improving CLS on Framer Sites

Cumulative Layout Shift is often the most confusing Core Web Vital to understand and the most surprising to encounter on Framer sites.

Set Explicit Dimensions on All Images

The most common cause of CLS on Framer sites is images without explicit width and height attributes. When a browser loads an image without knowing its dimensions, it allocates zero space for the image initially. When the image data arrives, the browser reallocates space and shifts all surrounding content.

Reserve Space for Third-Party Embeds

HubSpot forms, Typeform embeds, Calendly widgets, and video players all load content asynchronously. The fix is to set a fixed minimum height on the containing frame in Framer that matches the typical rendered height of the embed.

Manage Font Loading to Prevent Text Reflow

Custom web fonts that load after the initial page render cause text reflow. Framer's native Google Fonts integration includes display=swap by default, which allows text to be visible in the fallback font immediately and then swaps when the custom font is ready.

Avoid JavaScript-Triggered Layout Changes After Load

Any Framer component or custom code that modifies the DOM layout after the page has loaded contributes to CLS. For cookie banners and notification bars, reserve the space they occupy from the initial render rather than inserting them into the layout after load.

Improving FCP on Framer Sites

First Contentful Paint is usually the easiest Core Web Vital to bring into "good" range on Framer sites because the platform's SSG and edge CDN already handle the heaviest lifting. When FCP is poor on a Framer site, it almost always traces back to render-blocking resources.

Defer Non-Critical Custom Code Components

Framer supports custom code components, React components you write or import from npm packages. If a custom component loads a heavy JavaScript library synchronously, it blocks rendering until that library is downloaded and executed. The fix is to use dynamic imports in React (React.lazy with Suspense) to defer loading the component.

Reduce Synchronous External Script Loads

Every synchronous script tag in your page's <head> blocks rendering. In Framer's Site Settings under Custom Code, move any scripts that do not need to block rendering to the "End of Body" section and add the async attribute.

Third-Party Script Audit

If your Framer site has added multiple marketing and analytics tools over time, run a PageSpeed Insights audit and look at the "Reduce the impact of third-party code" opportunity.

Speed Optimization Suggestions in RankFrame

RankFrame's Speed Optimization Suggestions go beyond the generic by naming the specific files, resources, and byte sizes involved in each performance issue on your Framer site.

How to Read the Suggestions

Each suggestion in RankFrame's Page Speed panel follows a consistent format: the issue type, the specific resource or file causing the issue, and the potential improvement in seconds or bytes. For example: "Defer offscreen images, hero-background.webp (340 KB), potential saving: 0.8s LCP".

Iterating with the Re-analyze Button

After implementing a fix, click the Re-analyze button in RankFrame's Page Speed panel to trigger a fresh Lighthouse run. This gives you immediate confirmation of whether the fix improved the score and by how much.

Core Web Vitals Score Targets for Different Framer Site Types

Site Type

Mobile Target

Desktop Target

Biggest Challenge

SaaS landing page (minimal imagery)

80+

95+

Third-party scripts

Portfolio (image-heavy)

65+

85+

LCP from large images

Blog / content site

75+

92+

Font loading, CLS

Agency website (animation-heavy)

55+

80+

Animation JS, LCP delay

E-commerce / product catalog

70+

88+

Multiple product images

These are realistic targets, not perfect targets. The goal is to be in the "Good" range for CWV metrics (LCP under 2.5s, CLS under 0.1, FCP under 1.8s) on mobile, not to achieve a theoretical perfect 100 score.

Reducing Animation Scope on Mobile

Framer's responsive design controls allow you to disable or simplify animations specifically for mobile breakpoints. Consider using simpler fade-in animations on mobile while keeping the full parallax and scroll-trigger effects on desktop.

Frequently asked questions

Does Framer automatically optimize Core Web Vitals?

Framer gives you a strong structural foundation: static site generation, edge CDN delivery, automatic WebP image conversion, and Rolldown-based code splitting. However, Framer does not prevent you from adding heavy animations, large uncompressed images, layout-shifting embeds, or synchronous third-party scripts -- all of which hurt Core Web Vitals scores.

What is a good Core Web Vitals score for a Framer site?
What is a good Core Web Vitals score for a Framer site?

Google's passing thresholds are: LCP under 2.5 seconds, CLS under 0.1, and FCP under 1.8 seconds. For Framer sites with good optimization, a mobile Lighthouse score of 75 or above is achievable for most site types.

What is a good Core Web Vitals score for a Framer site?

Google's passing thresholds are: LCP under 2.5 seconds, CLS under 0.1, and FCP under 1.8 seconds. For Framer sites with good optimization, a mobile Lighthouse score of 75 or above is achievable for most site types.

Why is my Framer site slower on mobile than desktop?
Why is my Framer site slower on mobile than desktop?

Google Lighthouse simulates a mid-tier mobile device with a slower CPU and throttled network connection for mobile testing. Mobile scores are almost always lower than desktop scores for visually rich Framer sites -- this is expected and normal.

Why is my Framer site slower on mobile than desktop?

Google Lighthouse simulates a mid-tier mobile device with a slower CPU and throttled network connection for mobile testing. Mobile scores are almost always lower than desktop scores for visually rich Framer sites -- this is expected and normal.

Do Framer animations hurt Core Web Vitals?
Do Framer animations hurt Core Web Vitals?

Yes, they can. Framer's animation system is built on Framer Motion, which uses JavaScript to drive many animation types. The safest animations from a CWV perspective are CSS transform and opacity transitions, which run on the GPU compositor thread rather than the main thread.

Do Framer animations hurt Core Web Vitals?

Yes, they can. Framer's animation system is built on Framer Motion, which uses JavaScript to drive many animation types. The safest animations from a CWV perspective are CSS transform and opacity transitions, which run on the GPU compositor thread rather than the main thread.

What is CLS and what causes it on Framer sites?
What is CLS and what causes it on Framer sites?

Cumulative Layout Shift (CLS) measures how much your page layout shifts during loading. The target is below 0.1. On Framer sites, the most common CLS causes are images without explicit width and height attributes.

What is CLS and what causes it on Framer sites?

Cumulative Layout Shift (CLS) measures how much your page layout shifts during loading. The target is below 0.1. On Framer sites, the most common CLS causes are images without explicit width and height attributes.

How does RankFrame measure Core Web Vitals for Framer sites?
How does RankFrame measure Core Web Vitals for Framer sites?

RankFrame's Page Speed feature runs Google Lighthouse audits for both mobile and desktop for any page on your Framer site, directly inside the Framer editor.

How does RankFrame measure Core Web Vitals for Framer sites?

RankFrame's Page Speed feature runs Google Lighthouse audits for both mobile and desktop for any page on your Framer site, directly inside the Framer editor.

Should I focus on mobile or desktop Core Web Vitals?
Should I focus on mobile or desktop Core Web Vitals?

Mobile. Google uses mobile-first indexing, and Google's Core Web Vitals ranking signal is based on real-world mobile user data collected through the Chrome User Experience Report.

Should I focus on mobile or desktop Core Web Vitals?

Mobile. Google uses mobile-first indexing, and Google's Core Web Vitals ranking signal is based on real-world mobile user data collected through the Chrome User Experience Report.

What is the LCP element on a typical Framer site?
What is the LCP element on a typical Framer site?

On most Framer landing pages and portfolio sites, the LCP element is the largest above-the-fold image -- typically a hero image, background image, or a prominent product screenshot.

What is the LCP element on a typical Framer site?

On most Framer landing pages and portfolio sites, the LCP element is the largest above-the-fold image -- typically a hero image, background image, or a prominent product screenshot.

Rank Frame Logo
Product

Features

Company
Resources

@2026 All Rights Reserve. A Product by 7 SEERS

Rank Frame Logo
Product

Features

Company
Resources

@2026 All Rights Reserve. A Product by 7 SEERS

Rank Frame Logo
Product

Features

Company
Resources

@2026 All Rights Reserve. A Product by 7 SEERS