Framer · 12 January 2026 · 10 min read
Hitting a sub 2 second LCP on Framer
Framer is fast by default. With three deliberate choices it can be exceptionally fast.
Framer ships fast static pages out of the box. Sub 2 second LCP at the 75th percentile is achievable on virtually any project, but it requires deliberate choices around hero imagery, fonts, and animation libraries.
The three big levers
Here is the process broken into clear steps. Take them one at a time and check each off before moving on.
- Hero image: AVIF or WebP, never above 200KB, with explicit width and height to prevent CLS.
- Fonts: maximum two families, one weight each above the fold, swap strategy enabled.
- Animations: defer non critical Framer Motion components below the fold.
Measuring against the budget
A budget only works if it is checked regularly against real field data, not just a single lab test taken once during the build.
- Test with Chrome DevTools on a throttled connection during development.
- Confirm with PageSpeed Insights field data once the page has traffic.
- Check CrUX data monthly for the 75th percentile LCP, not just the average.
- Re test after any hero image, font or animation change.
What to do when LCP creeps back up
LCP tends to drift upward as teams add hero content, new fonts or extra animation over time, so plan for periodic maintenance rather than a one off fix.
- Check whether the hero image size or format changed since the last audit.
- Confirm fonts are still self hosted and using display swap.
- Review any new third party embeds added to the hero section.
- Re run the test on a throttled mobile connection, not a fast office network.
Questions
It is achievable for most marketing sites with disciplined image and font choices, though very media heavy hero sections may need extra compression work.
Not inherently. The risk is loading and running animation for content that is not yet visible, so deferring below the fold components is usually the fix.
After any change to hero imagery, fonts or above the fold embeds, plus a routine monthly check using field data.