Is your WooCommerce admin panel slow?
A slow WooCommerce dashboard can usually be fixed by removing WooCommerce bloat, cleaning your database, and eliminating high CPU plugins. It could also be because you have object cache enabled in W3 Total Cache, or that your cache plugin isn’t configured optimally. However most times, it’s because you’re running WooCommerce on budget shared hosting.
Is my website WooCommerce? No, but I do speed optimization for a living and worked with multiple WooCommrce sites. I listed the most common solutions below for fixing a slow WooCommerce dashboard, as well as solutions from WordPress-related Facebook Groups.
How To Speed Up A Slow WooCommerce Admin
- Remove WooCommerce Bloat
- Deep Clean Your Database
- Clear WooCommerce Customer Sessions + Transients
- Disable WP-Cron
- Disable Heartbeat
- Enable Redis Object Cache
- Disable “Object Cache” In W3 Total Cache
- Ditch Shared Hosting
- Switch To Faster Hosting That Supports WooCommerce
- Use A Better Cache Plugin
- Rethink Your CDN
- Protect The WP Admin Area
- Avoid High CPU Plugins
- Upgrade To PHP 7.4
- Use A Lightweight Page Builder
- Increase Memory Limit To 256MB
- Delete Unused Themes + Plugins
- Identify Bottlenecks In Query Monitor
1. Remove WooCommerce Bloat
The easiest way to do this is with the disable WooCommerce bloat plugin.
It disables WooCommerce features you may not be using including WooCommerce scripts, styles, and cart fragments. It also lets you disable dashboard items like the WooCommerce admin, status meta box, and widgets. It has a perfect 5 star rating at the time of writing this.
This plugin lets you disable the following:
- WooCommerce Admin (WooCommerce admin, analytics tab notification bar)
- Marketing hub
- WooCommerce.com notice
- WooCommerce status meta box
- WooCommerce marketplace suggestions
- Extensions submenu
- Password strength meter
- WooCommerce scripts and styles
- WooCommerce cart fragments
- WooCommerce widgets
- Jetpack promotions
- SkyVerge dashboard
- Elementor dashboard widget
2. Deep Clean Your Database
Most admins use a plugin like WP Rocket to clean the database.
But if you want a deep cleaning, use WP-Optimize. Unlike most database cleanup plugins, WP-Optimize lets you go through individual tables and delete old tables left behind by old plugins. These are marked as “not installed.” If you deleted a plugin and don’t plan on using it anymore, it may leave behind tables even when deleted. Use WP-Optimize to delete this data along with it.
3. Clear WooCommerce Customer Sessions + Transients
As explained in this article, the wp-options table can grow too fast due to ineffective cron jobs, or bots crawling your site and creating sessions on the fly. The first step is the clear customer sessions in your Status settings (you can delete WooCommerce transients in the same tab). The next step is to disable wp-cron jobs and replace them with real cron jobs (covered in next step).
4. Disable WP-Cron
The wp-cron is loaded on every page load and schedules automated tasks like publishing scheduled posts, checking for theme and plugin updates, and sending email notifications. Instead of running it on every page load, you can schedule it to run every 90 minutes or so.
Step 1: Disable WP Cron Jobs
Add the code to wp-config.php, before where it says “That’s all, step editing! Happy blogging.”
Step 2: Replace With A Real Cron Job
You still need wp-cron (eg. checking for theme/plugin updates), just not on every page load. Each host has their own instructions for this, here is SiteGround’s tutorial. You can set the cron job to run every 90 minutes, or increase it even more if you don’t have lots of scheduled tasks.
5. Disable Heartbeat
The WordPress heartbeat API shows real-time plugin notifications, and when other users are editing a post. 99% of websites don’t need this and it generates a request every 15-60 seconds while your admin panel is open. It’s best to disable the heartbeat API using the Heartbeat Control plugin, or at least limit it to 60 seconds. Doing this will also save on server resources.
6. Enable Redis Object Cache
Object cache is specifically good for increasing the performance of your database, which is where Redis comes into play. However, Redis is usually only supported on cloud hosting (Cloudways, Kinsta, Pantheon). You can usually enable Redis directly in your hosting account.
7. Disable “Object Cache” In W3 Total Cache
If you recently configured W3 Total Cache, disable “object cache” in the General settings. This often makes your WordPress admin panel slow and can be an easy fix. Though I recommend a better cache plugin like WP Rocket, you can read my W3 Total Cache configuration guide (with Cloudflare + CDNs) since the wrong settings can slow down your WordPress dashboard.
8. Ditch Shared Hosting
Most hosting recommendations are honestly garbage.
Join the WordPress Hosting Facebook Group to get unbiased feedback from knowledgeable people who’ve been around the block. I won’t tell you to switch hosts if you don’t need to, so run your website through Lighthouse and check for slow server response times (TTFB) over 600ms.
If your TTTFB is slow, many people in Facebook groups (including myself) use Cloudways WordPress Hosting. Specifically their DigitalOcean or Vultr High Frequency plan. Sure, it’s $10-$13/month, but we’re talking about speed, TTFB, and core web vitals – not being cheap.
Take a look at conversations, migration results, and polls posted in some of these Facebook groups. Or look at Backlinko’s PageSpeed Test where he found SiteGround has a slow TTFB. You already know GoDaddy and EIG brands (Bluehost and HostGator) are obviously not good. Hosting affects TTFB, LCP, and other web vitals which will be a ranking factor as of May, 2021.
Here are 22 people who moved to Cloudways and posted their results (click image to enlarge):
Recent Facebook polls taken on “the best hosting” (click image to enlarge):
I use Cloudways DigitalOcean who is #1 in most recent Facebook polls.
Not saying hosting is everything, but it helps.
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. No caching or CDN (with same plugins) are being used since I’m strictly comparing the server. 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 those 2 sites or running your own tests, you’ll see the difference.
I use Cloudways because:
- My TTFB is consistently under 200ms.
- Free migration service made it easy to try them.
- They continuously update their speed technology.
- Multiple caching levels (Redis, memcached, Varnish).
- Support is great as reflected in their Trustpilot reviews.
- Free SSL, staging, bot protection, cron job management.
- Monthly pricing with no long-term contracts or high renewals.
- They have a Cloudways Users Facebook Group to ask questions.
- Choice of 5 cloud providers: DO, Vultr, AWS, Google Cloud, Linode.
- Their community manager answered my questions when signing up.
- Launching a server yourself and using their migrator plugin is also easy.
- Ain’t nobody got time for shared hosting when trying to pass web vitals.
Affiliate Disclaimer – if you sign up for Cloudways using my affiliate link, I seriously appreciate it. I try to support my recommendations with real, unbiased evidence. I also make donations ($6,000 to GoFundMe so far) and your support would help. It’s easy to request a free migration and promo code OMM25 gets you 25% off the first 2 months.
10. Rethink Your CDN
CDNs offload bandwidth to their data centers (speeding up the admin) but which one you use and how it’s setup is high impact. Here are the CDNs I recommend and tips for setting them up.
- Cloudflare – fine for smaller WooCommerce sites, but try to use their APO ($5/month and worth it) or at least WP Cloudflare Super Page Cache. Cloudflare can sometimes make TTFBs slower so you really need to test it’s impact on your speed. If you have a mid-large sized WooCommerce site (or you just want to level up your CDN), skip Cloudflare.
- BunnyCDN – higher performant CDN recommended in Facebook threads (this one too). It’s a a push only CDN which means visitors won’t experience slow polls. It’s the CDN I recommend if you’re serious about speed. Here are instructions for setting it up (sign up, create a pull zone, grab your CDN URL, and paste it into WP Rocket or use their plugin).
- QUIC.cloud CDN – solid CDN with 30+ data centers if you’re using a LiteSpeed server.
- RocketCDN – WP Rocket’s CDN which uses StackPath’s data centers. It’s alright but can actually increase TTFBs. If you’re paying for a CDN, you’re better off using BunnyCDN.
11. Use A Better Cache Plugin
These all have a huge impact on the speed of your WooCommerce admin panel and load times:
- If you’re using a cache plugin
- Which cache plugin you’re using
- Whether the settings are configured optimally
WP Rocket and LiteSpeed Cache are the gold standards for cache plugins (LiteSpeed Cache if you’re using a LiteSpeed server, otherwise use WP Rocket for everything else). SG Optimizer is good if you’re on SiteGround, but like I mentioned earlier, I don’t suggest SiteGround’s hosting.
WP Rocket was #1 in Facebook polls partly because it comes with more features than most cache plugins (resulting in more optimizations and less plugins on your site). Otherwise, you will need to figure out which features your cache plugin doesn’t come with and install extra plugins.
- Database cleanup – WP-Optimize
- CSS/JS optimization – Autoptimize
- Host Google Analytics locally – Flying Analytics
- CDN URL integration – BunnyCDN / CDN Enabler
- Heartbeat control – Heartbeat Control / manual code
- Lazy load images/videos – Optimole / WP YouTube Lyte
- Preload links / instant page – Perfmatters or Flying Pages
- Host Facebook Pixel locally – no plugin does this that I know
- Prefetch/preload – Pre* Party Resource Hints / manual code
- Font-display:swap – Swap Google Fonts Display / manual code
WP Rocket is #1 in most Facebook polls (click on image to enlarge):
12. Protect The WP Admin Area
The first step to protecting the admin is to move your wp-login page. This will also stop spam bots from hitting your default login page. You can do this with Perfmatters or WPS Hide Login.
If you’re using Cloudflare, this page rule will sets admin security level to high, bypasses cache in the admin, and disables app and performance features. You don’t want Performance features in the admin. The security level challenges visitors with threatening behavior in the last 14 days.
- security level: high
- cache level: bypass
- disable apps
- disable performance
13. Avoid High CPU Plugins
All 3 things can affect the speed of your WooCommerce admin panel:
- How many plugins you’re running
- Whether you have deactivate plugins
- Whether those plugins are coded well (only use lightweight plugins!)
High CPU plugins usually include social share, statistic, calendar, page builders, chat, and plugins that run ongoing scans/processes or appear multiple times in GTmetrix.
- 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
- Contextual Related Posts
- Digi Auto Links
- Disqus Comment System
- Divi Builder
- View Full List Of 73 Slow Plugins
You can also find slow loading plugins in your GTmetrix Waterfall chart. If it appears multiple times, takes a long time to load, or generates multiples requests, look for an alternative plugin.
Or use Query Monitor (check the “queries by components” tab):
Do you really need all those plugins?
14. Upgrade To PHP 7.4
Higher PHP versions can easily make your site 2-3x faster. Hosting companies won’t upgrade you to the latest version as you may be running incompatible plugins that are not maintained.
Step 1: See which PHP version you’re currently on in the WooCommerce server environment:
Step 2: Upgrade to PHP 7+ (I use PHP 7.4) in your hosting account.
Step 3: Test your website for errors. If you see any, revert to an earlier PHP version, or check which plugins aren’t compatible and try to find alternative plugins that are maintained better.
15. Use A Lightweight Page Builder
Page builders are slow, specifically Elementor and Divi.
Try Gutenberg blocks, GeneratePress, Oxygen Builder, or Genesis Framework instead. Since the big GTmetrix update includes Lighthouse recommendations, you’ll see many people in Facebook Groups removing slow page builders and getting better scores/load times. Of course, page builder obviously slow down the WooCommerce admin too. I hired WP Johnny’s for his page builder removal service and he’s currently replacing my site (Elementor) with Gutenberg.
Page builder migrations and polls on the fastest themes (click on image to enlarge):
16. Increase Memory Limit To 256MB
WooCommerce recommends you use at least a 128MB memory limit. You may want to increase this more to 256MB, otherwise you might see a fatal error that your memory is low.
Step 1: Edit your wp-config.php file.
Step 2: Add the code before the line that says, “Happy Blogging”.
17. Delete Unused Themes + Plugins
Unused themes leave things in your database which will make your admin panel slow.
Unused plugins do the same thing, and remember to delete all plugins you really don’t need.
18. Identify The Problem With Query Monitor
It requires some technical knowledge, but Query Monitor is great for finding which elements take longest to load: plugins, scripts, styles, and other elements on your WooCommerce site.
Step 1: Install Query Monitor.
Step 2: Go to any page on your website and located the Query Monitor dropdown.
Step 3: Go to “Queries By Component” to see your slowest loading plugins:
Step 4: See your slowest loading scripts:
You may also see cart fragments take a long time to load:
Step 5: See your slowest loading styles:
Frequently Asked Questions
Why is the WooCommerce dashboard slow?
You may need to clear customer sessions, clean your database, disable WordPress heartbeat, and disable CDN features in the admin area (eg. using Cloudflare page rules). Normal speed optimizations like upgrading to PHP 7.4 and avoiding my list of 65 slow WordPress plugins will also help.
Do cache plugins slow down the admin?
No, cache plugins should help speed it up (I have configuration tutorials for nearly every cache plugin). If you're using W3 Total Cache, trying disabling the Object Cache setting which is a common culrpit.
What about the admin-ajax.php?
If this is loading slow, it's also usually due to a slow plugin. You can also try disabling heartbeat and installing a plugin like Perfmatters to cut down on CPU used by WordPress (eg. disabling autosaves and limiting post revisions).
How do I bypass the CDN from working in the admin?
In Cloudflare, create a page rule for your WordPress admin URL with an asterisk, then set Cloudflare's performance features as Off.
How do I find which plugins are slowing down the admin?
First, avoid my list of 65 high CPU plugins and find alternatives if you're using one of these. Next, check your GTmetrix Waterfall tab to see which plugins take longest to load, then replace those. You can also try selectively disabling plugins using Asset CleanUp or Perfmatters, and deactivating all plugins 1 by 1 to find the culprit.
Will faster hosting affect the admin speed?
Yes, it should especially if you're nearing CPU limits which slows down both the front and backend of the site. WooCommerce sites should generally avoid shared hosting because they require more plugins and CPU. They are better of on semi-dedicated or cloud hosting.
I hope this helped! Comment if you have questions.