How To Speed Up Your Slow WordPress Admin/Dashboard In 15 Steps (Hint: Use LiteSpeed With Object Cache + OPcache)

Slow wordpress admin

Sometimes, it’s a bottleneck.

Most times, a slow WordPress admin is from poor hosting on Apache servers and insufficient CPU cores/RAM (and possibly no object cache). If your hosting account shows high CPU usage, switching to LiteSpeed servers alone can reduce CPU and memory usage by 75%. Then you add faster NVMe storage + MariaDB into the mix, and the WordPress admin should load much faster.

Slow wordpress admin hosting

Hosts often blame high CPU usage on things like Heartbeat, bots, and database bloat. While these can increase CPU usage, it shouldn’t be enough to make the WordPress admin unusable. It’s really because the hosting stack can’t handle it which is common on SiteGround, Bluehost, Cloudways, and other hosts (and by the way, all the hosts I just listed are using Apache servers).

If it is a specific bottleneck, it’s probably caused by resource-hungry plugins, background tasks, or your cache plugin/CDN setup. Regardless of which it is, these recommendations should help with all three: reducing CPU usage, speeding up your WordPress admin, as well as the frontend.

 

1. Use LiteSpeed With More CPU Cores/RAM

Check the CPU usage in your hosting account which should ideally be under 50%.

Cpu usage graph

Next, use the WP Hosting Benchmark plugin to get a glimpse of your host’s performance. If your scores are low, you’ve narrowed down the problem. You can set up object cache and clean your database, but the scores highly depend on whether your host uses fast and efficient technology.

Wp hosting benchmark tool

Here’s what can happen if you switch from Apache to LiteSpeed. SiteGround, Bluehost, Cloudways, Kinsta, and WP Engine all use Apache servers when LiteSpeed is more efficient.

Litespeed apache cpu usage

Reducing CPU/memory is just 1 benefit of LiteSpeed. You also get to use the free LiteSpeed Cache plugin with QUIC.cloud’s CDN which are faster (and usually cheaper) than other setups.

Litespeed vs nginx vs apache

Which web server do you use recommendLitespeed cache litespeed serverLitespeed litespeed cache quic. Cloud 
Which web server do you useLitespeed on litespeed serverLitespeed cache vs. Wp rocket 


ChemiCloud
uses LiteSpeed servers, NVMe SSDs, Redis, and more CPU/RAM which can scale through their Turbo Boost add-on. You’ll configure LiteSpeed Cache (which is free and does a great job with core web vitals) on top of QUIC.cloud’s CDN or Cloudflare APO. This beats other hosting setups in terms of TTFB, price, support, and scalability. With a 5/5 TrustPilot rating, it’s obvious other hosts are popular from marketing, but fall short when you actually look at specs.

Chemicloud gtmetrix report
Chemicloud vs sitegroundChemicloud pro feedbackChemicloud speed ui supportSiteground vs chemicloud comparison

 
Notes

GoDaddy Managed WP Deluxe Plan Bluehost Choice Plus Plan SiteGround GrowBig Plan Hostinger Business WP Plan ChemiCloud WordPress Turbo Plan
Server Apache + Nginx Apache + Nginx Apache + Nginx LiteSpeed LiteSpeed
CPU cores + RAM 1 core + 512MB Not listed Not listed 2 cores + 1.5GB 3 cores + 3GB (scalable to 6/6)
Storage 60GB SATA 40GB SATA 20GB SATA 200GB SATA 40GB NVMe in 10/11 locations
Object cache Memcached x Memcached Memcached Redis
Database MySQL MySQL MySQL MariaDB MariaDB
Data centers 9 6 10 8 11
Cache plugin x x SG Optimizer LiteSpeed Cache LiteSpeed Cache
CDN Cloudflare (free) Cloudflare (free) SiteGround CDN ($14.99/mo) QUIC (but use Cloudflare APO) QUIC (but use Cloudflare APO)
Full page caching x x
Control panel Custom cPanel Site Tools hPanel cPanel
Inodes 250,000 200,000 400,000 600,000 500,000
Incidents Malware, several data breaches Downtimes TTFB, DNS, CPU issues, controls FB groups Downtimes, fake reviews, scams, bad poll None
Migrations Paid Free on qualified accounts only $30/site Unlimited (but screws it up) 10+ free (details)
Support D D C D A
TrustPilot rating 4.7/5 4.2/5 4.8/5 4.6/5 (fake) 5/5
Intro price $10.49 (2 years) $5.45 (1 year) $4.99 (1 year) $3.99 (4 years) $5.99 (3 years)
Renewal price $16.99/mo $19.99/mo $29.99/mo $9.99/mo $19.95/mo
1 year price $143.88 $65.40 $59.88 $59.88 $82.62
3 year price $359.64 $268.20 $659.64 $191.52 $215.64

 
Rocket.net is who I use (cloud hosting) which has 32 cores/128GB RAM on all plans, free Cloudflare Enterprise, and averages a 100ms global TTFB you can test in SpeedVitals (or feel free to click through my site). They have better specs than SiteGround, Kinsta, Cloudways, etc.

SiteGround Cloud Jump Start Plan Kinsta Starter Plan Cloudways Vultr HF (2GB) Rocket.net Starter Plan
Type Cloud Cloud (shared containers) Cloud Private cloud
Server Apache + Nginx Apache + Nginx Apache + Nginx Apache + Nginx
Nginx reverse proxy $50/mo
CPU Cores/RAM 4 cores + 8GB 12 cores + 8GB 1 core + 2GB 32 cores + 128GB
Storage 40GB SATA 10GB SATA 64GB NVMe 10GB NVMe
Object cache Memcached $100/mo Redis Redis Pro Redis (Redis Pro on Business plan)
PHP processor FastCGI FastCGI FPM LiteSpeed
PHP workers Not listed, but common CPU limits 2 No limit No limit
Memory limit Adjustable 256MB Adjustable 1GB
Database MySQL MySQL MariaDB MariaDB
Bandwidth + visits 5TB/mo 25k/mo 2TB/mo 50GB + 250k/mo
CDN $14.99/mo SiteGround CDN Cloudflare APO + firewall rules (read) $5/mo Cloudflare Enterprise + challenge pages Free Cloudflare Enterprise (read)
CDN locations 176 285 285 285
Full page caching
Smart routing Anycast x Argo Argo
Image optimization Limited x Mirage/Polish Mirage/Polish
DNS Blocked by Google (4 days) Amazon Route 53 $5/mo DNS Made Easy Cloudflare
Cache plugin SG Optimizer Use FlyingPress Breeze Use FlyingPress
Data centers 10 35 44 Served from Cloudflare’s edge
Control panel Site Tools MyKinsta Custom (difficult) Mission Control
Email hosting x x x
Support C B C A
Migrations $30/site Unlimited free 1 free + $25/site Unlimited free
TrustPilot rating 4.6/5 4.2/5 4.5/5 4.9/5
How it starts costing more High initial price, CPU limits, CDN, price increases, internal incidents PHP workers, add-ons, monthly visits, bandwidth, price increases CPU limits, CDN, backups, price increases Bandwidth
Incidents TTFB, DNS, CPU issues, controls Facebook groups None Acquired by DigitalOcean, raised prices, removed Vultr/Linode None
Monthly price $100 + CDN $29 when paying yearly + add-ons $30 + CDN $25 when paying yearly

I’m not trying to make the whole post about “moving hosts” but it’s by far the #1 factor that affects your admin speed. I recommend reading my hosting reviews since Kinsta, SiteGround, WPX, Hostinger, and several other popular hosts don’t live up to the hype.

 

2. Install Object Cache + OPcache

Both are specifically good for speeding up the WordPress admin.

The first step is to check whether your host supports object cache at all. Do a Google search for “[your host} Memcached” or “[your host] Redis.” Redis is generally more powerful compared to Memcached, and Redis Object Cache Pro is even faster which is used on Cloudways/Rocket.net. Redis Pro is especially powerful for WooCommerce sites which require a heavier database load.

If your host doesn’t support object cache, use the Docket Cache plugin. If they do support object cache, follow their instructions. This usually means enabling it in your hosting account, then using a plugin to connect it like LiteSpeed Cache, SiteGround Optimizer, or a Redis plugin.

For example, on cPanel, you can enable both Redis + OPcache in the PHP Extensions menu. Then if you’re using LiteSpeed, use LiteSpeed Cache to connect Redis. On Cloudways, you would just enable Redis in their dashboard. On SiteGround, you would enable Memcached in Site Tools, then connect it in SiteGround Optimizer. Google instructions for your specific host!

Opcache memcached redis

Litespeed cache object cache

 

3. Avoid Page Builders On Slow Hosting

Why do you think Elementor recommends a 768 MB memory limit?

Elementor memory limit

Because Elementor (and Divi) use more memory than Gutenberg. When you start combining slow hosting with resource-hungry page builders, you get a slow admin. This is also true with WooCommerce. Running page builders/WooCommerce on Apache servers is a recipe for slow.

Every time you open your Elementor/Divi editor or preview a page, it requires memory. While there are several ways to optimize Elementor and Divi, the best thing you can do by far is use hosting that better supports them. Page builders can get by on shared LiteSpeed hosting, but WooCommerce sites should generally skip shared hosting all together and go straight to cloud.

You can also try increasing the memory limit in your hosting account to around 768 MB.

Cloudways memory limit

 

4. Use Latest PHP Versions

Upgrade to the latest stable PHP version in your hosting account.

I always upgrade to the highest possible version and check my site for errors. If you see any (which probably means a specific plugin isn’t compatible), simply revert to an earlier version.

Php 8. 1

 

5. Find Resource Hungry Plugins

What do security, statistic, and backup plugins all have in common?

They all run background tasks. The more background tasks that are running, the more resources you’ll need (same concept as your computer which you check in the task manager). And also like computers, they often store information in your database which makes it bloated.

There are a few ways to deal with this:

  • Deactivate all plugins 1 by 1 and check the wp-admin speed.
  • Use tools like Query Monitor and WP Crontrol to identify the problem.
  • Use WP-Optimize to remove tables left behind by old plugins you deleted.
  • Use WP Hive to see if a plugin increases memory usage before installing it.
  • View my list of 75+ Slow Plugins which impact memory usage or PageSpeed.

Wp hive high memory usage plugins
WP Hive shows if a plugin increases memory usage when browsing the WordPress repo
Plugin Category Memory Impact PageSpeed Impact
Analytify Analytics X
Backup Buddy Backup X
iThemes Security Security X
Broken Link Checker SEO X
Jetpack Security X X
Query Monitor Analytics X
NextGEN Gallery Gallery X X
Site Kit by Google Analytics X
Wordfence Security X
wpDiscuz Comments X X
WPML Translate X X
Yoast SEO SEO X

 
 

6. Remove Database Junk

A bloated database can also slow down your admin.

While most cache plugins clean your database, WP-Optimize lets you remove database tables from old plugins you deleted which will be marked as not installed. If you don’t plan on using the plugin again, remove the table. While cache plugins are good for removing most junk, WP-Optimize does a more robust database cleanup, especially if you find yourself deleting plugins.

Wp optimize unused database tables
Remove tables marked as “not installed” left behind by old plugins
Rank math database bloat
Some plugin features/modules add bloat (consider disabling modules if they’re not important)

 

7. Remove Admin Bloat

Most of this can be done with FlyingPress and Unbloater.

There’s also Disable WooCommerce Bloat and Perfmatters also has several bloat removal options. Make sure you disable XML-RPC if you’re not using it and take some time to go through each setting to remove as much bloat as you can (remember to delete unused themes/plugins).

Unbloater plugin

 

8. Limit Heartbeat, Autosaves, Post Revisions

WordPress Heartbeat slows down the admin since it consumes resources by notifying you when other users are editing a post, real-time plugin notifications, etc. You can disable/limit it in most cache plugins, the Heartbeat Control plugin, or add the code below into your functions.php file.

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

Some plugins can control Heartbeat in the dashboard, frontend, and post editor. In this case, I recommend disabling it in the dashboard/frontend, then increasing it to 120s in the post editor.

Heartbeat control plugin settings

Similar to Heartbeat, WordPress autosaves every 1 minute and stores a post revision any time you hit the “publish” button. I personally increased the autosave interval to 5 minutes then limited post revisions to 5 (so I’ll still have a few backups, but they don’t cause too much bloat).

Both these can be done in Perfmatters or by adding the code to your wp-config.php file.

define('WP_POST_REVISIONS', 5);
define('AUTOSAVE_INTERVAL', 300); // seconds

 

9. Limit Preloading In Cache Plugins

When cache plugins preload the entire cache, it increases resource usage. Some cache plugins like WP Rocket and the LiteSpeed Cache crawler let you control preloading. Here are some tips:

  • Disable preloading and control it with a cron job (recommended).
  • Only preload important sitemap URLs like pages/posts, not the full sitemap.
  • Increase the preload crawl interval (usually something like 500ms – 3000ms).

Wp rocket sitemap preloading

Disable Link Preloading

You may also want to disable link preloading especially if you’re on a shared server or your website has lots of image links. When users hover over your internal links, those pages will be downloaded in the background so they’re loaded when users actually click them. This is great for perceived load time, but can increase server load especially if users hover over lots of links.

Wp rocket disable link preloading

Reduce Remove Unused CSS Batch Size

The remove unused CSS feature can also increase CPU usage and can be limited by adjusting the batch size. However, I recommend using Perfmatters, FlyingPress, or LiteSpeed Cache for this since WP Rocket loads used CSS inline which is better for scores but slower for actual users.

 

10. Don’t Let Your Cache Plugin Clear The Entire Cache

Any time you trigger one of these actions, the entire cache is deleted and needs to be rebuilt. Just like anything that increases CPU usage, this can slow down the admin. The screenshot is shown in WP Rocket’s documentation but is similar with most cache plugins. They do partial cache deletions on specific actions too. If you trigger these too frequently, it stresses the server.

Wp rocket full cache deletion

To avoid this, you can disable automatic cache clearing (WP Rocket has a helper plugin) then create a cron job to control which pages are cleared and when the cache is cleared. You could schedule the cron job to run in the middle of the night when very few people are on your site.

Increasing cache TTL helps since the cache won’t be rebuilt as frequently, which can lead to a better cache hit ratio. This is why Google suggests serving static assets with a 1 year cache TTL.

 

11. Try A Different Cache Plugin And CDN

For cache plugins, FlyingPress and LiteSpeed Cache address core web vitals better than WP Rocket and SiteGround Optimizer. WP Rocket only released 1-2 new features since 2011 if you check their changelog. FlyingPress specifically made several major updates (including bloat removal) which put it far ahead of WP Rocket. I always say: use LiteSpeed Cache if you’re on a LiteSpeed server, FlyingPress in all other cases. Even if you’re using SiteGround Optimizer, you should also use FlyingPress, but remember to avoid enabling duplicate settings in each plugin.

For your CDN, it’s hard to beat Cloudflare with APO (except for Cloudflare Enterprise on Rocket.net which is what I use). QUIC.cloud’s CDN is also good if you’re on a LiteSpeed server. All these support dynamic caching which can significantly improve TTFB when testing your site in multiple global locations using tools like KeyCDN’s performance testSpeedVitals TTFB test.

SG Optimizer WP Rocket FlyingPress LiteSpeed Cache
Server-side caching x x
Object cache integration x x
Delay JavaScript x
Remove unused CSS x Inline Separate file Separate file
Critical CSS x
Preload critical images x x x
Exclude above the fold images By class/type By URL/class Automatic Automatic
Lazy load background images x Inline HTML lazy-bg class x
Add missing image dimensions x
Lazy load iframes x
YouTube iframe preview image x
Self-host YouTube placeholder x x x
Host fonts locally x x
Font-display: swap x
Preload links x
Preload links x
Bloat removal (beyond Heartbeat) x x x
Lazy render HTML elements x x
Guest Mode x x x
Advanced cache control x x x
Gravatar cache x x x
Limit post revisions Delete all Delete all Keep some Keep some
CDN SiteGround CDN (Google Cloud) RocketCDN (StackPath) FlyingCDN (BunnyCDN) QUIC.cloud
CDN PoPs 176 73 114 81
Full page caching x x
CDN geo-replication x x x
CDN image optimization x x
CDN image resizing for mobile x x x
CDN DDoS protection x x
CDN bandwidth Unmetered Very limited Unlimited Unlimited
Documentation Not detailed Good Not detailed Good
New features Infrequent Infrequent Frequent Frequent
Facebook group Join Join Join Join
CDN price $14.99/mo $8.99/mo $.03/GB $.02-.08/GB
Plugin price Free $59/year $60/year Free
Renewal price Free $59/year $42/year Free
View tutorial View tutorial View tutorial View tutorial

 
Since your host/CDN are the 2 main TTFB factors, your CDN is just as important as hosting (if not more) for TTFB. And since TTFB is roughly 40% of LCP and FCP, these are key for core web vitals.

Keycdn global ttfb
Your hosting/CDN are the 2 main factors of TTFB which is 40% of LCP

 

12. Use A CDN Firewall

By blocking unwanted requests, you’re saving server resources.

My site isn’t that big and it still can block 100+ events/day. I would have never known so many bots were hitting my site until I saw my Wordfence real-time traffic report. But since security plugins (and image optimization plugins) increase usage, you’re better off using a CDN firewall.

QUIC.cloud’s CDN also uses a  firewall and includes DDoS protection on their paid (standard) plan. However, many CDNs like RocketCDN and SiteGround’s CDN don’t always include these.

Cloudflare waf

Not Using A Firewall? Then you need to find a solution for blocking bad bots, then enable Hotlink protection in your host or Cloudflare. Not using a CDN? Unless you target 1 specific area, you should offload bandwidth to Cloudflare which can massively reduce resource usage.

Cloudflare bandwidth

 

13. Cache Your  WordPress Admin

Some cache plugins like LiteSpeed Cache let you cache the WordPress admin which can speed it up. Just note that this can cause expired data which you may see when working on your site.

Cache wordpress admin litespeed cache

 

14. Replace WP-Cron With A Real Cron Job

wp-cron is loaded on every pageview and schedules automatic tasks like checking updates, publishing scheduled posts, sending email notifications, and more. Just like you can use cron jobs to schedule preloading and automatic cache clearing, you can do the same with WP cron.

The first step is to disable wp-cron by adding the code to your wp-config.php file.

define('DISABLE_WP_CRON', true);

Now we’ll set up an external cron job (Google instructions for your host). In cPanel, you’ll open the “cron jobs” tab and add this line to set a cron job to run every 10 minutes. It may seem a higher interval would be better, but this can cause CPU spikes since too many jobs run at once.

wget -q -O - https://yourwebsite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Cron job minutes

External cron job

WP Crontrol is nice for changing the schedule of specific cron jobs and deleting jobs with no action. You could also offload cron jobs from your server using a Cloudflare JavaScript worker.

 

15. Delete Transients

WooCommerce and social sharing plugins specifically can accumulate transients.

You can clear WooCommerce transients and customer sessions in the WooCommerce Tools settings. If you’re not using WooCommerce, the transients manager plugin is a handy tool. Other types of transients can usually be deleted with your cache plugin or with WP-Optimize.

Clear woocommerce transients customer sessions

 

Plugins To Help Speed Up Your WordPress Admin

Not that most plugins actually speed up your site/admin, but if they do, here they are.

Plugin Description Category
Query Monitor Find slow queries + plugins Diagnostic
WP Hosting Benchmark View CPU/memory utilization Diagnostic
WP Healthcheck View WordPress/PHP/mySQL version, server, etc Diagnostic
WP Rocket Helper Plugins Control preloading + automatic cache clearing Limiting
WP Crontrol Control cron jobs Limiting
Unbloater Remove various types of bloat Bloat Removal
Widget Disable Disable unused widgets in the admin Bloat Removal
Disable Woo Bloat Remove WooCommerce admin bloat Bloat Removal
Limit Login Attempts Block requests to wp-login Security
WPS Hide Login Block requests to wp-login Security
Transients Manager Edit/delete transients Transients
WP-Optimize Remove old databases tables Database
Docket Cache Object cache (if your host doesn’t support it) Caching
Cloudflare Set up Cloudflare’s APO Caching
Super Page Cache for Cloudflare Full page caching on Cloudflare Caching
Blackhole for Bad Bots Block bad bots Bot Protection

 

 

Frequently Asked Questions

What causes a slow WordPress admin?

A slow WordPress admin is often caused by high resource usage on Apache servers. Try using a better hosting configuration with more CPU cores + RAM, object cache, limiting background tasks/bloat, and identifying resource-hungry plugins. Offloading resources to a CDN and using a CDN firewall to blocked unwanted requests to your server can also help.

Will changing hosts fix a slow admin?

Switching to a host that uses more efficient technology (like Apache servers, Redis, MariaDB, and more CPU cores + RAM) can definitely speed up your WordPress admin.

How do I fix a slow WooCommerce admin?

A slow WooCommerce admin is highly affected by your hosting including PHP workers and CPU frequencies. You can also use the Disable WooCommerce Bloat plugin as well as clear transients + customer sessions. Redis Object Cache Pro helps with database optimizations.

Why is the WordPress admin slow on GoDaddy?

If your admin is slow on GoDaddy, it's likely because they use outdated technology, overcrowds their Apache servers, and don't support critical features like object cache.

How do I reduce admin-ajax.php server load?

To reduce calls to the admin-ajax, try disabling WordPress Heartbeat and use Query Monitor or your GTmetrix waterfall chart to find plugins making calls to admin-ajax.php.

Admin still slow? Let me know a little bit about your setup and I’ll see if I can help.

Cheers,
Tom

 

You can check these in your hosting account or use WP Server Stats. The majority of this tutorial is focused on reducing server load and lowering usage.

Wp server stats cpu memory usage

You Might Also Like:

202 Comments...

  1. Hi Tom,

    Thought I would give you shout, love your work.

    I am on Name Hero and my admin is running very slow it takes about 30 seconds to load.
    Not sure what my issue is when I check GTMetrix I get a great score but its another story from my end. I am running php8.1 and I am getting the following errors from Query Monitor:

    include_once(/var/lib/sec/wp-settings.php): Failed to open stream: No such file or directory 1
    wp-config.php:87
    WordPress Core

    include_once(): Failed opening ‘/var/lib/sec/wp-settings.php’ for inclusion (include_path=’.:/opt/alt/php81/usr/share/pear:/opt/alt/php81/usr/share/php:/usr/share/pear:/usr/share/php’) 1
    wp-config.php:87
    WordPress Core

    Not sure if this is causing the issue but I just can figure it out.

    Reply
    • Hey Gary,

      I wish I knew how to help but it sounds like that’s something you need to contact their support about. Send them the logs and have them investigate.

      Reply
  2. I’m using Avada Theme, and the Avada Builder plugin (which is required) makes getting to the edit product page take 30s . Removing the plugin reduces the speed to 3s . I’ve disabled all of the options on Avada Builder, but it still takes forever to edit a product. Any ideas?

    –Bobby

    Reply
    • Moving away from Avada would obviously be the best solution (not good for the admin or frontend). It’s hard to know without looking through your configuration and settings but since you’re using Avada with WooCommerce, your choice of hosting and it’s configuration will be key. Have you run any diagnostic tools, checked memory usage, etc?

      Reply
  3. Thanks Tom, this was really helpful. By the way, what’s the name of the related posts plugin you use at the end of your content? It looks really nice and simple

    Reply

Leave a Comment