Webflow Speed Optimisation: Getting a High PageSpeed Score
Webflow gives you more performance control than Wix or Squarespace. Here is how to use that control to achieve strong PageSpeed scores without sacrificing design.
Why Webflow has better performance potential than other website builders
Unlike Wix or Squarespace, Webflow generates clean semantic HTML and gives you direct access to how assets are loaded, how CSS is structured, and how interactions are triggered. This means a well-built Webflow site can achieve PageSpeed scores above 90 — something rarely achievable on fully managed platforms.
But Webflow also makes it easy to build slow sites if you are not paying attention. This guide covers the specific choices that separate fast Webflow sites from slow ones.
Images
Images are the primary cause of poor PageSpeed scores on Webflow sites.
Use Webflow's built-in responsive images
Webflow automatically generates multiple sizes for uploaded images and serves the correct size for each device. To use this:
Enable lazy loading
In Webflow Designer, select an image element and enable "Lazy load" in the image settings. Apply this to all images except the hero image above the fold.
Do not lazy load your hero image
The hero image is almost always your LCP element. If you lazy load it, the browser delays fetching it, which makes LCP worse. Keep lazy loading off for above-the-fold images.
Compress images before uploading
Even with Webflow's CDN, uploading a 4MB source file results in larger variants than necessary. Compress images to under 200kb at the target display size before uploading.
Interactions and animations
Webflow's Interactions panel makes it easy to add scroll-triggered and hover animations. These are implemented in JavaScript and can meaningfully affect INP and the total JavaScript bundle size.
transform and opacity only. Webflow Interactions support animating any property, but animating width, height, top, or left triggers expensive layout recalculation.Fonts
Webflow loads fonts from Google Fonts or Adobe Fonts by default. Both require a third-party DNS lookup and download.
```html
@font-face {
font-display: swap;
}
```
Third-party scripts
Every script added via Webflow's Custom Code settings or via integrations (Intercom, HubSpot, Hotjar) adds to your main thread load.