Why does Elementor slow down your WordPress site? (And how to fix it)
Elementor is one of the most popular WordPress page builders in the world — and one of the most common reasons WordPress sites fail Core Web Vitals. Here’s why it affects your scores and what you can actually do about it.
Does Elementor actually slow down your site?
Yes, but not always by as much as you might expect. The speed cost of Elementor depends heavily on how you’ve built your pages — the number of sections, widgets, and animations you’ve added — and whether you’ve taken steps to offset the weight it introduces. A bare Elementor installation with one or two sections can perform fine. A page with 40 sections, a slider, animated counters, and four different icon sets will struggle on almost any hosting.
What does Elementor add to every page?
Three things add weight to every Elementor page, regardless of which widgets you’ve placed:
Its own CSS bundle
Elementor generates CSS for its entire widget library, even for widgets not used on the current page. This was partially addressed with Elementor’s “Improved CSS Loading” experiment (more on that below), but even with that enabled, the stylesheet is larger than a manually-coded equivalent. PageSpeed Insights typically flags this as “Reduce unused CSS.”
Frontend JavaScript
Elementor loads a script called frontend.min.js on every page to power features like sticky headers, scroll effects, and animations. If you don’t use any of those features on a given page, it’s dead weight. The browser still has to download, parse, and execute it before the page becomes interactive — which shows up as poor TBT (Total Blocking Time) in your PageSpeed report.
DOM complexity
Every element in Elementor is wrapped in multiple container divs. A single text block might have four or five wrapper elements around it. On a page with many sections, this inflates the total DOM to thousands of nodes. Google flags this as “Avoid an excessive DOM size” — large DOMs slow down the browser’s layout engine and hurt interactivity scores.
Which PageSpeed metrics does Elementor affect?
The visible effects usually show up in two or three places:
- LCP (Largest Contentful Paint) — hurt when render-blocking CSS or JavaScript delays the browser from painting the main content
- TBT (Total Blocking Time) — hurt by the JavaScript execution time of Elementor’s frontend script
- CLS (Cumulative Layout Shift) — can be affected if animations or sliders cause elements to shift during page load
PageSpeed Insights commonly shows “Reduce unused CSS,” “Reduce unused JavaScript,” and “Avoid large DOM sizes” on Elementor sites. All three are direct byproducts of how the builder works.
Is Elementor worse than other page builders?
Broadly, most popular WordPress page builders have similar characteristics: they all add CSS, JavaScript, and DOM overhead. Divi, Beaver Builder, WPBakery, and Brizy have comparable trade-offs. Elementor gets cited most often because it’s the most widely installed, so it appears in more PageSpeed reports.
Newer builders like GenerateBlocks or Kadence Blocks — both built on WordPress’s native block editor — add significantly less overhead and tend to score better out of the box. Switching builders is a large project for an existing site, though. Don’t do it just for performance unless you’re rebuilding the site anyway.
What’s the fastest way to fix an Elementor site?
Fix images first
Images are consistently the biggest contributor to poor scores on Elementor sites — not the builder itself. The render-blocking overhead Elementor adds might cost you 0.3–0.5 seconds. An unoptimized hero image can cost you 2–4 seconds. The image problem is also the easiest to fix.
Picqlo converts your entire WordPress media library to AVIF and WebP — the modern formats that typically cut JPEG photo sizes by 20–50% and PNG graphics by 70–95%+, with no visible quality difference. It works with Elementor without any configuration, because it converts the source files in your media library, not the page builder’s output. New uploads are converted automatically, and your originals are never deleted.
Enable Elementor’s performance experiments
Go to Elementor → Settings → Experiments and enable these three options:
- Improved CSS Loading — loads only the CSS for widgets actually present on the current page, instead of the full library stylesheet
- Lazy Load Background Images — defers loading of background images that are below the visible viewport on page load
- Improved Asset Loading — moves scripts to load only on pages where the features they power are actually used
These aren’t enabled by default because they’re still in experiment status, but they’re stable for most sites and the performance gain is real.
Defer Elementor’s JavaScript
A performance plugin like WP Rocket can delay Elementor’s frontend.min.js from loading until after the first user interaction — the first scroll or click. This significantly improves TBT because the browser doesn’t have to parse and execute the script during initial page load. The page becomes visible faster and the interaction score improves.
Add a caching plugin
Elementor generates pages dynamically from PHP. Without caching, every visitor forces a full database query and PHP render. A caching plugin stores pre-built page copies and skips that work on repeat visits. WP Rocket is the most popular paid option. LiteSpeed Cache is free and excellent on LiteSpeed-based hosting. W3 Total Cache and WP Super Cache are free options that work anywhere.
Check your hosting
If your server is taking over 600ms to respond (check the “Reduce initial server response time” audit in your PageSpeed report), no front-end optimizations will fully compensate. Managed WordPress hosts like Kinsta and WP Engine use server infrastructure optimized for WordPress, with built-in caching and faster TTFB than shared hosting plans. They cost more, but the performance difference is significant if your host is the bottleneck.
Do you have to leave Elementor to get a good score?
No. Plenty of Elementor sites score 80 or above on PageSpeed Insights. What they have in common: optimized images, minimal third-party scripts, a caching plugin, and decent hosting. The builder is rarely the limiting factor once those are in place.
Run a free scan with PageWeight to see your current score, which metrics you’re failing, and which specific images are adding the most weight. That tells you where to put your effort first.