WooCommerce Speed Optimization

Have a slow WooCommerce site?

I’ll show you how to make it faster by fixing items in GTmetrix/Pingdom (the same tips I used to get 100% GTmetrix scores). I’ll also show you how to optimize WooCommerce cart fragments, styles, scripts, product images, databases, CDNs, and other tips shown in the table of contents.

Is my site WooCommerce? No. But my developer and I have made multiple WooCommerce sites to typically load 3x faster. And if you need help, you can hire him on freelancer.com for $40/hour. He has a perfect 5 star review, an extensive portfolio of websites he’s optimized. I’ve been working with him since 2011 (his name is Pronaya) and can’t recommend him enough.

Otherwise, follow this guide and feel free to post questions (or your results) in the comments.

How To Speed Up A Slow WooCommerce Store

  1. Disable Cart Fragments
  2. Disable WooCommerce Styles
  3. Disable WooCommerce Scripts
  4. Clear Customer Sessions
  5. Clear WooCommerce Transients
  6. Disable The WordPress Heartbeat API
  7. Use A Lightweight WooCommerce Theme
  8. Resize Product Images To Smaller Dimensions
  9. Don’t Use Too Many Extensions
  10. Use A Better Cache Plugin
  11. Avoid Resource-Hungry Plugins
  12. Delete Unused Themes + Deactivated Plugins
  13. Compress Images With ShortPixel
  14. Clean Your WooCommerce Database
  15. Clean Your WordPress Backend With Clearfy
  16. Block Bad Bots
  17. Upgrade To PHP 7.2
  18. Combine Google Fonts
  19. Setup Cloudflare’s Free CDN
  20. Pinpoint The Problem With Query Monitor
  21. Ignore Google PageSpeed Insights (Use GTmetrix)
  22. Check CPU Usage And Server Response Times
  23. Avoid EIG Hosting + GoDaddy
  24. Use Fast Hosting That Can Support WooCommerce

 

1. Disable Cart Fragments

The easiest way to disable WooCommerce cart fragments, scripts, and styles, is with Kinsta’s perfmatters plugin. It also lets you disable unused widgets (including WooCommerce widgets) to make the admin load faster and has other features like disabling the WooCommerce status metabox, disabling scripts on a page/post basis, limiting post revisions, autosaves, heartbeat control, and other things that can reduce CPU and make your WooCommerce site load faster. If you don’t want to pay $25/year, I listed alternative methods below (using code from Github).

perfmatters woocommerce optimization

By default, WooCommerce uses cart fragments which is used to update the shopping cart without refreshing the page. But this isn’t needed on your homepage (or other pages) and can be disabled for better performance. Otherwise, cart fragments will load on every single page.

What cart fragments will usually do to your GTmetrix/Pingdom report:

WooCommerce Cart Fragments

To disable cart fragments, add the code to your funtions.php file:

 

2. Disable WooCommerce Styles

WooCommerce loads 3 stylesheets on every page of your website. Since you probably don’t want these loading on every single page, you should disable them on non-eCommerce content.

WooCommerce styles in query monitor

Disable all WooCommerce stylesheets:

Disable specific stylesheets:

If you disabled specific stylesheets, you will need to add your own:

Another alternative is to only load the CSS styles and Javascripts on WooCommerce product and shop pages, by dequeuing them on all of your other pages. Here is the code from Github:

 

3. Disable WooCommerce Scripts

WooCommerce also causes lots of scripts:

WooCommerce Scripts

The solution below only loads WooCommerce scripts on the shop, checkout, and cart pages.

Add this to your functions.php:

If that doesn’t work, there are a few alternative solutions on Github people had success with.

perfmatters also lets you disable scripts on specific pages. For example, I don’t need my rich snippet or Thirsty Affiliates plugin loading on my homepage, so I disabled it. Selectively disabling scripts/plugins to load on specific pages can reduce load times.

perfmatters script manager

 

4. Clear Customer Sessions

In your WooCommerce Status settings, clear customer sessions:

Clear Customer Sessions

 

5. Clear WooCommerce Transients

In your WooCommerce Status settings, delete all transients:

Delete WooCommerce Transients

 

6. Disable The WordPress Heartbeat API

The WordPress heartbeat API shows you real-time plugin notifications, and when other users are editing a post. This generates a request every 15-60 seconds and will drain CPU, so it’s best to use a plugin like Heartbeat Control plugin to disable it, or at least limit it to 60 seconds.

Heartbeat-Control-Plugin

If using WP Rocket, they also have an option for this:

WP-Rocket-Heartbeat-Control

 

7. Use A Lightweight WooCommerce Theme

I always recommend StudioPress themes which are also recommended by Matt Cutts and even Matt Mullenweg. Many themes, including Avada, are bloated with unnecessary features, and some themes may not be coded or maintained well. StudioPress is supported by a reliable team (recently acquired by WP Engine) with documentation, frequent updates, support, and coded with speed, SEO, and security in mind. I use their Outreach Pro theme and am loving it.

StudioPress eCommerce themes

Themes I recommend from ThemeForest:

Slow WooCommerce theme

 

8. Resize Product Images To Smaller Dimensions

This is what serve scaled images means in GTmetrix.

GTmetrix tells you which images are too large, and the correct dimensions they should be resized to. Save the image from GTmetrix, resize it to the correct dimensions, and replace the old image with the new one. Do this with all oversized images on your WooCommerce site.

I suggest starting with images that appear on multiple pages (eg. logo + sidebar images) then working your way through individual pages, since GTmetrix only shows image errors for the single page you test. I also recommend creating an “image cheat sheet” as I’ll explain below.

Serve Scaled Images

Create a cheat sheet for your most commonly used images:

 

9. Don’t Use Too Many Extensions

Just like plugins, too many WooCommerce extensions will make your website slow:

WooCommerce Extensions

 

10. Use A Better Cache Plugin

There are 3 factors when it comes to cache plugins:

For free, I recommend either Swift Performance or WP Fastest Cache. But if you’re willing to drop $49, WP Rocket was rated #1 in most Facebook polls. That’s because it comes with a ton of features most cache plugins don’t, in which case you would need about 6 additional plugins:

2016 best cache plugin poll

2019 cache plugin poll

Swift vs WP Rocket

2016 cache plugin poll

Best cache plugins 2018 poll

wp rocket vs w3 totla cache

Cache Plugin Tutorials:

 

11. Avoid Resource-Hungry Plugins

These are the most common plugins that drain CPU, but there’s a full list of them.

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.

  1. AddThis
  2. AdSense Click Fraud Monitoring
  3. All-In-One Event Calendar
  4. Backup Buddy
  5. Beaver Builder
  6. Better WordPress Google XML Sitemaps
  7. Broken Link checker (use Dr. Link Check)
  8. Constant Contact for WordPress
  9. Contact Form 7
  10. Contextual Related Posts
  11. Digi Auto Links
  12. Disqus Comment System
  13. Divi Builder
  14. Essential Grid
  15. View Full List Of 65 Slow Plugins

You can also find slow loading plugins in your GTmetrix Waterfall chart. If they appear multiple times, take a long time to load, or generate multiples requests, you will know something’s up.

Slow WordPress Plugin

Or use Query Monitor (check the “queries by components” tab):

Query Monitor Slow Plugins

You don’t need that many plugins!

Too many WooCommerce plugins

 

12. Delete Unused Themes + Deactivated Plugins

All themes and plugins you don’t used should be deleted. Deactivated plugins and unused themes store settings in your database and are unnecessary. If you’re not using it, delete it!

Delete-Unused-WordPress-Themes

 

13. Compress Images With ShortPixel

This is what optimize images means in GTmetrix.

I use ShortPixel which is what one of the most popular image optimization plugins, with Imagify, Kraken, and Smush also being popular. All these plugins do the same thing – compress images, strip EXIF data, and optionally resize images that are too large. Once you’ve configured the settings, compress a few images in the Media section. If you’re happy with the quality, bulk compress all images on your site. Though, I would still take a backup just in case.

ShortPixel Settings

Check out my full guide to optimizing images in WordPress for more tips.

Image Optimizations In GTmetrix

 

14. Clean Your WooCommerce Database

You can use WP-Optimize or WP Rocket to schedule a database cleanup every 1-2 weeks. This deletes garbage files like expired transients, spam comments, pingbacks, trackbacks, database tables, drafts, and the potentially thousands of post revisions that accumulate over time (that is, if you don’t use plugin like permatters to limit them). Always take a backup before doing it!

WP-Optimize plugin

WP-Optimize Clean Database

 

15. Clean Your WordPress Backend With Clearfy

There’s a lot of stuff built-in to WordPress you probably don’t need. Clearfy can help you clear it up. You can usually disable jQuery Migrate, RSD links, wlwmanifest link, shortlinks, post revisions, autosaves, heartbeat, dashicons, and many other options. WP Disable is good too.

Clearfy Performance Settings

Kinsta’s permatters plugin is similar, but comes with even more features:

perfmatters features

 

16. Block Bad Bots

Are bad bots crawling your site and consuming CPU? They were for me, a lot of them actually.

Step 1: Install Wordfence.

Wordfence Security Plugin

Step 2: View your live traffic report.

Live-Traffic-Report-Wordfence

Step 3: Find spam bots in your live traffic report (if the same bot is constantly hitting your site and looks suspicious, Google it’s hostname and see if other people reported it as spam).

Step 4: Block the spam bots.

Wordfence-Blocking-Rule

Wordfence itself can cause high CPU (but is good for seeing IF you have spam bots). I recommend blocking them using the Blackhole For Bad Bots plugin, or with Cloudflare firewall rules. Wordfence and Cloudflare have a log so you can see whether the bots are actually being blocked. If successful, you can uninstall Wordfence and use Cloudflare or the Blackhole plugin.

Blackhole for Bad Bots

Cloudflare Firewall Rule To Block Bad Bots

 

17. Upgrade To PHP 7.2

WooCommerce sites should always be running a fast PHP version (eg. PHP 7.2) which you can upgrade in your hosting account. Higher PHP versions make your site run much faster, even though most WordPress users run outdated PHP versions (since they don’t know how to do it).

WooCommerce PHP Benchmarks

WordPress PHP Stats

Check which PHP version you’re currently running in the Status section of WooCommerce:

WooCommerce PHP Version

Then upgrade to PHP 7+ in your hosting account:

PHP Upgrade

Some plugins are not always compatible with higher PHP versions (another reason you should be careful which plugins you use). Run the PHP Compatibility Checker to make sure your plugins are compatible. If they are, you can safely upgrade, but check your website for errors.

 

18. Combine Google Fonts

Google Fonts are external resources and will show up in your GTmetrix/Pingdom report:

Google Fonts Pingdom

Option 1: Install Autoptimize and use “Combine and link in head” option:

Autoptimize Combine Google Fonts

Option 2: Try the CAOS for WebFonts plugin:

CAOS-Fonts

Option 3: Download your fonts directly from Google Fonts (be selective with fonts and font weights), convert them to web fonts using Transfonter, then add them to your CSS manually.

Transfonter-Google-Font-Conversion

 

19. Setup Cloudflare’s Free CDN

There’s absolutely no reason you shouldn’t be using Cloudflare’s CDN.

It hosts your website on 200+ data centers across the world. This reduces the distance between your server and visitor, while offloading resources to their data centers (putting less stress on your origin server). Cloudflare is easy to setup – sign up for a free plan, run the scan, and they will assign you 2 namesevers which you will change in your hosting account. You can do other things with Cloudflare like enable hotlink protection, Rocket Loader, and utilize page rules to make your WooCommerce site even faster – all done in your Cloudflare dashboard.

Cloudflare-Data-Centers

Multiple CDNs = more data centers = faster delivery of your content. If you want to go the extra mile, use both Cloudflare and a CDN like StackPath (I use both). StackPath has 31 additional data centers. While Cloudflare requires you to change nameservers, StackPath (and other CDNs) will ask you for your website, then generate a CDN URL which you will paste into your cache plugin (most have an option for this), or you can also use the CDN Enabler plugin.

StackPath-Data-Centers

 

20. Pinpoint The Problem With Query Monitor

Query Monitor has a ton of information that can help you debug why your WooCommerce site is slow. It shows you slow loading queries, PHP errors, hooks and actions, block editor blocks, enqueued scripts and stylesheets, HTTP API calls, and more. Fixing items in Query Monitor may require some technical knowledge, but is worth hiring a developer who can fix the issues.

You can also use AWStats (commonly found in the “statistics” section of your hosting count which tells you which bots, images, files, and other elements that are consuming the most CPU.

 

21. Ignore Google PageSpeed Insights (Use GTmetrix)

If you join the WordPress Speed Up Facebook Group, or look at WP Rocket’s article, you’ll learn that Google PageSpeed Insights is not a great tool for measuring (or optimizing) your site – it doesn’t even measure load times! Pingdom is one of the most accurate tools for measuring load times, but for actual performance recommendations I (and most people) prefer GTmetrix.

When testing your WooCommerce site, always check your GTmetrix Waterfall chart to see which requests take longest to load (eg. WooCommerce cart fragments, specific plugins, etc).

The only thing Google PageSpeed Insights is good for is measuring server response times:

Reduce Server Response Time

 

22. Avoid EIG Hosting

The same company (EIG) owns over 60 different hosting companies. It is well-known in Facebook Groups that they pack too many people on the same server, use outdated PHP versions and speed technology, and don’t care about clients. Cheap hosting = cheap results.

Don’t expect a WooCommerce site to be fast on a cheap hosting plan, let alone have a decent server response, time to first byte, and enough CPU to compensate for lots of extra plugins. Generally, WooCommerce sites need a better hosting plan to compensate for more plugins, scripts, and CPU usage. And EIG, GoDaddy, and other low quality plans aren’t going to cut it.

List-Of-EIG-Brands

Bluehost-EIG-Feedback

 

23. Check CPU Usage And Server Response Times

Is your server slow? Run your site through Bitcatcha or PageSpeed Insights to see if it is. If you have high server response times or time to first byte, it has something to do with your hosting.

Bitcatcha Server Speed Report

Reduce-CPU-Usage-WordPress

GTmetrix-Time-To-First-Byte

 

24. Use Fast Hosting That Can Support WooCommerce

Join the WordPress Hosting and WordPress Speed Up Facebook Group to see what real, unbiased people are saying, since hosting is the #1 factor in the WordPress optimization guide.

I use SiteGround and have 200ms response times with 100% GTmetrix scores and .4s Pingdom load times. Do a hosting check, run your own tests, or click through my fast loading pages. They were rated the #1 host in 26 Facebook polls and are worlds better than EIG (Bluehost, HostGator), GoDaddy, and other hosts who pack too many people on the same server. There have been plenty of people who migrated and posted results on Facebook and Twitter. Tweet after tweet, post after post, poll after poll after poll, faster hosting will fix slow response times. They’re recommended by WordPress, do free migrations, and I use their semi-dedicated plan.

2019 Hosting Poll

2017-WordPress-Hosting-FB-Poll

Elementor Hosting Recommendations

July 2019 Hosting Recommendation

WordPress-Host-Poll-Aug-2018

Shared-Hosting-Poll-2017

2019-Hosting-Poll

Go-To-Hosting-Company

WordPress-Hosting-Poll-2017

Managed-Hosting-Poll

WooCommerce-Hosting-FB-Poll

2016-Web-Hosting-Poll

Best-WordPress-Hosting-Provider-Poll

Best-Web-Hosting-2019-Poll

WP Friendly Hosting Poll

2016-WordPress-Hosting-FB-Poll

Favorite Hosting For Elementor

2018 Hosting Recommendations

WordPress Hosting Poll Sept 2018.png

Managed-WordPress-Hosting-Poll-2017

2019-Hosts-Poll-1

Hosting-Poll-For-Speed

WordPress-Hosting-Poll-June-1

SiteGround-Recommendation

2014-Managed-WordPress-Hosting-FB-Poll

Best-Web-Hosting-Provider-Poll

Hosting-Poll-Feb-2019

Hosting-Recommendations-Poll

Bluehost vs SiteGround

WordPress Web Host Poll

People usually migrate because their speed technology can improve server response times by multiple seconds. Here are a few people who migrated to SiteGround and posted their results.

Switching To SiteGround

SiteGround Load Time Migration

Bluehost to SiteGround GTmetrix

HostGator To SiteGround

SiteGround GTmetrix

SiteGround Google PageSpeed Insights

100 Perfect Score On SiteGround

SiteGround Genesis

Speed Delivered By SiteGround

SiteGround GTmetrix Report

Reduced Load Times With SiteGround

New SiteGround Response Times

HostGator To SiteGround Migration

SiteGround Response Times On Joomla

Switched To SiteGround Hosting

SiteGround Rocket Imagify Combo

Joomla GTmetrix On SiteGround

SiteGround PageSpeed Insights

SiteGround On Joomla

SiteGround Reduced Load Times

SiteGround Speedy Hosting

New Pingdom Results On SiteGround

New SiteGround Response Time

SiteGround Response Time Improvement

Godaddy To SiteGround Migration

EIG-To-SiteGround

SiteGround-Migration

My GTmetrix report on their semi-dedicated GoGeek plan:

2019-GTmetrix-Report

OMM-On-SiteGround

I use SiteGround because…

  1. My GTmetrixPingdom reports speak for themselves
  2. My pages load instantly (click through them if you want)
  3. Fast speed technology (PHP 7.3, NGINX, SG Optimizer, Cloudflare)
  4. Recommended by Yoast, WordPress, Ivica from WordPress Speed Up
  5. Free Let’s Encrypt SSL, easy to use cPanel, and features for eCommerce
  6. WordPress support is unbeatable even without GoGeek’s priority support
  7. GrowBig comes with staging, more storage, and more server resources (scroll down to “we allocate the resources you need” and hover over the server tab)
  8. GoGeek comes with even more server resources, storage, priority support
  9. Free migrations, migrator plugin, and a 30-day money back guarantee
  10. Plenty of praise on Reddit, Facebook conversations, Twitter, TrustPilot
  11. Tons of praise on Facebook: #1, #2, #3, #4, #5, #6, #7#8, #9, #10#11
  12. Many people already migrated and posted results on Twitter: #1, #2, #3, #4, #5, #6#7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37

Affiliate Disclaimer – if you sign up for SiteGround using my affiliate link I will donate a chunk of the commission at no expense to you. Each year I donate $3k to GoFundMe campaigns (2018 was to feed the hungry in Denver, and 2017 was Hurricane Harvey). Your support helps and I really do appreciate it. I try to make my reviews unbiased and backed by evidence in the form of Facebook polls, tweets, and real conversations. If you don’t want to use it, here’s a non-affiliate link to SiteGround. Either way I truly believe they’re the best host and that your site will run faster/smoother… do your research on Google and Facebook groups and you’ll find most people say the same.

SiteGround has 3 plans:

SiteGround WordPress Hosting

Higher plans include more server resources (#1 factor in the WordPress optimization guide). Here’s the full comparison chart, but GrowBig gives you about 2x more server resources than StartUp, and GoGeek is semi-dedicated hosting which gives you even more. GrowBig and up comes with a free migration, staging, advanced caching, and ability to host multiple websites. GoGeek comes with priority support. Their cloud hosting is quite the price jump at $80/month.

You can see this on their features page:

SiteGround-Server-Resources-Comparison

You can decide for yourself.

Favorite-Web-Host

 

Frequently Asked Questions

🚀 Why are WooCommerce sites slow?

WooCommerce are naturally slower because they have extra WooCommerce scripts, styles, and cart fragments. They also usually requires more plugins. That's why most WooCommerce sites have poor load times and scores in GTmetrix.

🚀 How do you optimize cart fragments?

You can use the Perfmatters plugins to optimize WooCommerce cart fragments, scripts, and styles.

🚀 What are the 5 most important speed factors?

Skip shared hosting all together and go with cloud hosting, upgrade to the latest PHP version, reduce and consolidate plugins, and optimize images + external fonts using plugins like ShortPixel and OMGF. Using a CDN and cleaning the database helps too.

🚀 How do you optimize product pages?

Optimizing images is the most important part of making individual product pages load faster. There are 3 main ways to optimize images in GTmetrix: serve scale images (resizing them to correct dimensions), compress images using a plugin like ShortPixel, and specify image dimensions in the HTML. Remove EXIF data and serve images from a CDN as well.

🚀 What if you're running lots of plugins?

If you are running lots of plugins, especially if they are not lightweight (see my list of slow plugins), you will need to make sure all other elements of your site are completely optimized and that you're using faster hosting to support the website's resource needs.

I hope this helped! Comment if you have questions.

Cheers,
Tom

Is your WordPress hosting slow on Bluehost?

I had this problem too. I was with Bluehost for 2 years until I joined the WordPress Hosting and other Facebook Groups to see what unbiased people say (who actually knew their stuff).

Turns out, Bluehost is owned by EIG and is infamous for cutting costs by packing too many people on the same server (they have shareholders to please). People promote them because their aggressive affiliate program, but they underperform even on their managed WordPress hosting. They were also rated very poorly in Facebook polls, with SiteGround being the leader.

There’s an easy way to tell if Bluehost is the problem. Run your site through Google PageSpeed Insights to see if reduce server response time shows up in your report (see screenshot). You can also use bytecheck.com to see your time to first byte (TTFB). Both should be under 200ms.

We will use multiple speed testing tools throughout this tutorial (Pingdom, GTmetrix, Google PageSpeed Insights) since each tool helps in different areas of speed optimization.

How To Fix Bluehost's Slow WordPress Hosting

  1. Check Server Response Times
  2. Upgrade To PHP 7.2
  3. Configure A Cache Plugin
  4. Setup Cloudflare
  5. Resize Large Images
  6. Specify Image Dimensions
  7. Losslessly Compress Images
  8. Turn Off Unnecessary WordPress Settings
  9. Clean Your Database
  10. Delete Unused Plugins
  11. Diagnose Slow Plugins And Find Alternatives
  12. Retest Your Pingdom Scores
  13. Switch To SiteGround (Much Faster)
  14. More WordPress Speed Optimizations
  15. Frequently Asked Questions

Pingdom is the most accurate speed testing tool according to WP Rocket who says “the most important metric is load time!” When you’re done, hopefully your report looks like this

2019-Pingdom-Report

Here’s my GTmetrix report which is good for learning which images need to be optimized (steps 5-7) and using the Waterfall tab to see individual elements (eg. plugins) that load slow.

2019-GTmetrix-Report

This video should help (timestamps are in the video description):

 

1. Check Server Response Times

Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. If yes, this means your server (on Bluehost) is slow. A high number of websites on Bluehost have a slow server especially since Google recommends it should be under 200ms.

Reduce Server Response Time

The only way to fix this is by lowering the amount of CPU consumed by your website (eg. deleting high resource plugins in GTmetrix’s Waterfall tab). Or upgrade your hosting to include more server resources (either with Bluehost or someone else) – but this is the #1 speed factor.

Bluehost slow server response time

Slow Bluehost Server Response Time

Bluehost Server Response Time

Bluehost Crap Server Response Time

Bluehost Server Response Times

Bluehost-Managed-WordPress-Hosting

Bluehost To SiteGround Migration

Bluehost SiteGround Migration

2018 SiteGround vs Bluehost Poll

Slow response times? Do yourself a favor and switch to SiteGround. They are 10x better than Bluehost, will migrate you for free, and is who I used to get 100% prefect scores in GTmetrix.

Bluehost customers are constantly complaining about their slow servers on Twitter, and if you search Bluehost’s WordPress forums you can see tons of people are also having this issue…

Bluehost-Slow-Load-Times

SiteGround customer service

 

2. Upgrade To PHP 7.2

Most WordPress users are running outdated PHP versions when upgrading can easily make your site 2-3x faster. Bluehost will not upgrade you automatically (because they don’t want to risk breaking your site) so you need to do this yourself as Bluehost releases new PHP versions.

WordPress-PHP-Version-Stats

WordPress PHP Benchmarks

Step 1: Run the PHP Compatibility Checker plugin to make sure your plugins work with the newest PHP version. This is why you should use reliable plugins that are actively maintained.

PHP-Compatibility-Checker

Step 2: Go to your Bluehost cPanel and click the PHP Config option…

Bluehost-PHP-Config

Step 3: Select the latest PHP version…

Bluehost Update PHP Version

Step 4: Check your website for errors. If you see any, you can always downgrade to the PHP version you were using previously. Errors are likely caused by themes/plugins that are not updated frequently by the developer, so make sure you’re using reliable plugins and theme.

Step 5: Keep your PHP updated to the latest version. Bluehost does an OK job in releasing new versions, however they don’t fully release the stable version (as oppose to the beta) for quite some time, when other hosting companies already have a stable version of PHP 7.2.9.

Supported-PHP-Versions

SiteGround-PHP-7.3

 

3. Configure A Cache Plugin

WP Rocket was the #1 rated cache plugin, costs $49 and is what I use on my site. WP Fastest Cache was the top rated free cache plugin and is super easy to setup. Both can shave multiple seconds off your load time and I wrote tutorials for both, plus W3 Total Cache and WP Super Cache. Only use 1 caching plugin on your site – I recommend WP Rocket or WP Fastest Cache.

WP Rocket is better because it has more features than other cache plugins (lazy loading, database cleanup, hosting Google Anallytics code locally, and integration of Cloudflare + CDNs) which if you were to use another cache plugin, you would likely need to install 1 extra plugin for each of these features. WP Rocket has these built-in and for that reason, should give you better load times. It’s easy to setup, is updated frequently, and has less chance of errors.

2016 best cache plugin poll

2019 cache plugin poll

Swift vs WP Rocket

2016 cache plugin poll

Best cache plugins 2018 poll

wp rocket vs w3 totla cache

Here’s a glimpse of the WP Rocket settings, but see my tutorial for full instructions…

WP-Rocket-Cache-Settings

Here’s a glimpse of the WP Fastest Cache settings…

WP-Fastest-Cache-Settings

If you’re already using W3 Total Cache…

Check my W3 Total Cache settings tutorial which has over 500 comments and has been used by over 250,000 people. Sometimes this plugin can work extremely well for some websites.

 

4. Setup Cloudflare (Using Your Cache Plugin)

Cloudflare is free if you set it up through your cache plugin, otherwise Bluehost tries to charge you for this which is complete BS. Cloudflare’s CDN has 200+ data centers which reduces the geographical distance between your server and visitor, resulting in faster delivery of content. Most cache plugins also have an option to setup Cloudflare which make this pretty easy.

Sign up for Cloudflare, add your website, and it will run a scan. You will go through a set of pages until you see this dashboard, then change name servers in Bluehost to Cloudflare’s…

Cloudflare-Nameserver-Dashboard

Global API Key – go to your Cloudflare account and click your name (in the top right) and go to your profile. Scroll down and you will see your global API key, then paste this into WP Rocket.

WP-Rocket-Cloudflare-Add-On

WP Fastest Cache also has an option for Cloudflare…

WP-Fastest-Cache-Cloudflare-Tab

Here are the Cloudflare settings with W3 Total Cache (activate in the “extensions” tab first)…

w3-total-cache-cloudflare-activation

W3-Total-Cache-Cloureflare-Settings

Bonus Tip: StackPath’s CDN is $10/month but has 35 more data centers (more data centers = faster content delivery) which are heavily focused on the US. You can set this up with your cache plugin – just create a StackPath CDN URL and paste it into your cache plugin…

StackPath-Data-Centers

StackPath-CDN-Tab

StackPath-CDN-Domain

StackPath-Server-IP-Address

CDN-URL-StackPath

WP-Rocket-CDN-Settings

 

5. Resize Large Images

You can optimize images 3 ways: serve scaled images (resizing large images), specifying a width/height in the HTML, and optimizing images through lossless compression. All 3 are high priority items in GTmetrix which is the tool we’ll use for this and I will go through each one…

image-optimization

To find images that need to be resized, run any page through GTmetrix and expand the “serve scaled images” item (photo below). GTmetrix will show you which images need to be resized and their correct dimensions. Start with images that appear on multiple pages (logo, sidebar and footer images) since this improves load times for multiple pages (eg. your logo appears on your entire site). Then run other important pages through GTmetrix and work on those too.

serve-scaled-images

It’s good to create a cheat sheet of your image dimensions so you can resize images accordingly (content body width, widget width, sliders, featured images, carousel images, etc). This way you or your designer can crop/resize images before uploading them to WordPress.

 

6. Specify Image Dimensions

This means you need to specify a width and height in the image’s HTML or CSS. The WordPress visual editor should take care of this automatically, however you usually need to do this manually with images that appear in certain places like your widgets and CSS.

Again, expand the “specify image dimensions” item in your GTmetrix report and find those appearing on multiple pages. Locate each image in WordPress then view it’s HTML or CSS.

Add a width/height like this…

specify-image-dimensions

HTML Example (Shown Above):

<img src=”/wp-content/uploads/2016/10/example-image.jpg” alt=”Example Image” width=”360″ height=”180″ />

CSS Example:

First find the image id or class then go to Appearance → Editor → Stylesheet). To specify your logo dimensions you would add this:

logo width: 180px (retina: 360px;)
logo height: 110px max (retina: 220px;)

 

7. Losslessly Compress Images

Imagify and Kraken are the best plugins to losslessly compress images in bulk (Imagify is free until you reach a 25mb monthly quota). Even then it should only be $4.99 to optimize ALL images on your website depending on how many you have. Other completely free plugins can break images and even your website. Trust me – I have tried many plugins and did my research.

Imagify Instructions

  1. Install the Imagify Plugin
  2. Sign up for Imagify and grab your API key
  3. Go to Settings → Imagify
  4. Set your compression level (normal, aggressive, ultra). Imagify provides “before and afters” so you can see the difference… I use the aggressive setting
  5. Imagif’em all (bulk optimizes all images on your site)
  6. Once you’ve reached your limit of 25MB, either wait for next month to reset your limit and compress more, or pay for a plan

imagify

imagify-wordpress-image-optimization

 

8. Turn Off Unnecessary WordPress Settings

WP Disable lets you disable settings in WordPress that consume CPU and slow down your site. Go through the settings and disable anything you don’t use. Enabling heartbeat control, deleting spam, minimizing requests, and disabling Gravatars/pingbacks/trackbacks will help.

WP-Disable-Requests

WP-Disable-Tags-Settings

WP-Disable-Admin

/WP-Disable-SEO.

WP-Disable-Others

 

9. Clean Your Database

If you’re using WP Rocket for your cache plugin, you can skip this step since there’s an option to do this in the WP Rocket “database” settings. Otherwise WP-Optimize does the same thing… it deletes garbage files like your spam and trash folder, pingbacks, trackbacks, and the potentially thousands of post revisions every time you click “save as draft.” Just install the plugin and click the WP-Optimize button on the left of your dashboard, then delete these…

WP-Optimize Clean Database

 

10. Delete Unused Plugins

Deactivate and delete all plugins you don’t use. If you only use plugins at certain times (Imagify, P3 Plugin Performance Profiler, WP Optimize…), delete it then reinstall it ONLY when needed. Hello Dolly and WordPress Importer can be deleted, you don’t need a Google Analytics plugin since the tracking code can be inserted directly into your footer, Facebook widgets can be created on the Facebook website, and same thing with Twitter widgets.

Disable any plugin settings that require ongoing scans/processes like Broken Link Checker’s ongoing scans, Wordfence’s live traffic reports, etc. These put constant stress on your server, will slow down your site, and in some cases it may cause bandwidth limitations on Bluehost.

delete-wordpress-plugins

 

11. Diagnose Slow Plugins And Find Alternatives

Some plugins are infamous for being slow: Jetpack, Revolution Slider, event and calendar plugins, Disqus (and other comment plugins), live chat, and social media sharing plugins can all slow down your WordPress site. It’s key to use fast plugins – like Soliloquy Slider. Test your website in Pingdom after you install EACH plugin to see how it affects your page load times.

Slow WordPress Plugin

List of slowing loading plugins taken from the WordPress Speed Up Facebook Group…

*Common culprits include related post, statistic, sitemap, chat, calendar, page builders, and plugins that run ongoing scans/processes or show high CPU in GTmetrix.

  1. AddThis
  2. AdSense Click Fraud Monitoring
  3. All-In-One Event Calendar
  4. Backup Buddy
  5. Beaver Builder
  6. Better WordPress Google XML Sitemaps
  7. Broken Link checker (use Dr. Link Check)
  8. Constant Contact for WordPress
  9. Contact Form 7
  10. Contextual Related Posts
  11. Digi Auto Links
  12. Disqus Comment System
  13. Divi Builder
  14. Essential Grid
  15. View Full List Of 65 Slow Plugins

 

12. Retest Your Pingdom Scores

Rerun your site through Pingdom and you should see a significant improvement in scores/load time. If not, this probably means you’re on Bluehost’s cheapest $3.95/month plan and you’re getting what you pay for. Any serious website should not be on such a cheap plan especially if it’s a business website and you rely on it to make a living. Let me know your new page load time in the comments! Or send me your Pingdom/GTmetrix report and I’ll send a few suggestions.

Pingdom Page Speed Test

 

13. Switch To SiteGround (They Are Much Faster)

SiteGround is used by Yoast, myself, and recommended by WordPress. They are #1 in nearly every Facebook poll and give most people significant load time improvements especially if they were using mediocre hosts: GoDaddy, Bluehost, HostGator, InMotion, Dreamhost, EIG.

Yoast-on-Twitter-We-just-switched-to-Siteground

I use their semi-dedicated GoGeek plan which comes with 4x more server resources than shared hosting. Click through my pages to see how fast they load, check out my GTmetrix report, or see people who migrated and posted new load times. They also do free migrations.

DigitalOcean on Cloudways and Kinsta are also good and start at $10/month and $30/month. Cloudways is more for developers who don’t need cPanel, email hosting, or the support you get with SiteGround. Kinsta is basically what WP Engine used to be (pricey, but awesome). My entire blog is basically dedicated to helping people make their website load faster. I refuse to recommend $2/month hosting since it’s most people’s biggest regret when running a website.

2019 Hosting Poll
View Poll
2017-WordPress-Hosting-FB-Poll
View Poll or Screenshot
Elementor Hosting Recommendations
View Poll or Screenshot
July 2019 Hosting Recommendation
View Poll or Screenshot
WordPress-Host-Poll-Aug-2018
View Poll or Screenshot
Shared-Hosting-Poll-2017
View Poll or Screenshot
2019-Hosting-Poll
View Poll or Screenshot
Go-To-Hosting-Company
View Poll or Screenshot
WordPress-Hosting-Poll-2017
View Poll or Screenshot
Managed-Hosting-Poll
View Poll or Screenshot
WooCommerce-Hosting-FB-Poll
View Poll or Screenshot
2016-Web-Hosting-Poll
View Poll or Screenshot
Best-WordPress-Hosting-Provider-Poll
View Poll or Screenshot
Best-Web-Hosting-2019-Poll
View Poll or Screenshot
WP Friendly Hosting Poll
View Poll or Screenshot
2016-WordPress-Hosting-FB-Poll
View Poll or Screenshot
Favorite Hosting For Elementor
View Poll or Screenshot
2018 Hosting Recommendations
View Poll or Screenshot
WordPress Hosting Poll Sept 2018.png
View Poll or Screenshot
Managed-WordPress-Hosting-Poll-2017
View Poll or Screenshot
2019-Hosts-Poll-1
View Poll or Screenshot
Hosting-Poll-For-Speed
View Poll or Screenshot
WordPress-Hosting-Poll-June-1
View Poll or Screenshot
SiteGround-Recommendation
View Poll or Screenshot
2014-Managed-WordPress-Hosting-FB-Poll
View Poll or Screenshot
Best-Web-Hosting-Provider-Poll
View Poll or Screenshot
Hosting-Poll-Feb-2019
View Poll or Screenshot
Hosting-Recommendations-Poll
View Poll or Screenshot

Bluehost vs SiteGround

WordPress Web Host Poll
View Poll or Screenshot

They’re recommended by WordPress:

SiteGround-Recommended-WordPress-Host

And by Ivica who runs the WordPress Speed Up Facebook Group with 16,000+ members.

WordPress-Speed-Up Recommended Tools

A few threads:

Godaddy To SiteGround Migration

EIG-To-SiteGround

SiteGround-Migration

SiteGround has 3 plans:

SiteGround WordPress Hosting

Higher plans include more server resources (#1 factor in the WordPress optimization guide). Here’s the full comparison chart, but GrowBig gives you about 2x more server resources than StartUp, and GoGeek is semi-dedicated hosting which gives you even more. GrowBig and up comes with a free migration, staging, advanced caching, and ability to host multiple websites. GoGeek comes with priority support. Their cloud hosting is quite the price jump at $80/month.

You can see this on their features page:

SiteGround-Server-Resources-Comparison

I use SiteGround because:

  1. My GTmetrixPingdom reports speak for themselves
  2. My pages load instantly (click through them if you want)
  3. Fast speed technology (PHP 7.3, NGINX, SG Optimizer, Cloudflare)
  4. Recommended by Yoast, WordPress, Ivica from WordPress Speed Up
  5. Free Let’s Encrypt SSL, easy to use cPanel, and features for eCommerce
  6. WordPress support is unbeatable even without GoGeek’s priority support
  7. GrowBig comes with staging, more storage, and more server resources (scroll down to “we allocate the resources you need” and hover over the server tab)
  8. GoGeek comes with even more server resources, storage, priority support
  9. Free migrations, migrator plugin, and a 30-day money back guarantee
  10. Plenty of praise on Reddit, Facebook conversations, Twitter, TrustPilot
  11. Tons of praise on Facebook: #1, #2, #3, #4, #5, #6, #7#8, #9, #10#11
  12. Many people already migrated and posted results on Twitter: #1, #2, #3, #4, #5, #6#7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37

Affiliate Disclaimer – if you sign up for SiteGround using my affiliate link I will donate a good chunk at no cost to you. Each year I donate $3,000 to GoFundMe campaigns (2018 was to feed the hungry in Denver, 2017 was to Red Cross at Hurricane Harvey). Your support helps and I genuinely appreciate it. Either way, I would avoid Bluehost – join some Facebook groups and see the conversations, polls, tweets, and people who migrated from Bluehost to SiteGround. I refuse to recommend EIG/Bluehost’s awful hosting. Do your research, see who Yoast is using, and results of people who migrated.

People usually migrate because their speed technology can cut load times in half:

Switching To SiteGround

SiteGround Load Time Migration

Bluehost to SiteGround GTmetrix

HostGator To SiteGround

SiteGround GTmetrix

SiteGround Google PageSpeed Insights

100 Perfect Score On SiteGround

SiteGround Genesis

Speed Delivered By SiteGround

SiteGround GTmetrix Report

Reduced Load Times With SiteGround

New SiteGround Response Times

HostGator To SiteGround Migration

SiteGround Response Times On Joomla

Switched To SiteGround Hosting

SiteGround Rocket Imagify Combo

Joomla GTmetrix On SiteGround

SiteGround PageSpeed Insights

SiteGround On Joomla

SiteGround Reduced Load Times

SiteGround Speedy Hosting

New Pingdom Results On SiteGround

New SiteGround Response Time

SiteGround Response Time Improvement

Bluehost-vs-SiteGround-Support-Thread

Bluehost-vs-SiteGround-Thread

SiteGround-vs-Bluehost-Thread

bluehost-vs-siteground-in-facebook

 

15. More WordPress Speed Optimizations

WordPress Speed Optimization Guide

See my WordPress speed optimization guide to learn how to:

 

15. Frequently Asked Questions

🔵 Is Bluehost the problem?

If you have a high server response time in Google PageSpeed Insights, Bluehost may be the problem. Bluehost is owned by EIG who is infamous for overcrowding servers, causing them to be slow.

🔵 What can I do to improve speed on Bluehost?

Upgrade to PHP 7.2 in your Bluehost dashboard, activate Cloudflare, use a good cache plugin like WP Rocket, configure it with optimal settings, and optimize images and plugins.

🔵 Will upgrading plans improve load times?

Yes, but you should optimize your website first and consider alternative hosts. Bluehost's Optimized WordPress Hosting or VPS plans aren't nearly as fast as semi-dedicated or cloud hosting from other providers. Join some Facebook Groups and do your research.

🔵 Which WordPress speed plugins should I use?

WP Rocket, ShortPixel, and Asset Manager are 3 key WordPress speed plugins. If you're not using WP Rocket, you will need to install additional plugins to take care of Heartbeat Control, database cleanup, lazy loading, and hosting Google Fonts and Analytics locally.

🔵 Which speed testing tools should I use?

GTmetrix has the most robust recommendations and is great for finding slow plugins and unoptimized images. Google PageSpeed Insights is primarily good for measuring server response times. Otherwise, follow the speed recommendations provided by GTmetrix.

🔵 Which plugins are slowing down my site?

Most slow WordPress plugins include social sharing, statistic (analytics) plugins, sliders, portfolios, page builders, calendars, chat, contact form, related post, sitemap, Wordfence, WPML, WooCommerce, and any plugin that runs ongoing scans or processes. Your slowest loading plugins can be found using Query Monitor or in your GTmetrix Waterfall.

🔵 How can I optimize external scripts?

Some external scripts like Google Fonts and Analytics can be optimized by hosting them locally using the CAOS plugins. Disques also has a conditional load plugin, and YouTube videos can be lazy loaded. You can also try the Async JavaScript when loading JavaScript.

Other external scripts like Google AdSense, Facebook widgets, and high CPU plugins, are nearly impossible to optimize and best to avoid all together.

Did this tutorial work?
Let me know in the comments and feel free to share your new load time! If you still have a slow WordPress site on Bluelost let me know about that too… I will gladly look into your Pingdom + GTmetrix report and send you a few suggestions (just please do what you can from this guide).

Cheers,
Tom