How can I improve my page speed in Webflow, specifically regarding render-blocking resources and unused JS? My site's mobile speed is slow due to Webflow sending one large JS file instead of splitting it into smaller packages.

TL;DR
  • Minimize use of Webflow interactions and components to reduce JavaScript bloat.  
  • Defer or delay loading of custom and third-party scripts to avoid render-blocking.  
  • Optimize fonts by limiting weights and using font-display: swap.  
  • Convert images to WebP, enable lazy-loading, and use responsive image settings.  
  • Host custom JS externally with defer, and manually split pages or export code for deeper optimization.  
  • Use Lighthouse and Chrome DevTools to audit unused JS/CSS and improve overall performance.

Improving mobile page speed in Webflow requires minimizing render-blocking resources and optimizing unused JavaScript, especially since Webflow bundles much of its scripts into a single large file. Here's how to improve performance within Webflow’s limitations.

​

1. Minimize Use of Webflow Interactions and Components

​

  • Reduce animations and interactions that rely on Webflow’s native IX2 engine, which heavily contributes to the global JavaScript bundle.
  • Avoid unnecessary components like sliders, tabs, and dropdowns if you’re not using them—Webflow still loads their scripts even if they aren’t used efficiently.

​

2. Defer or Delay Custom Code and Scripts

​

  • Use custom code embeds responsibly by adding defer or async to any external JS scripts where possible. This prevents them from blocking rendering.
  • Load third-party scripts (e.g., chat widgets, analytics) after page load using tools like Google Tag Manager or by wrapping code in setTimeout() or requestIdleCallback().

​

3. Optimize Fonts and Reduce FOUT

​

  • Limit the number of fonts and weights you use. Every font weight adds to your render-blocking resources.
  • Enable font-display: swap via custom CSS to allow faster text rendering.

​

4. Enable WebP or Compressed Image Formats

​

  • Convert heavy image assets to WebP for reduced payload.
  • Use Webflow’s responsive image feature and set loading="lazy" for images below the fold.

​

5. Host Scripts Externally When Possible

​

  • If you use custom JavaScript (not interaction-based), consider hosting it externally with HTTP/2 and defer enabled to avoid bloating Webflow’s built-in bundle.

​

6. Use Page Load Split Techniques (Manual)

​

  • Webflow doesn’t support code splitting out of the box. However, you can create “light” landing pages using exported Webflow code, manually removing unused JS.
  • Alternatively, use client-side routing/loading frameworks outside Webflow for high-performance use cases.

​

7. Audit with Lighthouse and Chrome DevTools

​

  • Use Chrome DevTools > Coverage tab to identify unused JS and CSS.
  • Use Lighthouse performance audits to pinpoint specific render-blocking scripts and strategy improvements.

​

8. Consider Webflow Enterprise or External Hosting

​

  • For advanced control, consider exporting Webflow code and hosting it on a custom frontend with code splitting (e.g., Next.js or Astro).
  • Webflow Enterprise gives more control over performance optimizations, but this isn't typically available on standard plans.

​

Summary

​

To speed up your Webflow site's mobile performance and address render-blocking JS and unused JavaScript, reduce Webflow native feature usage, defer non-critical scripts, optimize fonts and images, and audit with developer tools. For significant gains, consider exporting and optimizing your code manually outside of Webflow.

Rate this answer

Other Webflow Questions