Have a slow Elementor site?
This was already asked in the Elementor Facebook Group so I included their solutions (plus others) in this tutorial. Elementor says the most common reasons for a slow Elementor website are your servers, media, third party scripts, plugins, no CDN, and using a mediocre cache plugin. SiteGround and EIG brands also have slow TTFBs. I recommend trying Cloudways or LiteSpeed.
How to speed up a slow Elementor site
- Optimize DOM Output
- Go Easy On Elementor Plugins
- Use Plugins With Modular Design
- Reduce TTFB With Faster Hosting
- Upgrade To PHP 7.4
- Enable Redis + Memcached
- Increase Memory Limit To 256MB
- Configure A Solid Optimization Plugin
- Optimize Images
- Optimize Google Fonts
- Optimize Third-Party Code
- Add Preload, Prefetch, Preconnect
- Clean Your Database
- Utilize CDNs
- Use Elementor’s Hello Theme
- Disable WooCommerce Scripts, Styles, Cart Fragments
- Find Bottlenecks In GTmetrix
- Explore Plugins By Gijo Varghese
- Finish The Last 10% With Perfmatters
- Remove Elementor
- Perfmatters vs. Asset CleanUp – I compared these in a post. I use Perfmatters since the UX/UI is much easier. Perfmatters is paid, Asset CleanUp is free but has a pro version too.
- Activate The Script Manager – if using Perfmatters, activate the script manager under Settings → Perfmatters → Extras → Script Manager (enable). If using Asset CleanUp, activate Test Mode to prevent breaking things while testing changes. Perfmatters doesn’t have a Test Mode, but you can always undo a setting or create a staging site for testing.
Try disabling other scripts/plugins as well:
- Disable contact form everywhere but contact page
- Disable social sharing plugin everywhere but posts
- Disable table plugin everywhere but content with tables
- Disable rich snippet plugin everywhere but content with rich snippets
- Disable fonts everywhere except certain areas (if you use multiple fonts)
- Disable WooCommerce scripts/styles except on non-eCommerce pages (see #14)
2. Optimize DOM Output
This can help fix the avoid excessive DOM size item in Lighthouse.
Enable this under Elementor → Settings → Advanced → Optimized DOM Output.
This removes unnecessary div wrappers (elementor-inner, elementor-row, and elementor-column-wrap) in your code. While this may not completely fix the DOM elements item in Lighthouse to 100%, it can still help. Check your website for visible errors after enabling this.
3. Go Easy On Elementor Plugins
Don’t go crazy with third-party Elementor plugins.
Many designers rely on multiple Elementor addons to build their site only to realize they’re slowing it down. I ended up deleting Ultimate Addons, Premium Addons, and JetEngine since these plugins were only used in a few areas of my site and weren’t worth the extra load times.
Avoid Other Slow Plugins
High CPU plugins that slow down Elementor sites usually have to do with statistics, backups, social sharing, portfolios, live chat, contact forms, sliders, JetPack, and any plugin that is constantly required to run on your website (such as Query Monitor or Broken Link Checker).
- AdSense Click Fraud Monitoring
- All-In-One Event Calendar
- Backup Buddy
- Beaver Builder
- Better WordPress Google XML Sitemaps
- Broken Link Checker
- Constant Contact for WordPress
- Contact Form 7
- View Full List Of 65 Slow Plugins
4. Use Plugins With Modular Design
Modular design lets you disable plugin features you’re not using.
Some third-party Elementor plugins use modular design like Ultimate Addons and Premium Addons (but they can still be slow as mentioned above). Other plugins like JetEngine do not.
Modules are enabled by default. View the settings and deactivate modules you’re not using.
5. Reduce TTFB With Faster Hosting
Join the WordPress Hosting Facebook Group to get unbiased hosting feedback.
SiteGround’s TTFB has gotten slower (among other problems) and they’re not #1 in most Facebook polls anymore. Backlinko’s Page Speed article showed SiteGround had some of the worst TTFBs of any host. GoDaddy and EIG brands are obviously not good either. Many members from that Facebook Group (including myself) moved to Cloudways WordPress Hosting who is #1 in recent polls. Specifically their DigitalOcean or Vultr High Frequency plan.
Yes, it’s a little more expensive at $10-$13/month, but we’re talking about speed here – not being cheap. With Cloudways, you have a choice of using DigitalOcean, Vultr High Frequency, Google Cloud, AWS, or Linode. These are worlds faster than shared hosting and can handle resource-intensive tasks much better (Elementor on shared hosting is a recipe for slow TTFBs).
People who moved to Cloudways and posted speed results:
Recent Facebook polls show a large shift in people moving away from lower quality hosts (including SiteGround) to Cloudways, Kinsta, A2, and GridPane. Oh, how things have changed.
This is a simple Pingdom test to measure TTFB + load times of 16 WordPress hosts. I installed the same Astra Starter Site on 16 hosting accounts (using separate domains) while measuring Pingdom load times for 1 week at 30 minute check intervals, as well as TTFB in various tools. Some domains are still live (cwdoserver.com is hosted on a $10/month Cloudways DO plan and stgrndserver.com is on SiteGround GrowBig). I cancelled most accounts since it got expensive. Even when browsing through these 2 sites or running your own tests, you’ll see the difference.
Hosts To Avoid
- SiteGround – they have gone completely downhill in recent years.
- Bluehost – slow servers, owned by EIG, bad support, rated poorly in FB Groups.
- HostGator – also owned by EIG with slow servers, bad support, CPU limit issues.
- GoDaddy – top malware hosting network worldwide, rated poorly in FB groups.
- Hostinger – they write fake reviews and vote for themselves in Facebook polls.
- WP Engine – also not what it used to be, expensive and not even fast anymore.
- *A2 Hosting – if you can’t afford Cloudways, A2 is still fast and uses LiteSpeed.
I use Cloudways because:
- Even posts with a 2.70MB page size can load in under 2s.
- DigitalOcean and Vultr HF are miles faster than shared hosting.
- It’s $10-$13/month (no yearly contracts or high renewal prices).
- Server caching (Varnish, Redis, memcached) = faster performance.
- You get to pick from DigitalOcean, Vultr HF, Linode, AWS, Google Cloud.
- 4.7/5 star TrustPilot rating + highly recommended in Facebook Groups.
- They have 25+ data centers between all their cloud hosting providers.
- No CPU issues like on SiteGround, Bluehost, and other shared hosting.
- SSL, staging, and backups are all very easy in the Cloudways dashboard.
- Support used to be average, but is now really good as reflected on TrustPilot.
- They offer a free migration but their Migrator plugin will also do the trick.
- Adding a server, migrating your site, and the dashboard is actually very easy.
- Muhammed (their community manager) gave me peace of mind when moving.
- Only complaint is they need to add LiteSpeed servers to their list of providers.
Affiliate Disclaimer – this is where I shamelessly ask you to use my Cloudways affiliate link which helps me write these guides. I don’t refer people to bad hosting like some affiliates. I also donate to charity ($6,000 to GoFundMe so far) and your support would help. I try to base my reviews on real evidence from trends in Facebook Groups, polls, migration results, and my experience testing god knows how many WordPress hosts.
6. Upgrade To PHP 7.4
Check your PHP Version in Elementor → System Info.
Upgrading PHP versions is one of the easiest ways to speed up your Elementor site. Kinsta’s PHP benchmarks show how higher PHP versions can run 2-3x faster. Elementor also recommends higher PHP versions and to increase memory limit to 256MB (see next step).
You can do this in your hosting account:
7. Enable Redis + Memcached
Redis and memcached are supported by most cloud hosts.
Cloudways supports both which can be activated in your account. SiteGround supports memcached which you can activate in SG Optimizer (use all 3 caching levels). Many people don’t take advantage of server caching, Redis, and speed services offered by their host. You should!
8. Increase Memory Limit To 256MB
Check your memory limit in Elementor → System Info.
Both Elementor, WordPress, and WooCommerce recommend a 256MB memory limit.
You can usually change memory limits in your hosting account:
Otherwise, add this code to your wp-config.php file.
define( ‘WP_MEMORY_LIMIT’, ‘256M’ );
9. Configure A Solid Optimization Plugin
I use WP Rocket but if you’re using a LiteSpeed server, you should be using LiteSpeed.
How your cache plugin is configured greatly impacts the speed of your Elementor site. WP Rocket and LiteSpeed come with features most cache plugins don’t have, meaning more optimizations and less plugins needed on your site. I have guides for nearly every cache plugin including the WP Rocket settings, W3 Total Cache settings, Autoptimize Settings, and others.
10. Optimize Images
There are quite a few ways to optimize images:
- Properly size images – avoid oversized images (make them smaller).
- Compress images – use an image optimization plugin like ShortPixel.
- WebP – next-gen images recommended in Lighthouse. Done by WebP plugins.
- Lazy load images, iframes, videos – done using various speed plugins. Exclude images above the fold from lazy load and don’t use it if you have fast scrolling users (eCommerce).
- Strip EXIF data from images – strips useless data from images like date, time, location, and camera settings when a photo was taken. Done by most image optimization plugins.
- Specify image dimensions – make sure a width and height is specified in each image’s HTML. WP Rocket has an option to add missing image dimensions in the Media settings.
- Serve images from a CDN – image URLs should be served from a CDN URL. If they’re not, try the CDN rewrite in Perfmatters or the Bunny CDN plugin. Cloudflare doesn’t do this.
- Disable hotlinking – same thing as Cloudflare’s hotlink protection (some cache plugins like WP Rocket also have this). Prevents other websites from embedding your images.
- Use adaptive images – serve smaller (adaptive) images to mobile users. One of the few things you can do to improve mobile load times. Done through an adaptive images plugin.
11. Optimize Google Fonts
There are also quite a few ways to optimize fonts:
- Check GTmetrix Waterfall > Fonts.
- Combine fonts into 1 single request.
- Load fonts from your theme, not a plugin.
- Limit number of fonts, weights, font icons.
- Load fonts locally (you can use OMGF) and use WOFF2.
- Add the font-display property manually or using a plugin.
- Preload fonts (using WP Rocket, Perfmatters, or Pre* Party).
12. Optimize Third-Party Code
Just like Google Fonts are a third party request, so is AdSense, Analytics, Maps, Tag Manager, embedded videos, and even Gravatars or social sharing plugins which generate extra requests.
Preventing Third-Party Requests
- Use the add-ons tab in WP Rocket to host files locally.
- Lazy load videos and replace iframe to eliminate requests to YouTube.
- Host Google Fonts locally and avoid creating requests to fonts.gstatic.com.
- Delay loading comments (e.g. wpdiscuz) and Gravatars to speed up comments.
- Host Gravatars locally using WP User Avatar to avoid requests from gravatar.com.
- Try Grow by Mediavine for social sharing buttons to prevent social media requests.
13. Add Preload, Prefetch, Preconnect
You’ve probably seen these in your cache plugin or Perfmatters.
- Preload – often used for links and fonts. Preloading links downloads a page when users hover over a link. Preloading fonts helps browsers discover fonts in CSS files (copy your font URLs from the GTmetrix Waterfall tab then paste them into the font preloading option). Both can be done in WP Rocket, Perfmatters, and Pre* Party Resource Hints.
- Prefetch – helps browsers anticipate requests from third-party sites. View third-party code loading on your site (in Lighthouse). Next, grab their URLs or see this of common domains to prefetch. Lastly, prefetch them using one of the 3 plugins mentioned above.
- Preconnect – establishes early connections to important third-party origins (item found in Lighthouse). Common with CDNs and fonts.gstatic.com but can’t be done in WP Rocket (use one of the other plugins). It should be used sparingly and tested once implemented.
14. Clean Your Database
Many speed plugins clean your database, but they don’t let you delete tables left behind by old, uninstalled plugins. That’s why I like WP Optimize.
View the tables left behind by plugins shown as “not installed.” You probably installed the plugin, deleted it, but it left behind pre-configured settings in your database. So if you don’t plan on using that plugin again, remove it. Otherwise, WP Rocket and other cache plugins are fine for regular database cleanups, but install WP-Optimize especially after deleting unwanted plugins.
15. Utilize CDNs
A few notes about CDNs:
- If visitors are close to your origin server, it may not make sense to use a CDN.
- Cloudflare’s DNS is usually faster than a cheap DNS from GoDaddy or Namecheap.
- Minifying with Cloudflare can often be better (more aggressive) than cache plugins. Just like you would any optimization, if you minify in Cloudflare, disable it in your cache plugin.
- Cloudflare’s Rocket Loader can be hit or miss and can break your site (test carefully).
- If using Cloudflare, setup a cache everything page rule. For dynamic sites, use the WP Cloudflare Super Page Cache plugin to use Cloudflare’s cache without breaking your site.
- Browser cache TTL should be about how often you publish a new post (e.g. 10 days).
- Setting up Cloudflare requires changing namesevers, other CDNs will use a CDN URL.
Recently, I stopped using Cloudflare and WP Rocket’s RocketCDN.
I switched to BunnyCDN which was recommended by WP Johnny. Cloudflare can have a negative impact on load times (and is not a true CDN), and RocketCDN can sometimes cause a slower TTFB. BunnyCDN is a pull CDN, easy to setup, cheap, and is consistently performant.
Instructions – choose a CDN, sign up, create a pull zone, grab your CDN URL, then add it to your site (usually in your cache plugin). Check that your images are being served from the CDN.
16. Use Elementor’s Hello Theme
Elementor’s Hello theme comes with almost no styling or scripts. It’s better to start with minimal bloat then add features. Astra, GeneratePress, and Oxygen are all lightweight too.
17. Disable WooCommerce Scripts, Styles, Cart Fragments
Perfmatters lets you do this with 1-click:
18. Find Bottlenecks In GTmetrix
Other than measuring scores + load times, you can uncover quite a few things in GTmetrix. Since every Elementor site is different, you want to find exactly what is slowing down yours.
Time To First Byte
19. Explore Plugins By Gijo Varghese
Flying Scripts is my favorite because it lets me show Gravatars without affecting GTmetrix. He also has plugins for hosting analytics locally, image optimization, Flying Pages (preloads pages), and other useful plugins. Check out my 25+ WordPress speed optimization plugins for a full list.
20. Finish The Last 10% With Perfmatters
Perfmatters (by Kinsta) takes care of what I like to call “miscellaneous speed optimizations.”
Some of these are extremely useful; the script manager which lets you selectively disable plugins/scripts from certain pages, changing the autosave interval, limiting post revisions, preconnect, and disabling WooCommerce scripts, styles, and cart fragments. When it comes to these types of optimizations, I don’t know of any plugin that does a better job than Perfmatters.
What do you expect, it’s Kinsta.
21. Remove Elementor
If speed/SEO are important, I would definitely remove Elementor.
Elementor is great for quickly deploying sites for clients. But if it’s your own site and you truly want to improve it, considering a lightweight alternative. Speed is becoming a larger ranking factor and it’s unlikely you will pass the Web Vitals Test in PageSpeed Insights with Elementor.
- Gutenberg blocks – redesign your site with Astra (using a Gutenberg template from their Starter Sites plugin). The Gutenberg Blocks plugin adds blocks to give you additional design options (plenty of YouTube tutorials). Or transfer your same design to Gutenberg.
- GeneratePress – rated #1 fastest theme in some Facebook polls with plenty of designs to choose from in their Site Library. A good balance between fast and user-friendly themes.
- Oxygen Builder – super lightweight but requires more technical skills. Compatibility issues have also been reported. Many people in Facebook Groups are moving to Oxygen and posting nice scores/reports. Use it if you’re a developer and want absolutely no bloat.
Alternatively, you can hire WP Johnny for his page builder removal services where he will replace Elementor with Gutenberg blocks. I hired him recently and he already hard-coded my header, menu, and footer instead of using Elementor. Soon, my site will be built entirely with Gutenberg. If you haven’t heard of WP Johnny, he’s a bigger WordPress speed wizard than me.
There’s no doubt Elementor is slow.
Frequently Asked Questions
Is Elementor slow?
What are the most common reasons for a slow Elementor site?
Too much bloat, premium plugins, leaving modules enabled, shared hosting, and not optimizing fonts, images, and third-party scripts can all slow down your Elementor site.
Why is the Elementor Editor slow?
If your Elementor Editor is slow, it's most likely due to high CPU consumption caused by plugins or lack of server resources. Increase your memory limit or look into cloud hosting.
Why is Elementor slow on mobile?
Try using mobile caching, adaptive images, responsive layouts, and avoid hamburger menus. However, most desktop optimizations carry over to mobile so try fixing those first.