14 Ways To Fix A Slow WordPress Admin Panel (Dashboard) With Bloat Removal, PHP 7.4, Page Rules, And Avoiding 65 Slow Plugins

Have a slow WordPress admin panel?

A slow WordPress dashboard is usually caused by high CPU plugins, cheap shared hosting, a bloated database, or incorrectly configured cache plugins and CDNs.

These tips should speed up your admin panel while also making your website load faster in GTmetrix by lightening the load on your server. And if your WordPress dashboard is still slow after this tutorial, drop me a comment with your GTmetrix report and I can have a quick look.

How To Speed Up Your WordPress Dashboard

  1. Move Away From Poor Hosting
  2. Avoid Slow Loading Plugins
  3. Upgrade To PHP 7.4
  4. Disable WordPress Heartbeat
  5. Remove Bloat From Your Dashboard
  6. Remove Junk From Your Database
  7. Offload Resources To CDNs
  8. Add Cloudflare Page Rules
  9. Clear WooCommerce Transients
  10. Increase Memory Limit To 256MB
  11. Configure A Solid Cache Plugin
  12. Disable “Object Cache” In W3 Total Cache
  13. Block Spam Bots From Hitting Your Server

 

1. Ditch Shared Hosting

I’m guessing you’re using GoDaddy, Bluehost, HostGator, SiteGround, an EIG hosting company, or some form of shared hosting if your admin panel is slow.

I would also guess you have a slow server response time in PageSpeed Insights and slow TTFB in GTmetrix. That’s because shared hosting lacks server resources and can barely support high CPU tasks like WooCommerce, Elementor, AdSense, or Jetpack. SiteGround has CPU limits too.

That’s why I would skip shared hosting all together and go straight to Cloudways. They do free trials and free migrations.

They’re who most people recommend in the WordPress Hosting Facebook Group and #1 in most recent Facebook polls, especially since SiteGround increased prices and went downhill. I migrated from SiteGround to DigitalOcean on Cloudways and you can view the results below.

SiteGround-vs-Cloudways

I use them and you can check my GTmetrix report, or visit cwdoserver.com to test the speed of a $10/month Cloudways DigitalOcean test server I set up with an Astra Site. It loads instantly (for reference, stgrndserver.com is the identical Astra Site only on SiteGround’s GrowBig plan).

2020-Hosting-Poll

Cloudways Response Times

Godaddy-to-DigitalOcean-Migration

VPS Cloud Hosting WooCommerce Poll

SiteGround-Alternative

Hosting Recommendations Facebook

2017-WordPress-Hosting-FB-Poll

Favorite Hosting For Elementor

Elementor-Hosting-Poll

Untitled

Vultr-Migration

WordPress Hosting Suggestions

SiteGround-Alternative-For-Beginners

VPS Cloud Hosting Poll

2016-WordPress-Hosting-FB-Poll

Elementor Hosting Recommendations

Cloudways-Facebook-Review

Affiliate Disclaimer – if you sign up for Cloudways or Kinsta using my affiliate links, I earn a commission at no expense to you. I am not an affiliate for Bluehost, HostGator, or GoDaddy since they’re not fast and the results show it. I also donate a good chunk of my blog’s income to GoFundMe campaigns and seriously appreciate your support.

If you see this in Google PageSpeed Insights, you know the issue:

Reduce Server Response Time

 

2. Avoid Slow Loading Plugins

Thank you Ivica from the WordPress Speed Up Facebook Group for contributing to this list (and ps. that’s an amazingly helpful group if you need tips on WordPress speed). The most common slow plugins are social sharing, backup, statistic, chat, sliders, page builders, and plugins that run ongoing scans/processes – or appear multiple times in your GTmetrix report.

  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 use Query Monitor to find your slowest plugins:

Query Monitor Slow Plugins

Or the GTmetrix Waterfall tab:

Slow WordPress Plugin

Alternative Lightweight Plugins

 

3. Upgrade To PHP 7.4

Upgrading PHP versions can easily make your site 2-3x faster.

According to WordPress stats, most users run outdated PHP versions since your hosting company won’t upgrade you automatically. The Display PHP Version plugin tells you which PHP version you’re currently running, otherwise you can just find it in your hosting account.

WordPress PHP Benchmarks

Upgrade to the latest PHP version in your hosting account:

PHP-7.4

*Check your website for errors (if you see them, revert back to an earlier PHP version, or analyze your plugins to see which ones are not compatible and causing the errors).

 

4. Disable WordPress Heartbeat

The WordPress Heartbeat API can slow down your WordPress dashboard since it consumes resources by notifying you when other users are editing a post, real-time plugin notifications, etc. You have a few options: copy and paste this code into your functions.php file, use the Heartbeat Control plugin, Perfmatters, or WP Rocket also has an option to disable Heartbeat.

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

 

5. Remove Bloat From Your Dashboard

90% of WordPress bloat can be removed using the Perfmatters plugin by Kinsta.

Perfmatters lets you disable pingbacks, trackbacks, heartbeat, XML-RPC, jQuery migrate, limit post revisions, increase the autosave interval, and includes plenty of other features that can fix a slow WordPress admin panel. It can also help optimize WooCommerce sites, host Google Analytics locally, prefetch/preconnet external scripts, and even has a script manager for selectively disabling plugins. It basically takes care of speed optimizations WP Rocket doesn’t.

perfmatters-features

Delete Unused Plugins + Themes – all unused plugins and themes should be deleted if you’re not using them (don’t forget to check WP-Optimize for database tables they may leave behind).

Delete-Unused-WordPress-Themes

Use Script Managers To Selectively Disable Plugins/Scripts – Perfmatters includes a script manager for disabling plugins/scripts on specific pages/posts (you can also do this with the Asset CleanUp plugin). For example, contact forms can usually only be loaded on the contact page. Social sharing buttons can only be loaded on the blog. Schema plugins can often be disabled on pages not using schema, and so on. Viewing which scripts/plugins are being loaded on your pages and posts (and disable the ones you don’t need) can greatly improve load times.

perfmatters-script-manager

Pro Tip For Yoast – install the Hide SEO Bloat plugin. This blocks all Yoast’s advertisements.

 

6. Remove Junk From Your Database

A bloated database can slow down your WordPress dashboard which you can use WP Rocket or WP-Optimize to clean.

This deletes your spam folder, trash folder, transients, and the potentially thousands of post revisions stored in your database. You usually don’t need these, so delete them and schedule a cleanup to run every week (or at least every month) which can be scheduled in either plugin.

WP-Rocket-Database-Settings

Delete Tables Left Behind By Old Plugins – when you delete a plugin, it can leave behind old tables containing pre-configured settings and other information. That’s why you see it’s tables are still in your database, but the plugin is “not installed.” If you deleted a plugin and don’t plan on using it again, go through the “not installed” tables and delete them. You will need to use WP-Optimize or Advanced DB Cleaner since WP Rocket doesn’t support going through tables.

WP-Optimize-Tables

 

7. Offload Resources To CDNs

CDNs help speed up the WordPress admin by offloading resources which lightens the load on your server. I recommend either Cloudflare or RocketCDN (if using WP Rocket). Cloudflare can be set up by changing nameservers, RocketCDN can be bought from your WP Rocket settings.

Once setup, check your analytics in your CDN’s dashboard and make sure it’s working. Offloading 58GB of bandwidth last month? Yeah, that will definitely improve your server.

Some hosts have an option to activate Cloudflare in the cPanel, otherwise you’ll need to add your website and change nameservers in your domain registrar (eg. GoDaddy or Namecheap).

Cloudflare-Bandwidth-Savings

 

8. Add Cloudflare Page Rules

Free Cloudflare accounts come with 3 free page rules.

Here are 3 page rules I recommend setting up for WordPress sites.

Page Rule 1: Cache Everything And Force HTTPS – ensures your site is cached aggressively.

http://*yourwebsite.com/*

Always-Use-HTTPS-Page-Rule

Page Rule 2: Secure The WordPress Admin And Bypass Cache – sets the security level of the WordPress admin to high and bypasses Cloudflare’s cache inside the admin, since you don’t want your CDN (or apps + performance features like Rocket Loader) running inside the admin.

yourwebsite.com/wp-admin*

WordPress-Admin-Page-Rule

Page Rule 3: Decrease Bandwidth Of WP Uploads – since the content in your WP Uploads folder does not change frequently, you can increase the Edge Cache TTL to a month. This can potentially save on your bandwidth since the WP Uploads folder cache won’t refresh as often.

yourwebsite.com/wp-content/uploads*

WP-Uploads-Page-Rule

You should also enable hotlink protection in Cloudflare’s scrape shield settings which prevents people from pasting your images on their website when the image is still hosted by you, which means you’re consuming the bandwidth. Enabling Cloudflare’s hotlink protection prevents this.

 

9. Clear WooCommerce Transients

If you’re running WooCommerce, transients can cause bloat in your database and slow down the dashboard. To clear them, go to the WooCommerce Status settings → delete all transients.

Delete WooCommerce Transients

 

10. Increase Memory Limit To 256MB

WooCommerce sites, Elementor, WPML, and other systems require a 256MB memory limit, but you should really increase this anyway, since most hosts will set the default as 128MB.

Step 1: Edit your wp-config.php file.

Step 2: Add the code before the line that says, “Happy Blogging”.

define('WP_MEMORY_LIMIT', '256M');

Your host may have an option to increase memory limits (below is for Cloudways).

Memory-Limit

 

11. Configure A Solid Cache Plugin

I recommend WP Rocket and that you check my WP Rocket settings.

It’s usually the #1 cache plugin in polls primarily because it comes with more features than any other cache plugin (resulting in faster load times and less plugins needed on your site). If you’re not using WP Rocket, I suggest WP Fastest Cache, however try using WP Rocket if you can.

Correctly configuring a solid cache plugin has a huge impact on your GTmetrix scores, load times, and speed of your admin panel. If your WordPress admin is slow, recheck your settings.

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

With most other cache plugins, you would need to install about 6 extra plugins to get these features, when WP Rocket has them all built-in, reducing the number of plugins on your site. If you’re like me, you only want to use 1 plugin, otherwise you will need to research which features your cache plugins comes with, then install these plugins if it doesn’t support them.

WP-Rocket-Features

Most people have a cache plugin installed, but the settings aren’t configured optimally. Review my guides to make sure your cache plugin is configured for optimal load times.

 

12. Disable “Object Cache” In W3 Total Cache

If you’re using W3 Total Cache go to the General Settings and disable object cache. See my W3 Total Cache settings to make sure everything is configured properly since Cloudflare and StackPath may also be the culprit – plus most people don’t have the ‘performance tabs’ setup correctly. That tutorial has been used by over a million people with like… a million comments.

However, W3 Total Cache has bugs and the plugin developer doesn’t go a great job updating it, so do yourself a favor and switch to WP Rocket if you have $49 (they’re almost always rated the #1 cache plugin in Facebook polls) or WP Fastest Cache which is free and usually rated #2.

W3 Total Cache Object Cache

 

13. Block Spam Bots From Hitting Your Server

You would never know it unless you looked, but spam bots can constantly hit your server and consume resources. It’s a waste of bandwidth and can slow down your WordPress dashboard. In this step, we’ll find bad bots in Wordfence’s live traffic report and make sure they’re blocked.

Step 1: Install Wordfence.

Step 2: View your live traffic report (under Wordfence’s Tools settings) which shows you all bots hitting your site in real-time. Googlebot is obviously OK, but when I did this, I saw compute.amazonaws.com making a ridiculous amount of requests every couple seconds. I Googled it and sure enough, this was a bot known for sucking up bandwidth. View your report for a minute or two and see if bots with sketchy names are constantly hitting your site. If you have doubts, Google their hostnames and see if other people are having issues with that bot.

Live-Traffic-Report-Wordfence

Step 3: Block the bots. You have a few options: Wordfence blocking (however the plugin itself consumes resources), Cloudflare firewall rules (comes with 5 free rules which means you can block 5 bots), or the Blackhole For Bad Bots. I have a tutorial for blocking bad bots using all 3 methods. It depends on how many you want to block; if it’s only a few, I’d use Firewall Rules.

Login to your Cloudflare Dashboard and go to Firewall → Firewall Rules → Create A Firewall Rule. Copy the bad bot’s hostnames (from Wordfence) and add it here in the “Value” field. Since you can create 5 rules, you would repeat this step for your 5 worst bad bots from Wordfence.

  • Field = Hostname
  • Operator = Contains
  • Value = hostname of the bad bot you found in Wordfence

Cloudflare Firewall Rule To Block Bad Bots

Step 4: Go to your Blocking log and enjoy watching those spam bots get blocked.

Cloudflare-Firewall-Events

 

Frequently Asked Questions

🚀 What are the most common remedies for a slow WordPress admin?

The most common remedies for a slow WordPress admin are using a better cache plugin, configuring it with optimal settings, upgrading to faster hosting, and avoiding high CPU plugins. If using W3 Total Cache, try disabling the object cache option.

🚀 Will changing hosts fix a slow admin panel?

If your server response time is high in Google PageSpeed Insights, this can put stress on your server and slow down the admin panel. Changing hosts can fix a slow admin especially if you're using a low quality host like GoDaddy, Bluehost, or an EIG brand.

🚀 Will a CDN speed up the admin panel?

Using a CDN offloads resources and puts less stress on your server, therefore speeding up both your website and admin panel. Cloudflare is a great free CDN, and using multiple CDNs can help even more since more data centers means more offloading.

🚀 Do spammy bots slow down the admin?

Yes, spammy bots that constantly hit your site are a waste of server resources. You can use Wordfence to find all bots hitting your site in real-time, then use Wordfence, Block Bad Queries, Blackhole for Bad Bots, or Cloudflare firewall rules to block spammy bots.

🚀 Which plugins slow down the admin panel?

Most slow WordPress plugins include social sharing, statistic (analytics), sliders, portfolios, page builders, calendars, chat, contact forms, related post, sitemap, Wordfence, WPML, WooCommerce, and any plugin that runs ongoing scans or processes. Always make sure you're using lightweight plugins that are maintained and coded well.

🚀 Do cache plugins affect the speed of the admin panel?

Yes. Which cache plugin you're using and whether it is configured optimally has a huge impact on your website's overall performance. Make sure you're using a top-rated cache plugin and that you're taking advantage of all it's features.

See Also: How I Got 100% Scores In GTmetirx

Watch My Video – it’s a 42 minute video, but I cover pretty much everything (timestamps in video description) and you should learn a ton of great information on WordPress site speed:

Did it work? Let me know in the comments.

Is your WordPress admin still slow? Send me your GTmetrix report and I’ll have a quick look.

Cheers,
Tom

The Ideal WP Rocket Settings With Cloudflare + CDN Instructions Which Got Me 1.2s GTmetrix Load Times (2020, Latest Version 3.6.1)

These are the same WP Rocket settings I used to get this GTmetrix report.

WP Rocket was rated #1 in numerous Facebook polls because it comes with more speed optimization features than any other cache plugin. That’s why it usually yields better results in GTmetrix, Pingdom, and PageSpeed Insights. It also means you don’t need to install a bunch of extra plugins (Heartbeat Control, plugins for hosting Google Fonts and Analytics locally, etc).

I will show you how to optimize fonts, the difference between CDNs (Cloudflare, RocketCDN, StackPath), configure Cloudflare settings and page rules, optimize third party requests using preload and prefetch, image optimization plugins, WebP images, and how to delete old plugin tables in your database which you can’t do with WP Rocket (we will use WP-Optimize for this).

I tried to make this tutorial as robust (and simple) as possible. But if you still need help configuring the WP Rocket settings, drop a comment with your questions or GTmetrix report.

  1. Dashboard
  2. Cache
  3. File Optimization
  4. Media
  5. Preload
  6. Advanced Rules
  7. Database
  8. CDN
  9. Heartbeat
  10. Add-Ons
  11. Cloudflare
  12. Image Optimization
  13. Tools

If you haven’t bought WP Rocket yet, I would appreciate you using my affiliate link. I also donate a good chunk of my affiliate income to charity. You can get 10% off by going to their Coupons Page, sign up for their email list, and they will send you a code.

 

1. Dashboard

Leave both options off unless you want to be a beta tester or let WP Rocket collect your data anonymously which results in a (very small) performance decrease. RocketCDN is covered in the CDN section, but you don’t need it if you’re using Cloudflare. You can clear the cache or regenerate critical CSS if you make design/plugin changes but they don’t appear on your site.

WP-Rocket-Dashboard-Settings

 

2. Cache

These are good cache settings as long as you don’t use a plugin for your mobile website and don’t allow multiple users to login to your site (eg. bbPress). I increased cache lifespan from 10 to 24 so the cache doesn’t have to refresh as often, which saves a little bit on server resources.

WP-Rocket-Cache-Settings

Mobile Cache – enables caching for mobile devices. Only enable “separate cache files for mobile devices” if you use a plugin for your mobile website (like the free version of WP Touch).

User Cache – leave disabled unless you have multiple users logging into your website (bbPress for example) where there is user-specific content. It gives each user their own cached version.

Cache Lifespan – a lower number means the cache will refresh more frequently, but it consumes more resources. A cache lifespan with a lower number means it won’t refresh as frequently, but saves resources. Do you care more about your cache building frequently or saving server resources? Since I only publish a couple posts a week, I increased it to 24 hours.

 

3. File Optimization

All HTML, CSS, and JavaScript settings should be enabled individually while testing your site for visible errors. These are the file optimization settings I use which gave me the best results in GTmetrix, but you should be testing your GTmetrix report to check the impact of each setting.

WP-Rocket-File-Optimization-Settings

Minify Files – enables minification of HTML, CSS, and JavaScript. Check your site for visible minification errors after enabling each one. If you see any, view your source code, find the problematic CSS or JavaScript files, and exclude them from being minified. That way, you still get the benefits on minification (just not for that file). Otherwise, they should all be enabled.

Combine Files – just like minify, enable and check your site for errors.

Optimize Google Fonts – this compresses fonts into 1 single file, ensures text remains visible while loading fonts, and preconnects fonts (tells browsers you intend to load Google Fonts). Remember to prefetch/preload fonts in the Preload tab and be minimal with fonts/weights.

Exclude CSS – if for some reason a minification option messes up your site layout, locate the problematic file and add it here. See WP Rocket’s article on resolving issues with minification.

Optimize CSS Delivery – your page will start loading without CSS styles which is a depreciated item in PageSpeed Insights. WP Rocket automatically generates this for you. WP Rocket says:

“By enabling these options you may see an improvement in your performance grade on GTmetrix, Pingdom Tools, and Google PageSpeed Insights. Results will vary from site to site. Always remember to test the effect on the speed of your site. “

JavaScript Files – same concept as CSS only with JavaScript files.

 

4. Media

Most sites should enable everything especially in the lazyload settings. If you use embedded YouTube videos on your site, replacing the YouTube iframe with a preview image can cut load times in half since videos are very heavy. You’ll also still need a plugin to create WebP images.

WP-Rocket-Media-Settings

Lazy Load – delays loading of images, iframes, and videos until you scroll down the page and they become visible. This significantly reduces initial load times and HTTP requests, but constantly loading images as you scroll can be annoying (test it out for yourself). Always lazy load videos and replace iframes with a preview image since embedded videos are very heavy.

Disable Emojis – emojis slow down your site. You can also disable them under Settings → Writing → Formatting, then do not convert emoticons.

Disable WordPress Embeds – similar to Cloudflare’s hotlink prevention, it prevents other sites from embedding your content on their site which sucks up bandwidth and stresses your server.

WebP Caching – enable if you’re using WebP images. If you’re not using WebP images already, you should since they load faster and look nicer than JPEG + PNG. Using WebP also fixes the serve images in next-gen format item in PageSpeed Insights. You will still need a plugin that converts images to WebP. I use WebP Converter For Media plugin but Imagify, ShortPixel, and most image optimization plugins have an option to convert images to WebP (TingPNG does not unfortunately). Finally, check your image files in the source code to make sure they use .webp.

 

5. Preload

Preloading is done automatically by WP Rocket when you activate it with your XML sitemap. Prefetching and preloading fonts are especially important for optimizing fonts and third party scripts which you can find in the Reduce DNS Lookups section of your GTmetrix YSlow report.

WP-Rocket-Preload-Settings

Prefetch DNS Requests – run your site through GTmetrix and look at the Reduce DNS Lookups section in your YSlow report. You will see all third party scripts loading on your site which can be anything from Google Fonts to Google Analytics, Maps, ASense, Tag Manager, YouTube, or even social media platforms if you embed social posts or use social share buttons on your blog.

WordPress External Scripts

Grab all those URLs from your report and paste them into the Prefetch DNS Requests section of WP Rocket. This will help browsers anticipate those external requests and load them faster.

Or use this list of common domains to prefetch as a reference:


//maps.googleapis.com
//maps.gstatic.com
//fonts.googleapis.com
//fonts.gstatic.com
//use.fontawesome.com
//ajax.googleapis.com
//apis.google.com
//google-analytics.com
//www.google-analytics.com
//ssl.google-analytics.com
//www.googletagmanager.com
//www.googletagservices.com
//googleads.g.doubleclick.net
//adservice.google.com
//pagead2.googlesyndication.com
//tpc.googlesyndication.com
//youtube.com
//i.ytimg.com
//player.vimeo.com
//api.pinterest.com
//assets.pinterest.com
//connect.facebook.net
//platform.twitter.com
//syndication.twitter.com
//platform.instagram.com
//referrer.disqus.com
//c.disquscdn.com
//cdnjs.cloudflare.com
//cdn.ampproject.org
//pixel.wp.com
//disqus.com
//s.gravatar.com
//0.gravatar.com
//2.gravatar.com
//1.gravatar.com
//sitename.disqus.com
//s7.addthis.com
//platform.linkedin.com
//w.sharethis.com
//s0.wp.com
//s1.wp.com
//s2.wp.com
//stats.wp.com
//ajax.microsoft.com
//ajax.aspnetcdn.com
//s3.amazonaws.com
//code.jquery.com
//stackpath.bootstrapcdn.com
//github.githubassets.com
//ad.doubleclick.net
//stats.g.doubleclick.net
//cm.g.doubleclick.net
//stats.buysellads.com
//s3.buysellads.com

Preload Fonts – copy your font files from GTmetrix Waterfall (they have a tab for font files) and paste them in WP Rocket’s preload fonts field. Retest your website and they should load faster.

Google-Fonts-Waterfall

 

6. Advanced Rules

Advanced Rules are mainly for eCommerce sites, however WP Rocket is already compatible with most solutions like WooCommerce and BigCommerce. But if you’re having issues with cart widgets, caching, or something related to eCommerce, they have documentation for that.

Otherwise, leave this blank.

WP-Rocket-Advanced-Rules

Never Cache URLs – if you’re using an eCommerce shopping cart that is not supported by WP Rocket, add your cart and checkout pages here which will exclude these pages from the cache.

Never Cache Cookies – same principle as previous option only based on cookies.

Never Cache User Agents – prevents Googlebot or other user agents from caching pages.

Always Purge URLs – let’s say you have a blogroll on your homepage. If you create a new post, you want that homepage blogroll updated immediately by emptying the homepage cache. That’s what this setting does, however WP Rocket automatically clears the cache for your homepage, categories and tags once new content is created… so there is usually no need for this. But if there are other page’s cache you want cleared when new content is posted, add it.

Cache Query Strings – mainly used to cache search result pages + price filters on eCommerce.

 

7. Database

Scheduling database cleanups keeps your site and admin fast, just know what you’re deleting!

WP-Rocket-Database-Settings

  • Revisions – old versions of your posts which are saved when you hit “Publish.”
  • Auto Drafts – automatically saved versions of your post if you don’t hit “Publish.”
  • Trashed Posts – posts and drafts you deleted.
  • Spam Comments – comments marked as spam.
  • Trashed Comments – comments marked as trash.
  • Expired Transients – transients that have expired and are still in your database.
  • All Transients – stores data that takes a long time to retrieve (eg. social counts on blogs).
  • Optimize Tables – optimizes database tables to run more efficiently.
  • Automatic Cleanup – how often you want WP Rocket to clean your database.

Delete Unused Plugin Tables (Not With WP Rocket) – one thing WP Rocket doesn’t do is let you go through your individual database tables and delete tables left behind by old plugins that aren’t installed anymore. I recommend installing WP-Optimize and going through your tables every so often, especially if you deleted plugins (plus it shows you the actual size of the tables). The tables that say “not installed” are the ones that were left behind by old, uninstalled plugins.

WP-Optimize-Tables

 

8. CDN

You should really just use Cloudflare’s free CDN, in which case you would change nameservers and don’t need to do anything in this tab (see the Cloudflare tab instead).

WP Rocket says you shouldn’t use RocketCDN on top of Cloudflare. And since WP Rocket uses StackPath’s data centers for RocketCDN (who only has around 32 data centers), you’re better off on Cloudflare who has 200 data centers and counting. More data centers = faster website.

WP Rocket’s CDN tab is only for setting up CDNs who use CDN URLs (StackPath, KeyCDN, BunnyCDN), it is not for Cloudflare (which requires changing nameservers and using the Cloudflare tab) or RocketCDN (requires signing up through WP Rocket).

That means there is nothing to do in WP Rocket’s CDN settings since CDN URLs don’t work with Cloudflare or RocketCDN (they’re specifically for StackPath, BunnyCDN, KeyCDN, etc).

Here’s the catch.

I’m using both Cloudflare and StackPath. Yeah, I’m going against advice not to use multiple CDNs, but it’s been working great and I’m offloading a ton of bandwidth to StackPath. While I don’t advise this and it’s not recommended by WP Rocket, it works for me. If you want to try this, sign up for StackPath, create a CDN site, then copy/paste your CDN URL into WP Rocket.

StackPath-Bandwidth-Savings

Grab your StackPath CDN URL:

StackPath-CDN-URL-WP-Rocket

Paste the CDN URL into WP Rocket:

WP-Rocket-CDN-Settings

Testing CDNs – since Cloudflare is set up differently and requires changing nameservers, the “content delivery network” in GTmetrix YSlow will be red (but will be green for other CDNs).  That doesn’t mean Cloudflare isn’t working; use the Claire Chrome Extension to make sure it is.

Exclude Files From CDN – lets you serve files locally instead of the CDN. Usually, these files come from plugins designed to disregard cross domain load. In most cases, there is no need.

Example:

  • {uploads_dir}/wpcf7_captcha/*
  • {uploads_dir}/imagerotator.swf
  • {plugins_dir}/wp-fb-autoconnect/facebook-platform/channel.html

 

9. Heartbeat

Instead of using the Heartbeat Control plugin, WP Rocket has it built-in.

The WordPress Heartbeat API tells you when other users are editing a page/post and shows you real-time plugin notifications. You usually want to disable Heartbeat completely, or at least reduce it, since it consumes resources and contributes to CPU overages (eg. on SiteGround).

WP-Rocket-Heartbeat-Settings

 

10. Add-Ons

If you’re using any of these services, activate it’s add-on.

WP-Rocket-Add-Ons

Google Tracking – fixes the “leverage browser caching” issue for Google Analytics in your GTmetrix report by hosting Google Analytics locally. If it’s still not 100%, use the Flying Analytics plugin. If you’re using Google Analytics, remember to optimize it in the Preload tab.

Facebook Pixel  – enable if using Facebook Pixel to host it locally. If you’re using Facebook Pixel, remember to optimize it in the Preload tab.

Cloudflare – enable if using Cloudflare.

Synchronize Sucuri Cache – enable if using Sucuri. This automatically clears Sucuri’s cache whenever you clear WP Rocket’s cache which helps keep your content synchronized. For the Sucuri Firewall API Key (For Plugin), login to Sucuri here, select your website, go to the API tab, then copy your API Key (For Plugin) and paste in WP Rocket when you expand the Sucuri field.

 

11. Cloudflare

As mentioned earlier, Cloudflare is the only CDN you need which offloads a ton of bandwidth.

Cloudflare-Bandwidth-Savings

Sign up for Cloudflare and you will come to a page where they assign you 2 nameservers.

Cloudflare-GoDaddy-Nameservers

Change nameservers in your domain registrar to the one’s Cloudflare gave you.

SiteGround-DNS-Records

Add your Cloudflare information to WP Rocket.

WP-Rocket-Cloudflare-Add-On

Global API Key and Zone ID are found in your Cloudflare dashboard.

Cloudflare Global API Key

  • Global API Key – found in your Cloudflare dashboard.
  • Account Email – same email you used to sign up for Cloudflare.
  • Zone ID – found in your Cloudflare dashboard.
  • Domain – your website’s domain name.
  • Development Mode – use when making a lot of code changes to your site.
  • Optimal Settings – activates optimal Cloudflare settings: minification, aggressive caching, and deactivates Rocket Loader for better compatibility. Most common issue is Rocket Loader, but I also noticed it turns on email decoding which made my GTmetrix report worse, so I don’t use this (and instead configured Cloudflare in their dashboard).
  • Relative Protocol – sometimes if people download files from your site, there are no contents in them. Leaving this option OFF will prevent this from happening.
  • Clear All Cloudflare Cache Files – do this after you’re done configuring WP Rocket.

Configure Cloudflare Settings In The Dashboard – a lot of people have been asking about Cloudflare’s dashboard and how to configure it. Here are the things I recommend you do.

Page Rule 1: Cache Everything And Force HTTPS – cache your website aggressively.

http://*yourwebsite.com/*

Always-Use-HTTPS-Page-Rule

Page Rule 2: Secure The WordPress Admin And Bypass Cache – sets security level of the admin to high and bypasses Cloudflare’s cache in the admin, since you don’t want CDNs (or apps + performance features like Rocket Loader) running inside the admin.

yourwebsite.com/wp-admin*

WordPress-Admin-Page-Rule

Page Rule 3: Decrease Bandwidth Of WP Uploads – since the content in your WP Uploads folder does not change frequently, increasing Edge Cache TTL to a month can save on bandwidth, since the WP Uploads folder cache won’t be refreshed as often.

yourwebsite.com/wp-content/uploads*

WP-Uploads-Page-Rule

As I mentioned, Cloudflare won’t fix “content delivery network” in GTmetrix YSlow because of the way it’s set up. Instead, use the Claire Chrome Extension to ensure Cloudflare is working.

 

12. Image Optimization

WP Rocket recommends Imagify because it’s their plugin.

But even when you select lossless compression, it’s definitely not lossless and neither is ShortPixel. I used both for many months and switched to TinyPNG which I’m very happy with. The only thing about TinyPNG is that it doesn’t support WebP in which case you will need a plugin like WebP Converter For Media. But I find the quality is much better than with Imagify.

WP-Rocket-Image-Optimization

 

13. Tools

Import and export your WP Rocket settings, or rollback to the previous version of WP Rocket.

WP-Rocket-Tools-Settings

Export Settings – export your settings to use on multiple sites.

Import Settings – import your pre-configured settings here.

Rollback – if you update to a new version of WP Rocket and it causes issues, this will fall back on the previous version.

 

WP Rocket = #1 Rated Cache Plugin

WP Rocket comes with many features most cache plugins don’t (see below). That means if you were to use other cache plugins, you would need to install about 6 extra plugins to get those features when WP Rocket already has them built-in (more features, yet less plugins on your site). That’s also why WP Rocket yields better results in GTmetrix/Pingdom and is what I use.

WP Rocket incorporates:

  • Database cleanup (built-in to WP Rocket, or use WP-Optimize)
  • Heartbeat control (built-in to WP Rocket, or use Heartbeat Control)
  • Lazy load images/videos (built-in to WP Rocket, or use WP YouTube Lyte)
  • Host Google Analytics locally (built-in to WP Rocket, or use CAOS For Analytics)
  • Host Google Fonts locally (built-in to WP Rocket, or use CAOS For Fonts)
  • Integration with Cloudflare + other CDNs (built-in to WP Rocket, or use CDN Enabler)

I tested WP Rocket against 3 top free cache plugins and while they all do a great job, WP Rocket gave me the best results in Pingdom (.4s load times). Your cache plugin and hosting are 2 main speed factors so it’s definitely worth the $49. Configuring the right WP Rocket settings with Cloudflare + StackPath can fix over 20 items in Pingdom and GTmetrix. So let’s do that :)

The WP Rocket settings are WAY easier to configure than W3 Total Cache and they update the changelog regularly so you’ll actually get ongoing updates. If you have questions (or want to share your new load time), drop me a comment. WP Rocket also has documentation which I reference throughout the guide. Good luck – remember to benchmark those Pingdom scores!

Here are the Facebook polls:

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

I tested WP Rocket, WP Fastest Cache, and W3 Total Cache… making sure all cache plugin settings were configured optimally. WP Rocket won BUT this with the lazy load feature turned ON. The other cache plugins do not have a lazy load option and when I turned lazy load off in WP Rocket, I got a .5s load time… the exact same as WP Fastest Cache. I didn’t see a huge difference when clicking through my pages – both loaded super quickly. I know Pingdom can show different load times during different tests, but I just wanted to share my own experience.

WP Rocket (.406)
Pingdom Page Speed Test

WP Fastest Cache (.527)
WP Fastest Cache Load Times

W3 Total Cache (.619)
W3 Total Cache Load Times

 

Recommended Host: Cloudways

In case you were wondering what hosting I use, it’s Cloudways DigitalOcean.

SiteGround-vs-Cloudways

Join the WordPress Hosting FB Group to see what real, unbiased people are saying. Look at Facebook polls and tweets of people who migrated and posted their server response times.

I signed up for 15+ different hosting plans and tested them with the identical website:

DigitalOcean On Cloudwayscwdoserver.com had the fastest load times, is who I use, and are very popular in Facebook Groups (especially as a SiteGround alternative). Cloudways does monthly pricing starting at $10/month with no high renewal prices or strict CPU limits like SiteGround. Their stack is very fast: PHP 7.4, Maria DB 10.3, Memcached, Varnish, Nginx, and Redis. Only complaint is their email hosting costs $1/month (you will need a Rackspace account). Their community manager is helpful and they do free migrations. Get 25% off your first 2 months with the code OMM25.

Kinstaknstaserver.com has similar speeds as DigitalOcean on Cloudways only they are more expensive starting at $30/month. Known for being capable of handling many concurrent visitors. People consistently recommend Kinsta in Facebook Groups, Twitter, and in migration results. Even though they’re not always #1 in Facebook polls (likely because not everyone can pay $30+/month), they are great for high traffic sites.

WPX Hostingwpxserver.com is also very quick, but Cloudways and Kinsta are slightly faster. Starts at $20-$25/month and is who Matthew Woodward recommends.

A2 Hostingatwoserver.com usually outperforms other shared hosting, but it’s not nearly as fast as cloud hosting (just cheaper). I use them for my girlfriend’s restaurant website and it’s decently fast with good uptimes. A2 (and all shared hosting) is only sufficient for smaller sites with lower traffic and plugins. Check this Facebook poll.

SiteGround – have gone downhill in my opinion and are no longer my recommended host. Load times and TTFB on stgrndserver.com were usually above 1s. Many complaints about their renewal prices, price hikes, CPU limits, and support isn’t as good as it used to be. SiteGround shifted to Google Cloud hosting (instead of shared) which is supposed to be faster, but they didn’t perform well. Their SG Optimizer plugin will help, but I still wouldn’t use them. You will be much better off on CW DigitalOcean.

Affiliate Disclaimer – I would seriously appreciate you using my affiliate links which means I earn a commission at no expense to you. This would help me make GoFundMe donations ($6,000 so far)! I try to base my recommendations on tests, Facebook polls, and conversations I see on a daily basis in the 30+ WP Facebook Groups I’m active on.

I would personally skip shared hosting since cloud hosting is exponentially faster. This is especially true if you’re on GoDaddy or EIG brands (eg. Bluehost and HostGator) and for resource-intensive websites running WooCommerce, WPML, page builders, or slow plugins.

There are plenty of migration results if you check Twitter and Facebook Groups. Avoid the bloggers promoting Bluehost and WP Engine because they have the highest commissions and do your research. Hosting is the #1 factor in WordPress’ optimization guide – very important!

Cloudways Response Times

Godaddy to DigitalOcean Migration

VPS Cloud Hosting WooCommerce Poll

Hosting Recommendations Facebook

2017-WordPress-Hosting-FB-Poll

2018 Hosting Recommendations

Favorite Hosting For Elementor

Untitled

Vultr Migration

WordPress Hosting Suggestions

VPS Cloud Hosting Poll

2016-WordPress-Hosting-FB-Poll

July 2019 Hosting Recommendation

Elementor Hosting Recommendations

 

View My Full WordPress Speed Guide

Here’s my full WordPress speed guide, or watch my video. It’s a 42 minute video but I cover pretty much everything (timestamps in video description) and you will learn lots of good stuff.

 

FAQs / Documentation

I spent many hours digging through their documentation to make sure this tutorial uses the best WP Rocket settings, but they are still extremely helpful if you haven’t checked them out.

wp rocket documentation

There are also video tutorials in the Tutorials tab to help configure your WP Rocket settings.

wp rocket video tutorials

Tutorials I found the most helpful:

🚀 What's the best way to configure WP Rocket?

The most important steps are to enable everything you can in the file optimization tab, set up CDNs like Cloudflare + StackPath, disable WordPress heartbeat, and activate any services you're using in the Add-Ons tab.

🚀 How do I add a CDN with WP Rocket?

If using Cloudflare, you will simply change nameservers. If using an external CDN like StackPath or KeyCDN, you will copy/paste your CDN URL into WP Rocket. If using RocketCDN (powered by StackPath), sign up through the prompt in WP Rocket.

🚀 Why was WP Rocket rated #1 in most Facebook polls?

It comes with many features other cache plugins don't have: database cleanup, heartbeat control, option for multiple CDNs, lazy loading, local Analytics, Facebook Pixel browser caching, and more. That's why WP Rocket usually yields the best results in GTmetrix.

🚀 Which image optimization plugin works best with WP Rocket?

Even though they recommend Imagify which is owned by WP Rocket, I use ShortPixel because I see virtually no quality loss and still get 100% for Optimize Images in GTmetrix.

🚀 What other speed optimization plugins do you need besides WP Rocket?

You still need an image optimization plugin like ShortPixel, font optimization (eg. OMGF), and I also recommend using Asset CleanUp or Perfmatters to selectively disable plugins.

 

Get Help From My WordPress Speed Optimizer

Still need help with your GTmetrix report?

I’ve been working with Pronaya for 7 years (he’s the one who optimized my GTmetrix report). You can hire him by signing up for freelancer.com and searching for username bdkamol. Here is his full WordPress speed portfolio. He’s $40/hour from Bangladesh (so there is a time change) and you can email him at bdkamol@gmail.com. He also has a perfect 5 star review on his Freelancer profile. Serious inquiries only, and please don’t expect 100% scores if you’re using slow hosting, a bloated theme, and tons of heavy plugins. Please follow my speed guides first.

Pronaya-Kumar-S-Reviews

Here are some reviews on his profile:

BDkamol-WordPress-Speed-Reviews

So… how are those GTmetrix scores looking? Let me know in the comments!

See Also: How I Got 100% Scores In GTmetrix

If you found this tutorial helpful, a share is always appreciated :)

Cheers,
Tom

How To Optimize Images In WordPress (For Both Speed + SEO)

When it comes to image optimization, you’ve probably heard enough about alt text.

There are actually 20 different ways to optimize images (if you include both SEO and speed optimization). These will give you better scores in GTmetrix/Pingdom, potentially rank you higher in search, and make your content load much faster. I’ve managed to get a 100% GTmetrix report with .5s load times… optimizing my images in WordPress was a big part of it.

Optimize images BEFORE uploading – using a program like Photoshop to optimize images before uploading them can save lots of work. You can resize, compress, strip EXIF data, save in correct format (eg. PNG/JPEG), and write a descriptive file name (which will automatically be used as the alt text if using the Automatic Image Alt Attributes plugin). That’s 6 optimizations!

If you require high resolution images (eg. a photography website), you may not want to resize and compress them (step 3 and 8) since these can reduce quality, even if it’s by a small amount.

Main tools I use – I use GIMP to resize/compress images (my image editor of choice), WP Rocket for my cache plugin, Imagify for further lossless compression + removing EXIF data, both Cloudflare and StackPath CDN, Automatic Image ALT Attributes plugin to automatically use the image file name as alt text, and Optimum Gravatar Cache to cache Gravatars in comments. I use WP Review Pro as my rich snippets plugin, Better Search Replace to bulk update images (very handy), and GTmetrix as my speed testing tool. See the full list of tools.

Table Of Contents

  1. Find Unoptimized Images
  2. Serve Scaled Images
  3. Specify Image Dimensions
  4. Losslessly Compress Images
  5. Combine Images Into CSS Sprites
  6. Avoid Image URL Redirects
  7. Serve Images From A CDN
  8. Cache Images
  9. Make Favicon Small And Cacheable
  10. Remove EXIF data
  11. Cloudflare Image Optimization
  12. Lazy Load Images
  13. Save As Correct Format
  14. Image File Names
  15. Alt Text
  16. Open Graph (Facebook + Twitter)
  17. Images In Featured Snippets
  18. Structured Data
  19. Style Images
  20. Resize GIFs
  21. Cache Gravatars
  22. Avoid Embedding Images From External Websites
  23. Image Optimization Tools

 

1. Find Unoptimized Images

Run your site through GTmetrix and you’ll see these items in the Page Speed/YSlow tabs. The first five are usually page-specific, meaning GTmetrix will only show the unoptimized images for the single page you test. The last 3 usually occur on your entire site. Of course, these are only 7 ways to optimize images, but some of the most important, so we’ll be doing these first.

  • Serve scaled images: resize large images to correct dimensions (step 2)
  • Specify image dimensions: specify a width/height in the image’s HTML or CSS (step 3)
  • Optimize images – losslessly compress images (step 4)
  • Combing images using CSS sprites – combine multiple images into 1 image (step 5)
  • Avoid URL redirects – don’t serve images from wrong www or http(s) version (step 6)
  • Use a content delivery network – serve images/files from a CDN (step 7)
  • Leverage browser caching –  cache images/files using your cache plugin (step 8)
  • Make favicon small and cacheable – use a 16x16px favicon and cache it (step 9)

Image Optimizations In GTmetrix

Start by fixing images that appear on multiple pages: logo, sidebar/footer images, etc. Also start with serve scaled images as you may have to resize/reupload them with new dimensions.

 

2. Serve Scaled Images

If you see serve scaled images errors in GTmetrix, it means you have oversized images and need to resize them to the correct dimensions (which GTmetrix provides you with). As long as you follow your image dimensions cheat sheet (see below), you shouldn’t see these errors. But if you already uploaded oversized images, you’ll need to resize them manually, or use a plugin.

Serve-Scaled-Images

Bulk Resize Images Using A Plugin – the problem with this, is that different images call for different dimensions (widgets, sliders, fullwidth images). While most image optimization plugins have an option to resize images to one single specific set of dimensions, you should really crop/resize them before uploading. If you do resize images using a plugin, keeps backups of the original images (and only test a few out) in case you’re not happy with the results.

Resize Large Images

Resize Images Manually – get the correct dimensions from GTmetrix and resize/reupload them. Remember, GTmetrix only shows unoptimized images for the single page you test.

Create A Cheat Sheet Of Your Website’s Image Dimensions
Your sliders, blog sidebar, featured images, and blog content body all call for specific dimensions which images should be resized to. Create a cheat sheet so you can resize them before uploading them to WordPress. This is especially helpful if you have many areas of your website requiring different images sizes, and if you have multiple designers/editors.

Example:

  • Slider images: 1900(w) x 400(h)
  • Carousel images: 115(h)
  • Widget images: 414(w)
  • Fullwidth blog post images: 680(w)
  • Featured images: 250(w) x 250(h)
  • Yoast Facebook OG image: 1200(w) x 628(h) – step 11
  • Yoast Twitter OG image 1024(w) x 512(h) – step 11

680 Pixel Width Rectangle

 

3. Specify Image Dimensions

This means adding a width/height to the image’s HTML or CSS. The Visual Editor does this for you (but widgets, some page builders, and custom HTML do not). Test a few pages in GTmetrix.

GTmetrix tells you the image’s dimensions…

Speciy Image Dimensions GTmetrix

Add the width/height to the image’s HTML…

Specify Image Dimensions

 

4. Losslessly Compress Images

These are “optimize images” items in GTmetrix. Many programs (eg. Photoshop and Gimp) have the option to compress when exported. While this is a great start, image compression plugins usually get even better results. I prefer Imagify, Kraken, ShortPixel, or Smush. Other plugins are known to visually reduce image quality and may cause errors with your images.

Compressing Images With Imagify

  1. Sign up for Imagify
  2. Install the Imagify Plugin
  3. You will be prompted with the instructions below:
  4. Enter your API key from your Imagify account
  5. Set your compression level (normal, aggressive, ultra)
  6. Imagif’em all (photo below) with bulk optimizes all images on your site
  7. Once you’ve reached your limit, pay $4.99 or wait next month to reset your limit

imagify

Test how images look with different levels of compression…

Imagify Compression Comparison

Once signed up, bulk optimize all images on your site…

imagify-wordpress-image-optimization

Set the option to optimize images on upload…

Imagify Optimize Images On Upload

 

5. Combine Images Into CSS Sprites

On my homepage, you may think you see 21 icons, but they’re actually 1 single image. This is a CSS sprite, where you combine multiple images into 1 single image. This reduces the number of images (and requests) which is why my homepage only has 10 requests. Instead of loading 21 images, it loads 1. You will need CSS knowledge to do this, or use a CSS sprite generator.

CSS Sprites

GTmetrix CSS Sprites

Only Use CSS Sprites For Decorative Images – you lose a lot of image alt tags when you combine 21 images into 1. Do NOT combine important images into CSS sprites if they describe your content. As for me, the speed of my homepage is more important than it’s SEO… I use my homepage’s GTmetrix report in a lot of places (so I have to keep it clean) and my homepage, believe it or not, doesn’t target a keyword. It’s purpose is to outline my tutorials… and load fast.

 

6. Avoid Image URL Redirects

If you changed to HTTPS, www versions, or started serving images from a CDN, you should bulk update all your images (and links) using Better Search Replace so they are serving the correct version. Otherwise you may see minimize redirects or use cookie-free domains errors.

Minimize Redirects

Cookie Free Domains

Use the Better Search Replace plugin to bulk update image URLs…

Better Search Replace WWW Versions

Better Search Replace HTTP vs. HTTPS

 

7. Serve Images From A CDN

This requires changing image URLs to include your CDN URL

  • Old Image URL (Without CDN)https://onlinemediamasters.com/wp-content/uploads/2017/02/Tom-Dupuis-Widget.png
  • New Image URL (With CDN)https://t9w8m8j8.stackpathcdn.com/wp-content/uploads/2017/02/Tom-Dupuis-Widget.png

Cloudflare vs. StackPath – I use both Cloudflare and StackPath since more data centers = faster content delivery. Cloudflare has 200+ data centers, StackPath has 34+ data centers which are heavily located in the United States (which is where most my visitors are from). Cloudflare does not assign you a CDN URL so we’ll use StackPath’s CDN to serve images.

StackPath-Data-Centers

Step 1: Choose a CDN. I use StackPath (they have a 30-day trial).

Step 2: In the dashboard, click the CDN tab, then create a StackPath CDN Site

StackPath-CDN-Tab

StackPath-CDN-Domain

CDN-URL-StackPath

Step 3: Copy your CDN URL and paste it into your cache plugin (below is for WP Rocket)…

WP-Rocket-CDN

Step 4: Replace image URLs to include your CDN URL (using Better Search Replace).

Better Search Replace CDN URL

Step 5: Check for old image URLs using Chrome DevTools. Sometimes, your cache plugin or CDN Enabler takes care of this, except links in CSS and JavaScript which are hard-coded. For the links which are left behind, they are normally in files (such as CSS or Javascript) that need manual checking and replacing. Chrome DevTools shows you all domains currently being used.

Step 6: Run your site in GTmetrix and “content delivery network” should be green in YSlow. You shouldn’t have any errors in “minimize redirects” or “use cookie-free domains” either.

CDN GTmetrix YSlow

 

8. Cache Images

Most cache plugins have an option for browser caching, which caches images. I use WP Rocket which was rated the #1 cache plugin in multiple Facebook polls, and I have tutorial for that. Swift Performance is generally ranked the #1 free cache plugin (I have a tutorial for that too).

Browser Caching

 

9. Make Favicon Small And Cacheable

Ensure your favicon is 16x16px, is favicon.ico format, and is cached using your cache plugin.

 

10. Remove EXIF data

Exif data contains information such as aperture, shutter speed, ISO, focal length, camera model, date the photo was taken, and more. You don’t need this for images on your website. The VA Removing Exif plugin removes Exif data automatically once images are uploaded.

Most image optimization plugins (including Imagify, ShortPixel, Kraken, EWWW, and Smush) have an option to remove EXIF data automatically. Here is the settings for Imagify…

Imagify Remove EXIF Data

 

11. Cloudflare Image Optimization

Cloudflare also has a few ways to optimize images. Mirage and Polish are found in your Cloudflare speed settings while Hotlink Protection is found in your Scrape Shield settings.

Cloudflare Mirage (Pro Feature) – reduces image requests, lazy loads images, and improves image load times on mobile devices with slow network connections. Here are more details…

  • Resizes images based on a visitor’s device/connection. A visitor on a poor connection will get a smaller version (lower resolution) until they are back on a higher bandwidth.
  • Reduces amount of requests – instead of sending multiple requests for all images on the website, Mirage pulls this into one request so visitors can see images immediately.
  • Lazy loads images (only loads them once users scroll down and actually see the image).

Cloudflare Image Mirage

Cloudflare Polish (Pro Feature) – strips EXIF data and compresses images.

Cloudflare Image Polish

Cloudflare Hotlink Protection – prevents people from copying your images and pasting them on their own website, which (since you’re still hosting that image) will suck up your bandwidth.

Cloudflare Hotlink Protection

 

12. Lazy Load Images

This delays the loading of images until users scroll down the page and visibly see the image. While it improves initial load times, constantly loading images as you scroll can be very annoying. I personally only lazy load videos, since those take much long to load than images.

You can use the Lazy Load plugin, Lazy Load For Videos plugin, or use WP Rocket…

WP-Rocket-Lazy-Load

 

13. Save As Correct Format

PNG vs. JPEG – PNG is uncompressed (larger file size) and should be used in simple images without lots of colors. JPEG is a compressed (smaller file size) which slightly reduces image quality but is smaller in size, and is used in images with lots of colors. GIMP and other image editing programs should use the correct format automatically, but this is still good to know.

jpg_vs_png

Illustration by Labnol
 

14. Image File Names

Search engines use both alt text and image file names, so name your files before uploading them to WordPress. If you’re using a plugin that adds alt text automatically based on the file name, naming your files is all you need to do! Do not stuff keywords, just describe the image.

Label Image File Names

 

15. Alt Text

These should be the same as your image file name. You can use the Automatic Image Alt Attributes plugin to automatically use the file name as the alt text. As long as you’re using relevant images, some of them should naturally include (bits) of your keyword… there is absolutely no reason to stuff keywords in images, which risks a keyword stuffing penalty.

Add Alt Text To Images Automatically – use the Automatic Image Alt Attributes plugin. Now whenever you add an image, the plugin will add alt text which is the same as the file name…

<img src="https://website.com/wp-content/uploads/2016/08/WP-Fastest-Cache-Plugin.jpg" alt="WP-Fastest-Cache-Plugin" width="577" height="247" />

Find Missing Alt Text – Screaming Frog is a free tool that shows you all images missing alt text.

  • Download Screaming Frog SEO Spider
  • Enter your website and click “Start” to crawl the website
  • Click the images tab
  • Go to Overview → Missing Alt Text (see below)
  • Locate those images on your site and add alt text

Missing Image Alt Text – Screaming Frog

 

16. Open Graph (Facebook + Twitter)

This makes your content format properly when shared on Facebook/Twitter, specifically your image since both networks use custom dimensions to display it, otherwise it will look funny.

facebook-share

If using Yoast, go to the “Social” settings and enable Open Graph for both Facebook/Twitter…

Yoast-Social-Meta-Data

Now edit a page/post, then click the “share” link in Yoast and you will see options to upload custom images for Facebook (1200 width x 628 height) and Twitter (1024 width x 512 height).

yoast-social-media-optimization

 

Featured snippets are when Google shows bits of your content at the top of search results and can (but are not guaranteed) to include an image. Google will pull these from any 1st page result, however it’s up to them whether they will even display a featured snippet or image. These also make your snippet show up twice and are an incredible way to get lots of traffic.

3 Types Of Featured Snippets

  • Answers
  • Tables
  • Lists

Featured-Image-Snippets

How To Get Featured Snippets In Google

  • Target a keyword where people want a concise answer
  • Use Moz Keyword Explorer to identify question keywords
  • Use Answer The Public to find even more question keywords
  • Choose whether the answer should be a paragraph, list, or table
  • Design a nice graphic (or take a photo) describing the keyword
  • Use optimal character length (see photo below taken from Moz)
  • Create fact-based content with quality references (links, graphics, etc)
  • Target keywords that already have an featured snippet but do a poor job
  • If you’re aiming for the answer box, target your keyword using an exact match
  • Make sure you’re on the 1st page for the keyword, if not, improve the content

Optimial Featured Snippets Length

 

18. Structured Data

Images can be used in structured data (and badges) for the following content types:

Video Rich Snippet

Recipe-Rich-Snippets

Product Rich Snippet

What Rich Snippets Plugin Should I Use?
I use MyThemeShop’s WP Review Pro (here’s a page I use it on) which supports 14 data types including recipes and product reviews. I used to use WP Rich Snippets but the developer abandoned the plugin and it hasn’t been updated for 2+ years, and the All In One Schema plugin is just boring (it has a lack of options and styling). WP Review Pro is very easy to use.

 

19. Style Images

Don’t forget to style your images! I use borders on most of mine.

  • Image Titles
  • Image Links
  • Image Borders
  • Image Captions

 

20. Resize GIFs

Just like you resize images to the correct dimensions, GIFs should be resized too (use GIF GIF).

Resize the GIF…

Resizing GIFs

Then compress it…

Compress GIFs

The result :-)

Optimize Dog GIF

 

21. Cache Gravatars

If you have posts with lots of comments, Gravatars can completely ruin your report. You can disable them, break comments to only show a certain number of comments, or try a Gravatar cache plugin. You may need to do a bit of testing as some plugins don’t work on some websites.

  • Cache Gravatars (Optimum, Harry’s, or FV Gravatar Cache)
  • Disable Gravatars completely
  • Set your default Gravatar to blank
  • Delete comments that don’t add value
  • Set your default Gravatar to a custom image on your server
  • Restrict your Gravatar images to smaller dimensions (e.g. 32px)
  • Paginate comments in WP Disable to only show 20 comments at a time
  • If none of these work, check out WP Rocket’s caching Gravatars tutorial

Cache-Gravatar-Images

 

22. Avoid Embedding Images From External Websites

Always upload images to your website, never copy/paste them. Otherwise you end up with extra requests as the image isn’t hosted on your server so it has to pull it from somewhere else.

 

23. Image Optimization Tools

Avoid using plugins with duplicate functionality – Imagify, ShortPixel, Kraken, EWWW, and Smush all basically do the same thing (lossless compression, EXIF data removal, resize images). WP Rocket has options for lazy load, caching, and CDN (and database cleanup + hosting Google Analytics locally) which most cache plugins do not, saving you from using extra plugins.

 

Frequently Asked Questions

✅ How do you fix Optimize Image errors in GTmetrix?

By losslessly compressing them using a plugin like ShortPixel, Imagify, or Smush. I use ShortPixel because it always fixes this error in GTmetrix.

✅ How do you fix Serve Scaled Image errors in GTmetrix?

This means you need to crop/resize images to the correct dimensions. If images are too large, GTmetrix will show serve scaled image errors and tell you the correct dimensions they should be resized to.

✅ How do you fix Specify Image Dimension errors in GTmetrix?

View the image's HTML and check to make sure it has a specified width and height, as shown in this tutorial.

✅ Any other ways to make images load faster?

Removing EXIF data and using a CDN to serve your images will make the most difference outside the recommendations in GTmetrix.

✅ Which image optimization is best?

I use ShortPixel because there is virtually zero loss in quality and it fixes the Optimize Images item in GTmetrix.

 

What Do You Think?
Does your GTmetrix report look a little better? Let me know in the comments! And if you want more tips that will get you even better scores/load times, see my full WordPress speed guide.

New-GTmetrix-Report

See Also: How I Got 100% GTmetrix Scores

Cheers,
Tom

The Ideal Swift Performance Settings With Cloudflare + StackPath CDN Setup Instructions (With Facebook Polls) – 2019, Version 2.0.5

Swift Performance is the new cache plugin on the block, which has been getting raving reviews in the WordPress Speed Up Facebook Group.

I’ve been using WP Rocket and already had 100% GTmetrix scores with a 1s load time (hard to beat), but Swift gave me near identical results. I stuck with WP Rocket, but I would rate Swift Performance Lite the #1 free cache plugin ahead of WP Fastest Cache, WP Super Cache, W3 Total Cache, and the others. The Swift Performance settings are relatively easy to setup (I’ll walk you through everything). The Pro Version includes an image optimizer (for lossless compression + automatic image resizing), critical fonts, compute API, and support for their plugin. Cool part is, they have an option to pay monthly so you can try it for only $3.99/month.

Swift vs. WP Rocket – these are usually the top cache plugins in recent Facebook polls…

Swift-Performance-vs.-WP-Rocket-Poll

Swift-Performance-vs.-WP-Rocket

2018-WordPress-Cache-Plugin-Poll

Swift

  • Free (lite) version = amazing results
  • Mediocre documentation
  • Free version includes plugin organizer
  • Pro version includes critical fonts
  • Pro version includes image optimizer
  • Free

WP Rocket

  • Easier to configure
  • Better documentation
  • Facebook Pixel + Sucuri add-ons
  • No plugin organizer
  • No image optimizer
  • $49/year

Both Swift and WP Rocket support Cloudflare, CDN, heartbeat control, preloading, lazy loading photos/iframes, hosting Google Analytics locally, minification, script merging, gzip compression, and other features. They are actually very similar as far as their features go.

 

1. Wizard

The Wizard analyzes your site and helps configure basic Swift Performance settings. The out-of-the-box settings work great, but there are still more ways to optimize when you’re done…

Things You Still Need To Do

  • Tweaks → Cache Gravatars
  • Hearbeat → Disable All
  • Google Analytics → Bypass Google Analytics
  • Styles → Generate Critical CSS
  • Caching → General → Separate Mobile Device Cache (if using AMP or mobile theme)
  • Varnish → Custom Host
  • CDN → StackPath CDN
  • CDN → Sign up for Cloudflare and change name servers
  • Optimize Images (using Swift Pro or Imagify/Imsanity)
  • Database Optimizer → clean database
  • Plugin Organizer → enable/disable plugins on specific content

Swift-Performance-Lite-Setup-Wizard-Analyze-Your-Site

Swift-Performance-Lite-Setup-Wizard-Caching-Method

Swift-Performance-Lite-Setup-Wizard-Optimization

Swift-Performance-Lite-Setup-Wizard-Medi

Swift-Performance-Setup-Wizard-Finish

 

2. Dashboard

The dashboard shows stats, like how many known pages Swift detected vs. how many are actually cached. Swift also assigns each URL a prebuild priority and the date eache page was last cached. In the Warmup table, you can also manually add URLs if Swift didn’t detected it.

Swift-Performance-Dashboard

 

3. Settings

The general, media, optimization, caching, and CDN tabs are broken down into sections:

 

3.1. General

General

  • Disable Cookies – for GDPR when asking users to agree to cookies.
  • Hide Footprints – hide swift comments in the source code.
  • Use Compute API – speeds up merge settings and decreases CPU usage.
  • Enable Remote Cron – Swift’s API server will call wp-cron.php and run WP cronjobs as real cronjobs.
  • Debug Log – see warnings/errors shown in the log path (eg. public HTML folder).

Swift-Performance-General-Settings

Tweaks

  • Normalize Static Resources – attempts to remove query strings, however these are usually generated by slow plugins. The main way to get rid of them is to deactivate high CPU plugins (found in GTmetrix Waterfall) and replace them with lightweight plugins.
  • Prefetch DNS – anticipates external resources (eg. Google Fonts + YouTube videos).
  • Collect domains from scripts – helps with prefetching DNS.
  • Exclude DNS Prefetch – exclude domains you don’t want to be prefetched.
  • Gravatar Cache – caching Gravatars usually isn’t enough, you also want to offload them to a CDN and load Gravatars locally as explained in WP Rocket’s Gravatar tutorial. This improves load times for posts with lots of comments, as some of my posts have 300+ comments where Gravatars have suck up over 50% of load times.
  • Gravatar Cache Expiry – time Gravatar cache will expire (3600 is fine for most sites) but you can increase this if you notice it’s consuming too much CPU. If too high, users will never see the cached version. If too low, it can consume too much CPU.
  • Custom Htaccess – setup redirects or use it for other things.

Swift-Performance-Tweaks-Settings

Heartbeat
Speeds up WordPress admin and reduces CPU by disabling the Heartbeat API. This notifies users when content is being edited and allows plugins to send real-time notifications (adding requests). Disabling it saves CPU (WP Disable + Heartbeat Control plugin do the same thing).

Swift-Performance-Heartbeat-Settings

Google Analytics
Bypassing Google Analytics can fix items in GTmetrix/Pingdom related to Google Analytics. CAOS, WP Disable, and WP Rocket’s Google Tracking add-on also help fix items related to GA.

Leverage-Brower-Caching-Google-Analytics

Swift-Performance-Google-Analytics-Settings

 

3.2. Media

Images

  • Optimize Images on Upload – losslessly compress images which fixes “optimize images” in GTmetrix (only for the page you test). Imagify does this too and is what I use.
  • JPEG quality – keep at 100% to avoid lossy compression.
  • PNG quality – keep at 100% to avoid lossy compression.
  • Resize Large Images – resizes large imager to correct dimensions (many people upload oversized images). This fixes “serve scaled images” in GTmetrix. Imsanity does this too.
  • Keep Original Images – when Swift resizes large images, it will keep the original in case the new image isn’t the size you want it, so at least you have a backup of each image.
  • Inline Small Images – small external images are written directly into the HTML document, so the browser does not request those image files independently.
  • Lazyload – only loads images once you scroll down the page and actually see them. While this improves initial load times, it also means users constantly see images loading as they scroll down, which can be annoying. That’s why I only lazy load videos + iframes.
  • Force Responsive Images – uses the srcset attribute to provide several image sources for browsers so they can pick the right one.

Swift-Performance-Images-Settings

Embeds

  • Lazy Load Iframes – only loads iframes once you scroll down and see them.
  • Exclude Iframes – exclude certain iframes from being lazy loaded.
  • Load Iframes on User Interaction – only loads iframes when users interact with it (using the mouse move, roll, or touchstart).

Swift-Performance-Embeds-Settings

 

3.3. Optimization

General

  • Merge Assets for Logged in Users – disable, as it doesn’t improve load times and will likely do more harm than good, plus most optimizations should be on front-end.
  • Optimize Prebuild Only – disable unless you want to control when cache is built.
  • Optimize in Background – Swift will optimize pages in the background.
  • Fix Invalid HTML – some plugins/themes use invalid HTML, Swift will try to fix this.
  • Minify HTML – fixes multiple items in GTmetrix/Pingdom. Cloudflare takes care of this too, so you should only have 1 enabled (Swift or Cloudflare).
  • Disable Emojis – emojis add requests and hurt load times.
  • Limit Simultaneous Threads – speed of cache rebuild (lower if having CPU issues).
  • Maximum Threads – lower numbers = less CPU usage (2 is good).
  • DOM Parser Max Buffer – Swift developer set this numbers for a reason.

Swift-Performance-General-Optimization-Settings

Scripts
Merging/minifying JavaScript is notorious for causing errors, but I would test these and check your load times. If you see errors, find the problematic files and add them to ‘Exclude Scripts.’

  • Merge Scripts – many people say disable it, but I would test it.
  • Async Execute – JavaScript will theoretically load as 1 request and will be executed while the script is still loading, but it can also break things, so test option carefully.
  • Exclude 3rd Party Scripts – enable if using Merge Scripts, disable if you’re not.
  • Exclude Scripts – exclude problematic files if minifying JavaScript results in errors.
  • Exclude Inline Scripts – exclude problematic files if Merge Scripts results in errors.
  • Exclude Script Localizations – Swift developer recommends enabling it, otherwise you may have separate JavaScript files for all your pages.
  • Minify Javascripts – enable and check your site. If you see errors, exclude problematic files under Exclude Scripts (Cloudflare also does this, so only enable one).
  • Minify with API – enable only if default Minify JavaScripts option results in errors.
  • Proxy 3rd Party Assets – Swift says it can fix browser cache issues in GTmetrix related to GA, but can break scripts. Bypassing Google Analytics is a better option. Test it out.
  • Separate Scripts – saves merged JS files for pages separately. Generally this consume more CPU than it does good.
  • Print merged scripts inline – only enable if using memcached and WordPress can’t write your files.
  • Lazy Load Scripts – lazy loads external resources which can improve load times.
  • Include Scripts – include certain scripts not detected by Swift.

Swift-Performance-Scripts-Settings

Styles
CSS optimization can also cause errors, but can greatly improve scores/load times. Play with the settings and check a few pages to make sure everything is OK. If merging stylesheets and minifying CSS cause errors, locate/exclude problematic files (same things with JavaScript).

  • Merge Styles – recommended by Swift developer and fixes items in GTmetrix/Pingdom.
  • Generate Critical CSS – CSS will be loaded asynchronously, however the developer says this can increase CPU.
  • Print full CSS inline – developer says you shouldn’t need this.
  • Separate Styles – disable unless you have pages with different content types (eg. some use Visual Editor, some use Page Builders, etc) and need Swift to generate a different merged CSS for each page. May improve scores, but can increase CPU. Test carefully.
  • Minify CSS – enable, but this can cause issues so test your site (Cloudflare also does this, so only use one). If you see errors, exclude problematic files under Exclude Files.
  • Bypass CSS Import – enable (this merges imported CSS files as well).
  • Exclude 3rd Party CSS – if Merge Scripts is giving you problems, try this.
  • Exclude Styles – exclude problematic files if minifying CSS results in errors.
  • Include Styles – manually include styles if you’re not using Merge Scripts.

Swift-Performance-Styles-Settings

 

3.4. Caching

General

  • Enable Caching – enable.
  • Caching Mode – disk cache with rewrites is generally fastest for most sites. If you can’t edit the .htaccess file or Nginx config, use Disk cache with PHP. If memcached is installed, select memcached with PHP, but always try to use disk cache with rewrites.
  • Early Loader – enable unless it’s causing PHP issues.
  • Cache Path – specify directory for the cache path.
  • Cache Expiry Mode – time-based is best for nearly every website.
  • Cache Expiry Time – time cache will be regenerated. Too often and it will consume CPU, too little and users won’t see the cached version. 12 hours is good for most sites, but you can decrease this if you have time sensitive content (or clear cache manually).
  • Garbage Collection Interval – how often Swift checks for expired cache pages. 30 minutes is good, too high and it will consume CPU.
  • Clear Cache on Update Post by Page – add pages/posts where you want the cache to be cleared once it is updated, so users can see the new content.
  • Clear Cache on Update Post by URL – same concept as previous settings, only by URL.
  • Enable Caching for logged in users – enable if multiple users are logging into your site (eg. bbPress). This gives each user their own cached version, otherwise keep it disabled.
  • Separate Mobile Device Cache – enable if using AMP or a mobile theme.
  • Case Insensitive URLs – shouldn’t make a difference.
  • Enable Browser Cache – enable.
  • Enable Gzip – fixes gzip items in GTmetrix/Pingdom.
  • Send 304 Header – disable.
  • Cache 404 pages – enable, since spiders may be crawling invalid URLs and consume CPU. Caching 404 pages and serving them from a CDN cuts down on server resources.
  • Ignore Query String – doesn’t cache pages that are different for each user (unique sales pages if you run FB/Google ads, membership profiles, conditional logic on forms).
  • Enable Dynamic Caching – lets you specify cacheable $_GET and $_POST requests.
  • Cacheable AJAX Actions – cache resource-intensive AJAX requests by specifying their names here.
  • AJAX Cache Expiry Time – leave as 1440.

Exceptions
Depending on what assets your site uses, you may not want to cache certain static files (some common ones are eCommerce cart/checkout pages, admin, XML sitemap, and search pages.

  • Exclude URLs – exclude specific URLs from cache.
  • Exclude Content Parts – exclude specific content parts from cache.
  • Exclude User Agents – exclude specific user agents from  cache.
  • Exclude Crawlers – exclude specific crawlers from cache.
  • Exclude Author Pages – exclude specific author pages from cache.
  • Exclude Archive – exclude specific archives pages from cache.
  • Exclude REST URLs – exclude specific REST URLs from cache.
  • Exclude Feed – exclude specific feeds from cache.

Warmup
Warmup stores URLs in for the next cache prebuild. Each URL has a priority number (shown in the dashboard settings) where they can be adjusted manually. Lower number = higher priority.

  • Enable Remote Prebuild Cache – Swift will no longer use an external bot for prebuilding and will use the background process instead.
  • Prebuild Cache Automatically – prebuilds cache after it’s cleared. If using this, also enable “Optimize Prebuild Only.”
  • Discover New Pages – if Swift can’t find all your pages, this will help.
  • Prebuild Author Pages – prebuilds author pages.
  • Prebuild Archive – prebuilds archive pages.
  • Prebuild REST URLs – prebuilds REST URLs.
  • Prebuild Feed – prebuilds RSS feed pages.

Varnish
Enable Auto Purge – enable if using varnish cache – it will automatically purge it when Swift clears the plugin cache so you don’t have to do it manually.

Appcache
Appcache downloads your site (or specific pages) into the user’s browser on their first visit, making your website available even when they’re offline. Sounds great, but this significantly slows down your prebuild and is not worth it. I highly recommend leaving these disabled.

  • Enable Appcache for Desktop – disable.
  • Enable Appcache for Mobile – disable.

 

3.5. CDN

I use StackPath ($10/month with 30-day trial) in conjunction with Cloudflare. StackPath has 31 data centers, Cloudflare has 150+. More data centers = faster content delivery, and StackPath’s are heavily located in the US which is where, at least, most of my visitors are.

StackPath-Data-Centers

General

Step 1: Enable CDN.

Step 2: In the StackPath dashboard, click the CDN tab, and create a StackPath CDN Site

StackPath-CDN-Tab

StackPath-CDN-Domain

StackPath-Server-IP-Address

*Copy your server IP address as it is needed in step 4 of this section.

StackPath-CDN-URL-Swift-Performance

Step 3: Paste your StackPath CDN URL into the CDN Hostname field of Swift Performance.

Swift-Performance-StackPath-CDN-Settings

Step 4: In StackPath go to CDN → Cache Settings, then click “Purge Everything”…

StackPath-Purge-Cache

Step 5: Whitelist your server IP address in StackPath (WAF → Firewall).

StackPath-Whitelist-IP

Step 6: Run your site in GTmetrix and “content delivery network” should be green in YSlow.

CDN GTmetrix YSlow

Enable CDN on SSL – enable if using SSL.

SSL CDN Hostname – leave blank since hostnames are the same even if it’s SSL.

Cloudflare

Cloudflare adds even more data centers to your content delivery network…

Cloudflare Data Centers

Step 1. Sign up for Cloudflare and you will be prompted to add your site and begin a scan.

cloudflare-begin-scan

Step 2. Once the scan is done, select the free plan, then Cloudflare will take you through a set of pages. You will eventually be taken to a page where Cloudflare assign you 2 name servers.

Cloudflare-Dashboard-Swift-Performance

Step 3. Do a Google search for “how to change name servers on SiteGround” (only search for your host), then follow their instructions. You will be copying the 2 name servers provided by Cloudflare and pasting them into a custom name servers option in your hosting cPanel…

SiteGround-DNS-Records

Step 4. Grab your Cloudflare Global API Key (found in your Cloudflare profile) and enter it into Swift’s Cloudflare tab. Use the same email as your Cloudflare account, and enable auto purge which purges Cloudflare’s cache when Swift’s cache is cleared (so you don’t have to manually).

Swift-Performance-Cloudflare-Settings

MaxCDN / StackPath
You can ignore these options. StackPath bought MaxCDN and they no longer use an Alias, Consumer Key, or Secret. Simply create a StackPath CDN URL and enter it in the CDN tab.

  • MAXCDN Alias – outdated (use StackPath CDN URL).
  • MAXCDN Consumer Key – outdated (use StackPath CDN URL).
  • MAXCDN Consumer Secret – outdated (use StackPath CDN URL).

Swift-Performance-MaxCDN-Settings

 

4. Image Optimizer

Swift Performance’s image optimizer is good, but you don’t need to upgrade for this (you can use free image optimization tools/plugins): Shortpixel, Imagify, and Imsanity all do a great job.

 

5. Database Optimizer

The database optimizer deletes unused database tables (often left by plugins you uninstalled), transients, autosaves, trashed posts, spam comments, and potentially thousands of post revisions which are automatically stored each time you republish content. For the most part, it’s junk. Take a backup especially if you haven’t done this for awhile, as it cannot be undone.

Swift-Performance-Database-Optimizer

 

6. Critical Font

Critical fonts let you select icons from Font Awesome and efficiently load only the ones you choose, as oppose to the entire Font Awesome library, making these icons load much faster.

Swift-Performance-Critical-Fonts

 

7. Plugin Organizer

In your GTmetrix Waterfall tab, you may notice certain plugins are running on pages/posts where it’s not even being used. Contact Form 7 might be used on your contact page, but usually nowhere else (so it shouldn’t run anywhere else). My WP Review rich snippets plugin do this too. You can disable/enable plugins using Swift’s filters while adding multiple rules.

Swift-Performance-Plugin-Organizer

Examples

  • Enable URL Match /contact/ to only show Contact Form on that page
  • Disable certain plugins in your WordPress Admin to prevent CPU consumption
  • Enable URL Match with regex expression to only show rich snippets on ‘review’ posts

 

8. Upgrade PRO

Swift Pro lets you use their compute API, image optimizer, and critical fonts. Frankly I think they give away too much in their free (lite) plugin, and that these aren’t worth upgrading for.

Swift-Performance-Pro

9. Test Results In GTmetrix

With Swift Performance…
Swift-Performance-GTmetrix-Report

With WP Rocket…
2019-GTmetrix-Report

 

Conclusion

Swift Performance Lite blows other free cache plugins out of the water, even if you configure just basic settings using the Wizard. If you’re still have issues, see my full WordPress speed optimization guide which includes a list of high CPU plugins to avoid, lightweight plugin alternatives, AMP instructions, how to upgrade to PHP 7+, image optimization, and a link if you want to hire my developer on freelancer.com who helped me get a 100% GTmetrix score.

 

Why I Use SiteGround

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.

How To Check If Your Hosting Is Slow
Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. Google recommends it should be <200ms. Anything above 1 second is not good. You can also check your TTFB (time to first byte) in GTmetrix’s Timings tab or bytecheck.com.

Reduce Server Response Time

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

SiteGround is 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-Plans

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 with my affiliate link I will donate a good chunk at no expense to you. Each year I donate $3k 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. 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 are a stellar WordPress host and your site will run faster/smoother… do your research on Facebook groups + Twitter and you’ll find most people say the same.

OMM-On-SiteGround

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

 

Frequently Asked Questions

🚀 Is Swift better than WP Rocket?

WP Rocket was rated higher in most Facebook polls, is much easier to configure, and has documentation/support if you need help setting it up.

🚀 How do you setup Cloudflare with Swift?

Sign up for a free Cloudflare plan, copy the 2 nameservers provided by Cloudflare, and change nameservers to Cloudflare's in your domain registrar. Next, add your Cloudflare information (located in your Account tab) into Swift Performance's Cloudflare settings.

🚀 How do you use the plugin organizer?

Learn which pages/posts don't need certain plugins/scripts. This may require a bit of testing. Next, use the Plugin Organizer to disable those on pages/posts that don't need to load them. Only loading a Contact Form plugin on your contact page is a classic example.

🚀 What other speed plugins do I need?

Swift should take care of most speed optimizations. You need to look at your GTmetrix report (including the Waterfall tab) to see what exactly is slowing down your WordPress site. For images, I recommend ShortPixel. For fonts, you can try OMGF.

🚀 Is Swift Performance Pro worth it?

If you're going to pay for a premium cache plugin, you're better off paying for WP Rocket than Swift Performance Pro.

Thanks for reading – drop me a comment if you have any questions!
Tom

The Ideal Autoptimize Settings + Cloudflare/StackPath CDN (2020)

Autoptimize is a great plugin, but for caching, WP Rocket is usually #1 in Facebook polls.

So why would you use it?

Because some hosts like GoDaddy and WP Engine blacklist most cache plugins (since they have their own built-in caching system) but they don’t do things like optimize HTML, CSS, JavaScript, Google Fonts, or CDN (content delivery network). So while your host’s caching system might work well for caching, Autoptimize helps do the “rest” of the stuff (fixing items in GTmetrix + Pingdom). Avoid Google PageSpeed Insights as it doesn’t even measure load times.

Even the Autoptimize developer says on his plugin page that it works best when combined with a cache plugin. I recommend Swift if you’re going the free route, and WP Rocket if you can do $49/year as it’s easier to configure (it’s also what I use and I have 100% scores in GTmetrix) since it comes with many features most cache plugins don’t (database cleanup, hosting Google Analyitcs code locally, heartbeat control, and integration with both Cloudflare + other CDNs). I have tutorials for WP Rocket, Swift, WP Fastest Cache, W3TC, and even WP Super Cache.

So let’s configure the Autoptimize settings. I’ll also show you how to add a CDN (ideally both Cloudflare and StackPath) since each one has their own set of data centers, and more data centers = faster content delivery. CDNs are recommended in WordPress’ optimization guide.

autoptimize plugin

How To Setup The Autoptimize Settings

  1. JS, CSS & HTML
  2. CDN Options
  3. Misc Options
  4. Images
  5. Critical CSS
  6. Extra
  7. Optimize More
  8. Cloudflare

 

1. JS, CSS, & HTML

Enable all these to optimize JavaScript, CSS, and HTML files, then see instructions below.

Autoptimize JS CSS HTML Settings

Optimize JavaScript Code

  • Aggregate JS-files: enable, this combines JavaScript files as recommended by GTmetrix. If disabled, individual files will be loaded and they will not combined.
  • Also aggregate inline JS: enable, this combines JavaScript files that are located in HTML files. Autoptimize gives a warning which basically means if it breaks anything on your site, either exclude the JavaScript files or disable this.
  • Force JavaScript in <head>: disable, unless you have JavaScript errors. You’re better off trying to find problematic files and exclude them than select this option since this makes the JavaScript render-blocking (not optimal for speed).
  • Exclude scripts from Autoptimize: if you see errors after enabling certain JavaScript settings, find the problematic JavaScript and exclude files here.
  • Add try-catch wrapping: disable, unless you have JavaScript errors. This is another way to fix JS errors without having to enable force JavaScript in head.

Optimize CSS Code

  • Aggregate CSS-files: enable, same thing as aggregating JS-files only for CSS.
  • Also aggregate inline CSS: enable, same thing as aggregating inline JS-files only for CSS. Enable both to further improve load times + GTmetrix scores.
  • Generate data: URIs for images: disable if using a CDN. MaxCDN (StackPath) warns you that enabling this will forces images to be served from your origin serve instead of your CDN. Enabling this might initially results in fewer HTTP requests, but likely not after you setup a CDN and serve images through that.
  • Inline and Defer CSS: enable, you can only enable this option or “inline all CSS” which Autoptimize does not recommend in their FAQs. They say “although inlining all CSS will make the CSS non-render blocking, it will result in your base HTML-page getting significantly bigger thus requiring more “roundtrips”.
  • Inline all CSS: disable, Autoptimize does not recommend enabling this.
  • Exclude CSS from Autoptimize: if you see errors after enabling certain CSS settings, find the problematic CSS files and exclude them here. Note: the “minify excluded CSS and JS” option in the Misc Options needs to be disabled.

Optimize HTML Code

  • Keep HTML comments: enable, but if you see indent or spacing issues in your comments, leave disabled.

 

2. CDN Options

This is where your CDN URL goes (instructions below). Cloudflare does not provide you with a CDN URL (you will change nameservers instead). The CDN Base URL is specifically for StackPath, KeyCDN, and other CDNs – not Cloudflare. I suggest using both StackPath + Cloudflare as your CDNs will have more data centers, and more data centers = faster website.

Step 1: Sign up for a CDN. I use StackPath who has 45 data centers which are heavily located in the United States and is where most my visitors are. It’s $10/month with a free 30-day trial.

stackpath network

Step 2: In the StackPath dashboard, click the CDN tab, and create a StackPath CDN Site.

StackPath-CDN-Tab

StackPath-CDN-Domain

StackPath-Server-IP-Address

*Copy your server IP address as it is needed in step 5 of this section.

StackPath-CDN-URL-Autoptimize

Step 3: Paste your CDN URL into Autoptimize with http:// or https:// (whichever you use).

Autoptimize CDN URL

Step 4: In StackPath go to CDN → Cache Settings, then click “Purge Everything.”

StackPath-Purge-Cache

Step 5: Whitelist your server IP address in StackPath (WAF → Firewall).

StackPath-Whitelist-IP

Step 6: Run your site in GTmetrix and “content delivery network” should be green in YSlow.

CDN GTmetrix YSlow

 

3. Misc Settings

Here are the Misc settings:

autoptimize misc options

Save aggregated script/css as static files – if enabled, this means the CSS and JS files are saved to the cache and served through your server, so if your hosting doesn’t handle these, enable it.

Minify excluded CSS and JS files – if you’re excluding certain CSS and JavaScript files, it’s because there’s a problem when trying to optimize them, and you don’t want them minified.

Experimental: enable 404 fallbacks – disable, will redirect ‘missing’ files to help prevent or at least reduce site breakage. May require server level configuration (get help from your host if need be).

Also optimize for logged in editors/ administrators – disable, you usually want to disable performance features in the WordPress admin, including Cloudflare performance features.

 

4. Images Settings

Autoptimize can also help make images load faster.

Autoptimize Images Settings

Optimize Images – URLs on your website will be changed to point to ShortPixel’s CDN. This should not effect how they look as long as it’s lossless compression, but they will load faster.

Image Optimization Quality – find your own unique balance between compression and quality (I use Glossy). Here are the differences in each compression level from ShortPixel:

ShortPixel Image Compression Levels

  • Lossy: most compression, most quality loss.
  • Glossy: medium compression, little quality loss.
  • Lossless: low compression, lowest quality loss.

Load WebP in supported browsers – enabled if you use WebP images and lazy load images.

Lazy-load images – I personally do not lazy load my images because constantly loading images as you scroll down the page can be annoying for users. Yes, it results in fewer requests and is recommended by Google for faster load times, but I find it annoying. This is totally up to you.

 

5. Critical CSS

This refers to the Autoptimize criticalcss.com power-up plugin.

It requires a premium paid plan from criticalcss.com ($7/month).

The plugin creates critical CSS rules to make sure pages are rendered before the full CSS is loaded, improving the “start to render time.” All you need to do is install the plugin, sign up for a plan, the enter your Critical CSS API Key into the “Critical CSS” section of Autoptimize, and the plugin will do the rest. Check the plugin’s FAQ page for details on custom configurations.

I personally don’t use it and would rather use the extra $7/month on a more powerful server.

Autoptimize criticalcss com power-up

Autoptimize Critical CSS Settings

 

6. Extra Settings

autoptimize extra settings

Google Fonts – enable if using Google Fonts which slow down load times as they’re pulled from external resources (the Google Font library). I prefer the “combine and link in head” option since this improves load times without visibility seeing fonts load (which is what usually happens when loading asynchronously. Also test the last Google Font option “combine and load fonts asynchronously with webfont.js” and see which yields better results in GTmetrix.

Remove Emojis – enable (emojis are bad for load times).

Remove Query Strings From Static Resources – query strings are usually generated by plugins and cannot be fixed (in GTmetrix/Pingdom) simply be enabling this, but you can try. The better solution is to check your site for high CPU plugins and replace them with lightweight plugins. Most high CPU plugins include social sharing, gallery, page builders, related post, statistic, and live chat plugins. You should also delete all unnecessary plugins and clean the database (using a plugin like WP-Optimize) to clear tables left by uninstalled plugins.

Preconnect To 3rd Party Domains – helps browsers anticipate requests from external resources (Google Fonts, Analytics, Maps, Tag Manager, Amazon store, etc). These will usually appear as “reduce DNS lookups” in your GTmetrix report, but below are common examples.

  • https://fonts.googleapis.com
  • https://fonts.gstatic.com
  • https://www.google-analytics.com
  • https://ajax.googleapis.com
  • https://connect.facebook.net
  • https://www.googletagmanager.com
  • https://maps.google.com

Preload Specific Requests – you can find more about preload and browser resource hints from WP Rocket, but this basically makes it so certain files are downloaded as a high priority.

Async Javascript-Files – this means something is preventing above-the-fold content from loading fast. This tutorial on render blocking JavaScripts explains it well, but if you see JavaScript errors in GTmetrix and Pingdom, the Async JavaScipt plugin might do the trick.

Optimize YouTube Videos – if your site has videos, WP YouTube Lyte lazy loads them so they only load when users scroll down and click the play button, thus eliminating initial requests to YouTube’s servers. This can shave multiple seconds off loads times on content with videos, as they’re one of the heaviest elements on a page. WP Rocket and Swift Performance have this built-in to their settings, so you don’t need this if you use one of them as your cache plugin.

 

7. Optimize More

If you want to further optimize your site, here are the tools recommend:

WP Rocket – rated the #1 cache plugin in multiple Facebook polls and has many options not included with Autoptimize (database cleanup, heartbeat control, hosting Google Analytics locally, replacing YouTube iframe with a preview image, adding Browser Cache to Facebook Pixel, etc). WP Rocket also handles nearly everything Autoptimize does, so you only need 1 plugin for all those speed optimizations. That’s why it’s so great. You can also get 10% off here.

ShortPixel – popular image optimization plugin and the one I use.

StackPath – CDN with 45 data centers. Very easy to setup; just sign up for a plan ($10/month) then copy/paste your CDN URL into the Autoptimize CDN URL option.

SiteGround – usually rated the #1 host in Facebook polls and also used by Yoast.

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

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 is much faster than EIG or GoDaddy:

Switching To SiteGround

SiteGround Load Time Migration

Bluehost to SiteGround GTmetrix

HostGator To SiteGround

SiteGround Google PageSpeed Insights

100 Perfect Score On SiteGround

SiteGround Genesis

Speed Delivered By SiteGround

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

SiteGround PageSpeed Insights

SiteGround On Joomla

SiteGround Reduced Load Times

SiteGround Speedy Hosting

New SiteGround Response Time

SiteGround Response Time Improvement

SiteGround also does free migrations with GrowBig+.

Cloudways – faster than SiteGround (it’s cloud hosting, not shared) and was also rated highly in Facebook polls. Starts at $10/month with their DigitalOcean plan. They offer 1 free migration (which I took them up on) and here’s what happened to my server response time:

SiteGround-vs-Cloudways-Cloud-Hosting

Hosting Recommendations Facebook

VPS Cloud Hosting WooCommerce Poll

VPS Cloud Hosting Poll

WordPress Hosting Suggestions

Cloudways Response Times

WP Engine To Cloudways

Untitled

Cloudways Pingdom Load Times

Cloudways-Facebook-Review

You can get 25% off your first 2 months of Cloudways with promo code OMM25.

Kinsta – $30/month premium hosting and while I haven’t tried them, I have heard nothing but great things about Kinsta’s speed, support, uptimes, and nearly everything about their hosting.

Perfmatters – plugin by Kinsta which takes care of what I like to call “miscellaneous optimizations” like selectively disabling plugins, limiting post revisions, disabling autosaves, hosting Google Analytics locally, and much more. It takes care of the final 10% of speed.

Some of these are recommended by Autoptimize, others are not:

Autoptimize Add Ons

 

8. Cloudflare

Autoptimize does not have settings to add Cloudflare’ CDN, but this is easy to setup. And you definitely should because this adds 200 more centers to your content delivery network (CDN).

cloudflare network

Step 1. Sign up for Cloudflare and you will be prompted to add your site and begin a scan.

cloudflare-begin-scan

Step 2. Once the scan is done, select the free plan, then Cloudflare will take you through a set of pages. You will eventually be taken to a page where Cloudflare assign you 2 nameservers.

Cloudflare-Name-Servers-Dashboard

Step 3. Login to your domain registrar (eg. Namecheap) and do a Google search for “how to change nameservers on Namecheap” (only search for your domain registar), then follow their instructions. You will be copying the 2 nameservers provided by Cloudflare and pasting them into a custom nameservers option in your domain registrar. Allow 72 hours for propagation.

Godaddy Cloudflare nameservers

That’s it!

 

What’s Next?

Watch My Video – it’s a 42 minute video, but I cover pretty much everything (timestamps in video description) and you should learn a ton of great information on WordPress site speed:

Want To Know How I Got 100% Scores In GTmetrix?
See my full WordPress speed optimization guide which has over 38 tips in fixing GTmetrix/Pingdom items including upgrading to PHP 7, serve scaled images, specifying image dimensions, database cleanup, hosting Google Analytics locally, WP Disable, and others.

 

Frequently Asked Questions

🚀 Do I need other speed plugins besides Autoptimize?

Yes, you usually want to also use a plugin for caching, image optimization, database cleanup, heartbeat control, and selectively disabling plugins. I recommend WP Rocket, ShortPixel, and Perfmatters for those.

🚀 How do you setup a CDN with Autoptimize?

Choose your CDN (I use StackPath), copy your CDN URL, and paste it into Autoptimize's CDN UR field.

🚀 How do you optimize Google Fonts with Autoptimize?

I recommend using the Combine And Link In Head option, and to preconnect your fonts using Autoptimize.

🚀 Does Autoptimize take care of caching?

No, you will need to use a separate plugin for caching. I recommend WP Rocket or SG Optimizer if using SiteGround.

🚀 How do you configure the Autoptimize settings?

Everything is listed in this tutorial - just keep an eye on your GTmetrix report and which specific items need to be fixed. If configuring the settings in Autoptimize doesn't fix it, consider using another plugin to fix items.

Questions? Drop me a line!
Tom

The Ideal WP Fastest Cache Settings With Cloudflare + StackPath CDN Setup Instructions (Updated 2020 With Latest Version 1.5.6)

WP Fastest Cache is usually rated the #1 free cache plugin in Facebook polls.

I was able to get .5s load times in Pingdom after configuring the WP Fastest Cache settings. They’re easy to setup and have options for both Cloudflare and StackPath’s CDN which can further improve grades/load times (I use both since more data centers = faster website). For hosting, I recommend SiteGround who is used by Yoast and rated #1 in 20+ Facebook polls. But if you’re looking for something faster than shared hosting, Cloudways DO is where it’s at.

I will show you how to configure the WP Fastest Cache settings, StackPath’s CDN, and what upgrading to WP Fastest Cache Premium did for me. I also have instructions for Cloudflare.

Leave me a comment if you have questions or see their support forum. But there are many complaints about WP Fastest Cache’s support just to give you a heads up. Remember to retest your site in Pingdom or GTmetrix when you’re done – and comment with your new load time!

How To Setup WP Fastest Cache

  1. Cache Plugin Comparison
  2. WP Fastest Cache Settings
  3. StackPath CDN
  4. Cloudflare
  5. Delete Cache And Retest In Pingdom

 

1. Cache Plugin Comparison

WP Fastest Cache is usually the #2 or #3 cache plugin in Facebook polls, trailing behind WP Rocket which is almost always #1.

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 Test – I ran the same page through Pingdom which had minimal content so results would be accurate. I setup each one with the best settings and Cloudflare/StackPath.

WP Rocket (.406)
Pingdom Page Speed Test

WP Fastest Cache (.527)
WP Fastest Cache Load Times

W3 Total Cache (.619)
W3 Total Cache Load Times

WP Rocket vs. WP Fastest Cache – WP Rocket has quite a few extra features not included with WP Fastest Cache (database cleanup, lazy loading, heartbeat control, hosting Google Fonts + Analytics locally, prefetching DNS requests). While WP Rocket has these all built-in, you would need to install about 6-7 extra plugins to get these speed optimizations with WP Fastest Cache. With WP Rocket, you get more speed optimizations, yet less plugins running on your site. I wrote a WP Rocket setup guide which also shows you how to get 10% off the price.

StackPath vs. CloudflareStackPath is $10/month Cloudflare is free. Both are CDNs which mirror your site on multiple data centers around the world (reducing the distance between your server and visitor) and is recommended in the WordPress optimization guide. Cloudflare has 200+ data centers, StackPath, has 45 data centers which are heavily focused in the US (more data centers = faster website, that’s why I recommend using both). StackPath comes with a support team who improved my GTmetrix YSlow score by 8% – their support is great.

 

stackpath network
StackPath has over 45 full-stack locations spanning the globe.

 

cloudflare network
Cloudflare’s network spans over 95 countries.

Why Use StackPath?

  • StackPath’s 45 data centers use faster SSD servers + 10GB connections
  • StackPath doesn’t charge for HTTPS traffic, Cloudflare charges pay-per-use
  • StackPath’s team helped me configure my CDN and improved my GTmetrix YSlow score by 8%, putting the cherry on the cake to make my GTmetrix report nearly perfect
  • StackPath has dashboards that provide lots of information about your cached files
  • StackPath allows you to protect your account using a two-step authentication process; you can whitelist the IP addresses of people who are permitted to access your account

 

2. WP Fastest Cache Settings

If you plan on using StackPath, see my StackPath section which has it’s own WP Fastest Cache settings (you would disable logged-in users, mobile, and browser caching options) which is shown in StackPath’s WP Fastest Cache tutorial.

If you plan on using Cloudflare, use the settings below but disable Auto Minify and Rocket Loader in the “speed” tab of your Cloudflare settings (Railgun should be enabled). This is what the WP Fastest Cache plugin developer recommends in his Cloudflare tutorial. My Cloudflare section shows you how to sign up for Cloudflare, change name servers in your hosting cPanel, set page rules for optimal performance, and purge the cache once you’re done.

If you plan on using neither, use the settings below. The only thing you would change is in the Preload tab (pages per minute). If you’re on shared hosting use 4-6, VPS should use 10-12.

wp fastest cache settings

Breakdown Of WP Fastest Cache Settings:

  • Cache System – enable
  • Widget Cache System – caches your widgets (premium feature)
  • Preload – create cache of entire site automatically (shared hosting should use 4-6, VPS is 10-12. Creates caching delay for first user who views the page. Learn more)
  • Logged-in Users – don’t show the cached version for logged-in users (if it’s just you running your website, leave this checked. But if multiple users can be logged in, each user should have their own cached version, so it would be unchecked)
  • Mobile – don’t show the cached version for desktop to mobile devices
  • Mobile Theme – caches mobile theme (premium feature)
  • New Post – clear cache files when a post or page is published
  • Update Post – clear cache files when a post or page is updated (Learn more)
  • Minify HTML – decrease size of page (high priority Pingdom item. Learn more)
  • Minify HTML Plus – more powerful minify html (premium feature)
  • Minify CSS – decrease size of css files (high priority Pingdom item. Learn more)
  • Minify CSS Plus – more powerful minify CSS (premium feature)
  • Combine CSS – reduce HTTP requests through combined css files (combines JavaScript and CSS files between <head></head>. This reduces the amount of JavaScript and CSS files on a page which reduces the number of HTTP requests required to render the page. Also a high priority item in Pingdom. Learn more)
  • Minify JS – decrease size of JS files (premium feature)
  • Combine JS – reduce HTTP requests by combining JS files
  • Combine JS Plus – minify combined JS files (premium feature)
  • Gzip – reduce size of files sent from your server (reduces transfer time between server and browser, and is a high priority Pingdom item. Learn more)
  • Browser Caching – reduce load time for repeat visitors (Learn more)
  • Disable Emojis: remove emoji inline CSS
  • Render Blocking JS – remove render-blocking JavaScript (premium feature)
  • Google Fonts – loads Google Fonts asynchronously (premium feature) but this can also be done using the free WP Disable plugin which I highly recommend
  • Lazy Load – premium feature which you can use A3 Lazy Load for Learn more)

Nearly every item in WP Fastest Cache is found in GTmetrix/Pingdom:

GTmetrix-With-WP-Fastest-Cache-Cloudflare-StackPath

Delete Cache – clear the cache after configuring the WP Fastest Cache settings:

Delete-Cache-WP-Fastest-Cache

Image Optimization – premium feature which losslessly compresses images (an item in GTmetrix). This can also be done using the Imagify or Kraken plugin. I would not use any other plugins since these might break your site or have bugs – I have done tons of research on this.

WP-Fastest-Cache-Image-Optimization

Losslessly compressing images fixes the “optimize images” item in GTmetrix:

optimize-images-gtmetrix

Premium – see the difference below which shows 2 GTmetrix reports (it’s worth it). If you decide to upgrade for $49.99, they will send you a download link via email which you will manually upload in your plugins menu. Keep both the free and premium version activated.

premium plugin information

Premium
WP Fastest Cache Premium
Not Premium
WP Fastest Cache Free

Exclude – exclude pages from being cached (eg. eCommerce checkout pages).

WP-Fastest-Cache-Excludes-Settings

CDN – a CDN (content delivery network) makes your site faster by hosting it on multiple servers around the country and world, as oppose to 1 origin server (it reduces the geographical distance it takes your content to reach your visitors). See the StackPath section.

Database (DB) – cleaning your database removes unnecessary junk and makes it load faster. You can use the free WP-Optimize plugin to do this, upgrading for this feature isn’t necessary.

WP-Optimize Clean Database

WP-Optimize-Database-Cleanup

 

3. StackPath CDN ($10/Month With Free 30-Day Trial)

StackPath mirrors your site on 31 data centers, reducing the geographical distance between your server and visitors. This can reduce load times by multiple seconds especially for visitors who used to be far away from your 1 origin server. StackPath also helped me configure my CDN and was able to improve my GTmetrix YSlow score by 8% (see my report). They have a 30-day trial and their own tutorial on configuring StackPath’s CDN with WP Fastest Cache.

This is recommended in the WordPress optimization guide:

wordpress cdn recommendations

Step 1: Sign up for StackPath.

Step 2: Configure WP Fastest Cache with these settings when using StackPath:

stackpath wp fastest cache settings

Step 3: In the StackPath dashboard, click the CDN tab, and create a StackPath CDN Site.

click sites in stackpath

enter domain name

server ip address

origin authentication

Copy your server IP address from above.

cdn url

Step 4: Click “StackPath” in the CDN area of WP Fastest Cache.

WP-Fastest-Cache-StackPath-CDN

Step 5: Paste your CDN URL into WP Fastest Cache and use your website as the origin URL:

stackpath cdn url

Step 6: Click next, leave all file types selected, then keep clicking next until it’s ready:

stackpath file types

Next…

stackpath specify sources

Next…

stackpath exclude sources

Finish…

stackpath ready to go

stackpath integration ready

Done.

WP-Fastest-Cache-StackPath-CDN-Confirmation

Step 7: In StackPath go to CDN → Cache Settings, then click “Purge Everything”…

StackPath-Purge-Cache

Step 8: Run your site through GTmetrix and look at the YSlow tab to make sure it’s working…

CDN GTmetrix YSlow

Ok, NOW you’re done.

 

4. Cloudflare

SiteGround and most other hosts have an option to activate Cloudflare in the cPanel. If your host doesn’t have this options, you can setup Cloudflare using WP Fastest Cache (see below).

Cloudflare-Activation

Step 1: Sign up for Cloudflare and you will be prompted to add your website and begin a scan.

cloudflare-begin-scan

Cloudflare-DNS-Records

Cloudflare-CDN-Plans

You will eventually come to this dashboard where Cloudflare assigns you 2 name servers and provide a link to your Global API Key.

Cloudflare-Dashboard-WP-Fastest-Cache

Step 2: Do a Google search for “how to change name servers on SiteGround” (only search for your host), then follow their instructions. You will be copying the 2 name servers provided by Cloudflare and pasting them into a custom name servers option in your hosting cPanel.

SiteGround-DNS-Records

Step 3. Grab your Global API Key from the link in Cloudflare, or in your Cloudflare profile.

loudflare-Global-API-Key

Go back to WP Fastest Cache and click the Cloudflare tab. Enter the same email address used in your Cloudflare account, as well as your Global API Key.

WP-Fastest-Cache-Cloudflare-Tab

WP-Fastest-Cache-Cloudflare-API-Keys

Keep clicking next in WP Fastest Cache. They will automatically turn off the minify settings in WP Fastest Cache (since Cloudflare will now do this). They will also turn off Rocket Loader for better compatibility (your website won’t break), and set browser cache expiration to 24 days.

WP-Fastest-Cache-Cloudflare-Disable-Auto-Minify

WP-Fastest-Cache-Disable-Rocket-Loader

WP-Fastest-Cache-Cloudflare-Browser-Cache-Expiration

WP-Fastest-Cache-Cloudflare-Message

WP-Fastest-Cache-Cloudflare-Integration

Looks good!

WP-Fastest-Cache-Cloudflare-Confirmation

Step 4: Go to Cloudflare’s speed settings and make sure Auto Minify and Rocket Loader are turned off, but SG Railgun is on. This is what the WP Fastest Cache developer recommends.

Cloudflare-Speed-Tab

Step 5: Cloudflare says “we recommend you create a Page Rule to exclude the admin section of your website from Cloudflare’s performance features. Features such as Rocket Loader and Auto Minification may inadvertently break backend functions in your admin section.”

Add these 2 page rules in your page rules settings.

WP-Admin-Page-Rule

Cache-Everything-Cloudflare-Page-Rule

Step 6. Finally, go to your Cloudflare caching settings and purge individual files.

Purge Individual Files Cloudflare

All done!

WP-Fastest-Cache-Cloudflare-Confirmation

 

5. Delete Cache And Retest In Pingdom

In the WP Fastest Cache settings, go to the “Delete Cache” tab and “Delete Cache And Minifed CSS/JS.” Now rerun your website through Pingdom to view your updated scores and load time.

WP Fastest Cache Pingdom Test

Ideally the following Page Speed items are green:

  • Minify CSS
  • Minify HTML
  • Minify JavaScript
  • Leverage Browser Caching
  • Specify a Cache Validator
  • Enable gzip Compression
  • Defer Parsing Of JavaScript

Ideally the following YSlow items are also green:

  • Reduce cookie size
  • Add Expires headers
  • Reduce DNS lookups
  • Use cookie-free domains
  • Make fewer HTTP requests
  • Minify JavaScript and CSS
  • Configure entity tags (ETags)
  • Compress components with gzip
  • Remove duplicate JavaScript and CSS
  • Use a Content Delivery Network (CDN)

Remember, it can take Cloudflare up to 24 hours to propagate, so check back then.

 

6. WP Fastest Cache FAQs

Here’s the FAQ page if you still have questions.

WP-Fastest-Cache-FAQs

 

SiteGround (#1 Host In Facebook Polls)

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.

How To Check If Your Hosting Is Slow
Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. Google recommends it should be <200ms. Anything above 1 second is not good. You can also check your TTFB (time to first byte) in GTmetrix’s Timings tab or bytecheck.com.

Reduce Server Response Time

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 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

SiteGround has 3 plans:

SiteGround-Plans

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 GTmetrix + Pingdom 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 with my affiliate link I will donate a good chunk at no expense to you. Each year I donate $3k 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. 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 are a stellar WordPress host and your site will run faster/smoother… do your research on Facebook groups + Twitter and you’ll find most people say the same.

 

36+ WordPress Speed Optimization Tips

Watch My Video – it’s a 42 minute video, but I cover pretty much everything (timestamps in video description) and you should learn a ton of great information on WordPress site speed:

Follow my WordPress speed optimization guide which shows you how to:

  • Diagnose slow plugins using GTmetrix
  • Add AMP (accelerated mobile pages) using the AMP plugin
  • Use AWStats to find causes of high CPU (crawlers, images, etc)
  • Recommendations for lightweight slider/gallery/social sharing plugins
  • Use Complete Analytics Optimization Suite (CAOS) to host Google Analytics locally
  • Image optimization (serve scaled images, specify dimensions, lossless compression)
  • Use WP Disable to disable unnecessary settings in WordPress core while turning on heartbeat control, loading of Google fonts asynchronously, other speed optimizations

And plenty of others. Read the comments and you’ll see things like “My page speed score on gtmetrix went from 69 to 93” and “this might be one of the most helpful posts I’ve ever read.”

 

Get Help From My WordPress Speed Optimizer

Still need help with your GTmetrix/Pingdom report? I’ve been working with Pronaya for 7 years (he’s the one who helped me get a <1s load time in Pingdom). You can hire him by creating a profile on freelancer.com and searching for username bdkamol. Here is his full WordPress speed portfolio. He’s $40/hour from Bangladesh (so there is a time change) and you can email him at bdkamol@gmail.com. He also has a perfect 5 star review on his profile. Serious inquiries only, and please don’t expect 100% scores if you’re using slow hosting, a bloated theme, and tons of heavy plugins. Please follow my full WordPress speed guide first.

Pronaya-Kumar-S-Reviews

Reviews on his profile:

BDkamol-WordPress-Speed-Reviews

 

Frequently Asked Questions

🚀 Is WP Fastest Cache Premium worth it?

If you're going to spend money on a premium cache plugin, most people use WP Rocket since it comes with more features than WP Fastest Cache Premium and will typically yield better results.

🚀 Which CDN should I use with WP Fastest Cache?

Cloudflare's free CDN is sufficient for most sites, however more CDNs = more data centers and faster delivery of your content. You may also consider StackPath or KeyCDN.

🚀 How do I clear cache when I'm done configuring the settings?

In the WordPress menu on top, go to WPFC and Delete Cache And Minified CSS.

🚀 What other speed plugins do I need besides WP Fastest Cache?

WP Fastest Cache does not come with the option for image optimization, database cleanup, lazy loading, heartbeat control, prefetch + preconnect, and optimizing Google Fonts + Analytics. I recommend Perfmatters, OMGF, and Advanced DB Cleaner.

🚀 Should I add AMP?

I do not use accelerated mobile pages (AMP) on this WordPress site. Read Kinsta's article about how their conversions dropped 50% due to AMP and you may not want to either.

 

See Also: How I Got 100% GTmetrix Scores

If your website loads faster feel free to leave your new page load time in the comments! Or if you have any questions I’m glad to help with that too. As you can see I’m a pretty big nerd when it comes to WordPress speed so if you follow these recommendations, there’s no reason your website shouldn’t load in under 3s. And if you found this tutorial helpful, please share :)

Cheers,
Tom

The Ideal W3 Total Cache Settings With Cloudflare And StackPath CDN Instructions — Last Updated 2020 With Latest Version 0.14.2

Not sure if your W3 Total Cache settings are configured optimally?

I generally don’t recommend W3 Total Cache since it doesn’t support database cleanup, heartbeat control, optimizing Google Fonts, embedded videos, or NGINX + memcached (only available with the premium version). While W3 Total Cache is free, WP Rocket is better since it has these built-in. That’s why it yields faster load times and is rated the #1 cache plugin in most Facebook polls. But if you insist on free, use this tutorial to set up your W3 Total Cache settings.

This tutorial shows you how to set up the performance tabs then add Cloudflare (free CDN) or StackPath (premium CDN). Many W3 Total Cache settings are preset (shown in the “Install” tab), but not all of them. For hosting, I recommend DigitalOcean on Cloudways especially over SiteGround, EIG, and GoDaddy (TLDR: Cloudways + WP Rocket is a much faster configuration). They’re what I use; see my GTmetrix report or click through my posts to see how fast they load.

 

W3 Total Cache Dashboard

 

Download my recommended W3 Total Cache settings here (you’ll need a Dropbox account). Upload the file under Performance → General Settings → Import / Export Settings. Check your site to make sure everything is OK. You will still need to configure a CDN, activate extensions, and add your sitemap URL (under Page Cache). This file was last updated on March, 18, 2019.

 

1. General Settings

Important notes about the W3 Total Cache general settings:

  • Cache method: use disk enhanced for shared hosting, memcached for cloud hosting.
  • Database cache: leave disabled, it overloads the server especially on shared hosting.
  • Object cache: leave disabled, it will usually slow down the website and the dashboard.
  • CDN: enable if you plan on using StackPath’s CDN (though you can just use Cloudflare).
  • Lazy loading: delays loading of images and fixes the lazy load item in PageSpeed Insights.
  • Fragment cache: only available with W3 Total Cache Pro and usually for dynamic sites.
  • Google PageSpeed Widget: I recommend the GTmetrix plugin for monitoring instead.

W3 Total Cache General Settings 1

 

2. Page Cache

Important notes about the W3 Total Cache page cache settings:

  • Don’t cache pages: you don’t want to cache pages for logged in users or user roles.
  • Rest API: the rest API can be disabled if you’re not using (check your website for errors).
  • Compatibility mode: enable, this is recommended in the Install tab by the developer.

W3 Total Cache Page Cache Settings

 

3. Minify Settings

The plugin developer says the recommended settings for minify, database, and object cache are preset. You can find these recommendations in the Install tab. The main things to tweak are the browser cache settings and set up a content delivery network like Cloudflare or StackPath.

minify settings

 

4. Database Cache

  • Leave as is (recommended by the developer).

 

5. Object Cache

  • Leave as is (recommended by the developer).

 

6. Browser Cache

Important notes about the W3 Total Cache browser cache settings:

  • Enable first 6 settings: enable these individually and test the results in GTmetrix.
  • Brotli compression: if using Cloudflare’s CDN, enable this in the Cloudflare dashboard.

W3 Total Cache Browser Cache Settings 1

Leave everything else including ‘expires header lifetime’ which the developer says is preset.

 

7. User Agent Groups

User Agent Groups are used to specify whether a mobile theme is used (if you have a mobile responsive website and are not using a plugin to create a mobile site, there is no need for this).

W3 Total Cache User Agent Groups

 

8. Referrer Groups

Referrer Groups are used to serve a unique cached version for users who come to your site through specific traffic sources (eg. Google or Bing). Most websites should leave this disabled.

W3 Total Cache Referrer Groups

 

Same concept as referrer groups, only it uses cookies instead to create a unique cached version for users who come to your site through specific cookies. Most sites should leave this disabled.

W3 Total Cache Cookie Groups

 

10. CDN

This section is specifically for StackPath’s CDN which they also have a tutorial for.

Cloudflare is set up differently and it has it’s own section. While most people only recommend using 1 CDN (usually Cloudflare since it’s free), I personally use both Cloudflare and StackPath. Both offload a ton of resources to their data centers and save bandwidth (screenshots below).

StackPath-Bandwidth-Savings

Step 1: Go to the W3 Total Cache General Settings and enable StackPath.

W3 Total Cache Enable CDN

Step 2: Sign up for StackPath, select API management from the dropdown menu (top right), then select Generate Credentials. Create a name (eg. W3TC) then StackPath will give you a Client ID and Client Secret. Copy/paste these into StackPath under CDN Settings → Authorize.

StackPath Credentials

Authorize

StackPath Credentials In W3TC

Step 3: In the W3 Total Cache CDN settings, use these:

W3 Total Cache CDN Settings 1

Step 4: In StackPath go to CDN → Cache Settings, then click Purge Everything:

StackPath-Purge-Cache

Step 5: Run your site in GTmetrix and “content delivery network” should be green in YSlow.

CDN GTmetrix YSlow

CDN pointers from the plugin developer (found in Install tab) – if you do not use the Media Library, import your images etc into the default locations. Use the Media Library Import Tool on the “CDN” tab to do this. If you do not have a CDN provider, you can still improve your site’s performance using the “Self-hosted” method. On your own server, create a subdomain and matching DNS Zone record; e.g. static.domain.com and configure FTP options on the “Content Delivery Network” tab. Be sure to FTP upload the appropriate files, using the upload buttons.

 

11. Fragment Cache

Fragment cache is mainly used in dynamic sites. Instead of caching an entire page, individual sections (usually the heavy areas) are cached. You will need to upgrade to W3 Total Cache Pro to use fragment cache. They have recommendations on that page I linked to which makes the plugin aware if you’re grouping transients. However, you may need some coding experience.

W3 Total Cache Fragment Cache

 

12. User Experience

W3 Total Cache comes with basic lazy load settings which fixes the lazy load item in PageSpeed Insights. This delays loading of images until you scroll down and see them. It doesn’t optimize videos, so if you embed YouTube videos on your site, you will need an additional plugin for that.

W3 Total Cache Lazy Loading

 

13. Extensions

Active any extensions you’re using. In my case it would be Cloudflare and Yoast.

W3 Total Cache Extensions

 

14. Cloudflare

Cloudflare is free with over 200+ data centers.

If you’re using Cloudflare, there is usually no need to use StackPath. Unlike StackPath, setting up Cloudflare is different and requires changing nameservers. When you’re done, be sure to login to your Cloudflare dashboard and add Page Rules which can improve speed and security.

Cloudflare-Bandwidth-Savings

Step 1: Sign up for a free Cloudflare account, add your site, and run the scan prompted by Cloudflare. You will eventually come to a page where Cloudflare assigns you 2 nameservers.

Cloudflare-GoDaddy-Nameservers

Step 2: Login to your domain registrar, find the area to change nameservers, and paste them here. Once this is done, you can go back to Cloudflare and click “Done, check nameservers.”

SiteGround-DNS-Records

Step 3: In the W3 Total Cache Extensions tab, activate Cloudeflare and click Settings.

Cloudflare Extension

Configure the Cloudflare settings (note: the only thing I changed is enabling hotlink protection).

W3 Total Cache Cloudflare Settings

Step 4: Login to your Cloudflare dashboard and go to Page Rules. Add these 3 page rules:

Page Rule 1: Cache Everything And Force HTTPS – cache your website aggressively.

http://*yourwebsite.com/*

Always-Use-HTTPS-Page-Rule

Page Rule 2: Secure The WordPress Admin And Bypass Cache – sets security level of the admin to high and bypasses Cloudflare’s cache in the admin, since you don’t want CDNs (or apps + performance features like Rocket Loader) running inside the admin.

yourwebsite.com/wp-admin*

WordPress-Admin-Page-Rule

Page Rule 3: Decrease Bandwidth Of WP Uploads – since the content in your WP Uploads folder does not change frequently, increasing Edge Cache TTL to a month can save on bandwidth, since the WP Uploads folder cache won’t be refreshed as often.

yourwebsite.com/wp-content/uploads*

WP-Uploads-Page-Rule

Once you’re done configuring your CDN(s), purge all caches in W3 Total Cache. If you don’t see this, there may be an ’empty all caches’ option in the dashboard tab. It can take up to 24 hours for Cloudflare nameservers to propagate, but you will get a confirmation email once complete.

 

15. Cloudways (My Recommended Host)

I signed up for 15+ hosting accounts to test their speed. All domains in this video are live, which means you can visit them in real-time and click through their pages, use GTmetrix, etc.

Each website is identical except for it’s hosting (same Astra Starter Site, SSL, no caching, no CDN, and the same 6 plugins). I also used WP Hosting Performance Check and KeyCDN to measure the most popular options. The results align with what most people are saying in the WordPress Hosting Facebook Group which I recommend joining to get real, unbiased opinions.

I moved from SiteGround to DigitalOcean on Cloudways and the results speak for themselves. I’m also paying 1/2 of what I was. Cloudways also does free migrations which made it very easy.

SiteGround-vs-Cloudways

#1. DigitalOcean On Cloudwayscwdoserver.com was the fastest, is who I use, and are very popular in Facebook Groups (especially as an alternative to SiteGround). DigitalOcean is also the only host mentioned in the WordPress Optimization Guide. Cloudways was #1 in most recent Facebook polls and people who migrate usually see significant load time improvements. They use PHP 7.4, Maria DB 10.3, Memcached, Varnish, Nginx, and Redis. Pricing starts at $10/month with no strict CPU limits or renewal prices like on other hosts. The community manager is very helpful and they do free migrations. You can get 25% off your first 2 months with the promo code OMM25.

#2. Kinstaknstaserver.com had similar speeds as DigitalOcean on Cloudways only they are more expensive starting at $30/month. Known for being capable of handling many concurrent visitors. People consistently recommend Kinsta in Facebook Groups, Twitter, and in migration results. Even though they’re not always #1 in Facebook polls (likely because not everyone can pay $30+/month), they are great for high traffic sites.

#3. WPX Hostingwpxserver.com is also very quick, but Cloudways and Kinsta are slightly faster. Starts at $20-$25/month and is who Matthew Woodward recommends.

#4. A2 Hostingatwoserver.com usually outperformed other shared hosting but is not nearly as fast as cloud hosting (just cheaper). I use A2 for my girlfriend’s restaurant website and it’s decently fast with good uptimes. A2 (and all shared hosting) is only sufficient for smaller websites with low traffic/plugins. Otherwise, use cloud hosting.

#5. SiteGround – has gone downhill with many complaints about their renewal prices, price hikes, CPU limits, and support isn’t as good as it used to be. SiteGround shifted to Google Cloud hosting (instead of shared) which is supposed to be faster, but load times and TTFB on stgrndserver.com were usually above 1s. Their SG Optimizer plugin should help, but I still wouldn’t use them. You’re better off on Cloudways DigitalOcean.

Affiliate Disclaimer – I would seriously appreciate you using my affiliate links which means I earn a commission at no expense to you. This would help me make GoFundMe donations ($6,000 so far)! I try to base my recommendations on tests, Facebook polls, and conversations I see on a daily basis in the 30+ WP Facebook Groups I’m active on.

I would personally skip shared hosting since cloud hosting is exponentially faster. This is especially true if you’re on GoDaddy or EIG brands (eg. Bluehost and HostGator) and for resource-intensive websites running WooCommerce, WPML, page builders, or slow plugins.

There are plenty of migration results if you check Twitter and Facebook Groups. Avoid the bloggers promoting Bluehost and WP Engine because they have the highest commissions and do your research. Hosting is the #1 factor in WordPress’ optimization guide – very important!

Cloudways Response Times

Godaddy to DigitalOcean Migration

VPS Cloud Hosting WooCommerce Poll

Hosting Recommendations Facebook

2017-WordPress-Hosting-FB-Poll

2018 Hosting Recommendations

Favorite Hosting For Elementor

Untitled

Vultr Migration

WordPress Hosting Suggestions

VPS Cloud Hosting Poll

2016-WordPress-Hosting-FB-Poll

July 2019 Hosting Recommendation

Elementor Hosting Recommendations

Cloudways Facebook Review

 

35+ WP Speed Tips (My Full Guide)

Watch My Video – it’s a 42 minute video, but I cover pretty much everything (timestamps in video description) and you should learn a ton of great information on WordPress site speed:

 

Hire My WordPress Speed Optimizer

Still need help with your GTmetrix report? I’ve been working with Pronaya since 2011 (he’s the one who helped me get a such nice scores + load times. You can hire him by creating a profile on freelancer.com and searching for username bdkamol (see his portfolio). He’s $40/hour from Bangladesh (so there is a time change) and his email him is bdkamol@gmail.com. He has a perfect 5 star review on his profile. Serious inquiries only, and please don’t expect 100% scores if you’re using slow hosting, plugins, and theme. Please follow my WordPress speed guide first.

Pronaya-Kumar-S-Reviews

 

Frequently Asked Questions

🚀 Is W3 Total Cache the best cache plugin?

Most people prefer WP Rocket over W3 Total Cache since it comes with features not included with W3 Total Cache, and therefore yields better results in GTmetix. These features include database cleanup, hosting analytics locally, advanced lazy loading of images + videos, heartbeat control, and DNS prefetching. It's also easier to configure.

🚀 Should I use a CDN with W3 Total Cache?

Yes, Cloudflare's free CDN can make your site faster and more secure which you can set up by changing nameservers in your domain registrar, then configuring the Cloudflare settings in W3 Total Cache. Adding page rules in the Cloudflare dashboard is also recommended.

🚀 What happens if W3 Total Cache breaks my site?

The minification and combination settings in W3 Total Cache are usually the most common culprits of broken elements when using W3 Total Cache. Test each one of these carefully.

🚀 How do I clear cache once I'm done?

Go to the Performance settings, then click Purge Everything.

🚀 Do I need other speed plugins besides W3 Total Cache?

Yes, you should also install plugins for heartbeat control, database cleanup, image optimization, and either Asset CleanUp or Perfmatters to selectively disable plugins.

See Also: How I Got 100% GTmetrix Scores

That’s it! I know it can get a bit technical so if you have any questions just drop me a line in the comments. And if you enjoyed my tutorial, please give it a share. I would really appreciate that!

Cheers,
Tom

How To Fix GoDaddy’s Slow WordPress Hosting (With PHP 7.3, Autoptimize, CDNs, And Making Images + Plugins Load Faster)

Is your WordPress site running slow on GoDaddy?

If your WordPress site is slow on GoDaddy, you can speed it up by upgrading to PHP 7.3, configuring Autoptimize, setting up Cloudflare, and making images and plugins load faster.

But GoDaddy is infamously slow. iThemes called them out for overcrowding servers and they are slow to release new PHP versions. Forbes wrote an article titled “5 Reasons You Should Leave GoDaddy.” They also blacklist all cache plugins and force you to use their own built-in caching system which doesn’t hold a candle to top-rated caching plugins such as WP Rocket.

How do you check if GoDaddy’s the problem?

Run your WordPress site through Google PageSpeed Insights to check if reduce server response time is in your report. Google recommends a response time of <200ms. Anything over is considered slow, and you can identify GoDaddy’s slow servers as the main problem.

A warning about GoDaddy: GoDaddy is one of the slowest hosts. I even set up an identical Astra website on gdaddyserver.com and cwdoserver.com. One is hosted on GoDaddy’s Managed WordPress Hosting, one is hosted on Cloudways DigitalOcean who was rated the #1 host in Facebook polls, conversations, and migration results. Visit the websites and click through their pages – you will see a huge speed difference.

Benchmark your scores + load times in GTmetrix and post them in the comments! And if you need help, leave your GTmetrix report in the comments and I’ll provide you with suggestions.

How To Fix A Slow WordPress Site On GoDaddy

  1. Check Your Server Response Time
  2. Upgrade To PHP 7.3 In GoDaddy’s cPanel
  3. Configure The Autoptimize Plugin
  4. Remove Junk From Your WordPress Database
  5. Add Cloudflare’s CDN
  6. Optimize Images
  7. Avoid Slow Loading Plugins
  8. Avoid Google Maps And AdSense
  9. Remove Bloat
  10. Lazy Load Videos
  11. Optimize Third Party Scripts
  12. Host Google Analytics Locally
  13. Find Your Slowest Loading Pages
  14. Keep WordPress Software Updated
  15. Leave GoDaddy For Cloudways

When you’re done, hopefully your GTmetrix report looks more like this:

1s-2020-GTmetrix-Report

 

1. Check Your Server Response Time

Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. Your server is obviously controlled by your hosting. To reduce it, you either need to upgrade plans on GoDaddy (managed/VPS) or of course, switch to a faster hosting company.

Reduce Server Response Time

TTFB

Indicators Your Hosting Is Slow

  • High server response time in PageSpeed Insights (over 200ms)
  • High TTFB (time to first byte) in GTmetrix Timings tab (over 200ms)
  • High PageSpeed + YSlow scores in GTmetrix, but load time is still slow
  • 503 service unavailable errors which means the server is being overloaded
  • You’re using cheap, shared hosting with “unlimited bandwidth” but TOC says otherwise

What-is-the-reason-that-GoDaddy-is-loading-very-slowly-Quora

Slow Godaddy

Godaddy Server Response Time

Slow Server Response Times on Godaddy

 

2. Upgrade To PHP 7.3 In GoDaddy’s cPanel

Upgrading to PHP 7.3 can make your GoDaddy site 2-3x faster according to Kinsta. Most WordPress users run outdated PHP versions. That’s because most hosting companies won’t upgrade you automatically since it can break your site if you’re using incompatible plugins. That’s why whenever GoDaddy releases a newer version of PHP, you should upgrade ASAP.

How To Upgrade To PHP 7.3 On GoDaddy

  • Login to your GoDaddy account
  • Go to your Products Page → Manage → Settings
  • Upgrade to PHP 7.3
  • Check your website for errors
  • If you still see errors, revert to an earlier PHP version

GoDaddy Speed Optimization

 

3. Configure The Autoptimize Plugin

Your GTmetrix report may show errors for minify, Gzip, fonts, and other errors that can be fixed using the Autoptimize plugin. Below is a screenshot of my recommended Autoptimize settings.

Autoptimize JS CSS HTML Settings

If you’re using Google Fonts, these can also result in GTmetrix errors:

Google-Fonts-GTmetrix

Google Fonts can be optimized in the “Extra” settings, then select “combine and link in head”:

Autoptimize Combine Google Fonts

 

4. Remove Junk From Your WordPress Database

Install the WP-Optimize plugin then click ‘WP-Optimize’ (left in your dashboard). Running it deletes your trash, spam, post revisions, trackbacks, and garbage files. Since these are constantly accumulating, make sure you schedule WP-Optimize to run every 2 weeks or so.

WP-Optimize Clean Database

 

5. Add Cloudflare’s CDN

Cloudflare improves both your website speed and security. It improves speed by hosting your WordPress site on multiple data centers around the world (called a CDN or content delivery network) and reduces the geographic distance between your server and visitors. Sign up for a free plan, change nameservers to Cloudflare’s, then make tweaks in the Cloudflare dashboard.

Cloudflare Data Centers

1. Sign up for Cloudflare’s free plan, add your website, and run the scan. Cloudflare will walk you through a set of pages until you reach a page where Cloudflare assigns you 2 nameservers.

Cloudflare-GoDaddy-Nameservers

2. Login to your GoDaddy account and in your product list go to Domain → Manage DNS → Nameservers → Change. Click “custom nameservers” and add the ones Cloudflare gave you:

GoDaddy-Change-Nameservers

3. Go to Cloudflare’s speed settings (inside your Cloudflare dashboard) and copy these:

Cloudflare-Speed-Settings

4. In Cloudflare, go to the caching settingsPurge Everything.

Cloudflare Purge

This is all you need to do. It can take up to 72 hours for Cloudflare nameservers to propagate.

 

6. Optimize Images

We’ll use GTmetrix for this. Run your site through GTmetrix and in your report, you’ll see images can be optimized 3 ways. GTmetrix only shows unoptimized images for a single page so start by optimizing images that appear on multiple pages (logo, sidebar and footer images), then run your most important pages through GTmetrix and fix individual images on those too.

There are 3 ways to optimize images in GTmetrix:

  • Serve scaled images – resize large images to be smaller.
  • Specify image dimensions – specify a width/height in the image’s HTML or CSS.
  • Optimize Images – losslessly compress images.

image-optimization

Serve Scaled Images – GTmetrix tells you which images are too large and the dimensions they should be resized to. Find the image, crop or resize it, upload it to WordPress, then replace the old image with the new one. Follow your “image containers” and create a cheat sheet (below). You can manually check for large images by right clicking an image → copy image address then go to that URL where you should see if it’s too large. Never use the drag to resize feature in the visual editor since this only resizes the displayed image (not the actual image).

Sample cheat sheet:

  • Logo: 150(w) x 37(h)
  • Sliders: 1950(w) x 550(h)
  • Sidebar Widgets: 319(w)
  • Blog content body: 600(w)
  • Featured images: 200(w) x 200(h)
  • Carousel images: 225(h)

Specify Image Dimensions – refer to your GTmetrix report and expand these items to see which images need this. Locate each one in WordPress, then specify the dimensions (width/height) which GTmetrix will tell you. The visual editor takes care of this automatically so you usually have to do this with images that are in widgets, page builders, and other places.

specify-image-dimensions

Optimize Images – losslessly compress images using Imagify or Kraken (both are free until you reach the monthly limit). While there are other completely free plugins that offer unlimited compressions, do NOT use these since they have bugs, won’t work, or will break your images.

Imagify Instructions

  1. Install the Imagify Plugin
  2. You will be prompted with instructions
  3. Sign up for Imagify and enter your API key
  4. Set your compression level (normal, aggressive, ultra)… I use aggressive
  5. Imagif’em all (bulk compresses all images on your site)
  6. Once your limit is up, buy a plan or wait next month to reset your limit

imagify

imagify-wordpress-image-optimization

When you’re done, run your pages through GTmetrix and make sure all 3 items are 100%.

 

7. Avoid Slow Loading Plugins

You can use the GTmetrix Waterfall tab to see your slowest plugins:

Slow WordPress Plugin

The following plugins can take a long time to load. Many of these are in GoDaddy’s list of blacklisted plugins because (especially stat and related post plugins) consume a lot of CPU.

  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

Lightweight Plugin Alternatives

  • Meta Slider – minimal slider plugin with great reviews.
  • Envira Gallery – $29 lightweight gallery plugin. There’s also a free version but it doesn’t come with albums, tags, social integration, gallery templates, deeplinking, pagination, etc.
  • FooGallery – lightweight gallery plugin with great reviews.
  • Soliloquy Slider – fast, lightweight slider plugin.
  • UpdraftPlus – most popular lightweight (1-click) backup plugin.
  • Grow by Mediavine – lightweight social sharing buttons (the ones I use).

Plugin Tips

  • Deactivate and delete ALL plugins you don’t use
  • Diagnose slow loading plugins using GTmetrix Waterfall
  • Replace slow plugins with faster, more lightweight plugins
  • Disable individual plugin settings/modules you’re not using

 

8. Avoid Google Maps And AdSense

These kill your load times. Try to only use Maps on the contact page, or take a screenshot of the map (since a photo is quicker to load than an embedded map) and use an “Open In Maps” link.

Just like Google Maps require your site to pull resources from external websites and requests to your GTmetrix/Pingdom report, advertisements (eg. Google AdSense) are pretty much the worst thing you can do to your load times. Forget about using Google AdSense and start using affiliate links (they’re not only more profitable but they will also keep your load times down).

GTmetrix-Advertisements

 

9. Remove Bloat

The Perfmatters plugin by Kinsta takes care of what I like to call miscellaneous optimizations: disabling trackbacks/pingbacks, limiting post revisions, disabling the WordPress heartbeat API, limiting the autosave interval, and things reduce the load of your server and speed up your site.

Tips On Configuring Perfmatters

  • Disable heartbeat API
  • Disable pingbacks and trackbacks
  • Increase the autosave interval (I have mine a 5 minutes)
  • Change the login URL to improve security and stop spam bots
  • Set post revisions to 3-5 so you have backups, but you don’t need hundreds
  • Disable options in WordPress core which you don’t need (usually all of them)
  • Host Google Analytics tracking code locally (found in the Google Analytics tab)
  • Prefetch/preconnect third party scripts like Google Fonts in the “Extra” tab

perfmatters-settings

Disable Plugins On Specific Pages/Posts – one of the most valuable things about Perfmatters (which can also be done by the free Asset CleanUp plugin), is the Script Manager. This lets you disable plugins on specific pages/posts. A common example is disabling contact forms on all pages but the Contact page. You can do this with other plugins/scripts too (eg. social sharing buttons on your blog). Use Perfmatters or Asset CleanUp to only load plugins when necessary.

perfmatters-script-manager

 

10. Lazy Load Videos

A single video usually adds 2-3 seconds to your page load time. The WP YouTube Lyte plugin makes it so videos are only loaded once readers scroll down the page and click the play button.

 

11. Optimize Third Party Scripts

Third Party Scripts are Google Fonts, AdSense, Tag Manager, embedded YouTube videos, or even social sharing buttons on your blog. You can find all third party scripts loading on your site in your PageSpeed Insights report (and the Reduce DNS Lookups section in GTmetrix YSlow).

Some third party scripts are easier to optimize than others; Google Fonts can be optimized using the OMGF plugin. Google Analytics can be optimized with Flying Analytics. The Flying Scripts plugin can delay loading of Gravatars and comments if you have a lot of those on your blog. AdSense and Tag Manager are GTmetrix killers, and embedded videos can be optimized with WP YouTube Lyte. Be careful with scripts since they can slow down your GoDaddy site.

 

12. Host Google Analytics Locally

Flying Scripts fixes the “leverage browser caching” issue you’ll often see in GTmetrix and other speed testing tools. Just install the plugin, enter your Tracking-ID and the plugin does the rest.

Leverage-Brower-Caching-Google-Analytics

 

13. Find Your Slowest Loading Pages

Login to Google Analytics and on the left, go to Behavior → Site Speed → Speed Suggestions. Click “Page Speed Suggestions” to see recommendations, however the ones in GTmetrix are usually better. Most WordPress speed issues are related to your infrastructure (hosting, theme, page builder, plugins, etc) and not so much related to individual content (eg. optimizing images).

Speed-Suggestions-Google-Analytics

 

14. Keep WordPress Software Updated

Keep your software updated! WordPress, theme, plugins, etc.

WordPress Updates

 

15. Leave GoDaddy For Cloudways

With Cloudways DigitalOcean, you would be leaving one of the slowest hosts for the fastest.

Elementor Hosting

I signed up for 15+ hosting accounts to test their speed. All domains in this video are live, which means you can visit them in real-time and click through the pages, test GTmetrix, etc. gdaddyserver.com is on GoDaddy, cwdoserver.com is on Cloudways who was #1 in the tests.

Each website is identical except for it’s hosting (same Astra Starter Site, SSL, no caching, no CDN, and the same 6 plugins). I also used WP Hosting Performance Check and KeyCDN to measure the most popular options. The results align with what most people are saying in the WordPress Hosting Facebook Group which I recommend joining to get real, unbiased opinions.

I moved from SiteGround to DigitalOcean on Cloudways and the results speak for themselves. I’m also paying 1/2 of what I was. Cloudways also does free migrations which made it very easy.

SiteGround-vs-Cloudways

#1. DigitalOcean On Cloudwayscwdoserver.com was the fastest, is who I use, and are very popular in Facebook Groups (especially as an alternative to SiteGround). DigitalOcean is also the only host mentioned in the WordPress Optimization Guide. Cloudways was #1 in most recent Facebook polls and people who migrate usually see significant load time improvements. They use PHP 7.4, Maria DB 10.3, Memcached, Varnish, Nginx, and Redis. Pricing starts at $10/month with no strict CPU limits or renewal prices like on other hosts. The community manager is very helpful and they do free migrations. You can get 25% off your first 2 months with the promo code OMM25.

#2. Kinstaknstaserver.com had similar speeds as DigitalOcean on Cloudways only they are more expensive starting at $30/month. Known for being capable of handling many concurrent visitors. People consistently recommend Kinsta in Facebook Groups, Twitter, and in migration results. Even though they’re not always #1 in Facebook polls (likely because not everyone can pay $30+/month), they are great for high traffic sites.

#3. WPX Hostingwpxserver.com is also very quick, but Cloudways and Kinsta are slightly faster. Starts at $20-$25/month and is who Matthew Woodward recommends.

#4. A2 Hostingatwoserver.com usually outperformed other shared hosting but is not nearly as fast as cloud hosting (just cheaper). I use A2 for my girlfriend’s restaurant website and it’s decently fast with good uptimes. A2 (and all shared hosting) is only sufficient for smaller websites with low traffic/plugins. Otherwise, use cloud hosting.

#5. SiteGround – has gone downhill with many complaints about their renewal prices, price hikes, CPU limits, and support isn’t as good as it used to be. SiteGround shifted to Google Cloud hosting (instead of shared) which is supposed to be faster, but load times and TTFB on stgrndserver.com were usually above 1s. Their SG Optimizer plugin should help, but I still wouldn’t use them. You’re better off on Cloudways DigitalOcean.

Affiliate Disclaimer – I would seriously appreciate you using my affiliate links which means I earn a commission at no expense to you. This would help me make GoFundMe donations ($6,000 so far)! I try to base my recommendations on tests, Facebook polls, and conversations I see on a daily basis in the 30+ WP Facebook Groups I’m active on.

I would personally skip shared hosting since cloud hosting is exponentially faster. This is especially true if you’re on GoDaddy or EIG brands (eg. Bluehost and HostGator) and for resource-intensive websites running WooCommerce, WPML, page builders, or slow plugins.

There are plenty of migration results if you check Twitter and Facebook Groups. Avoid the bloggers promoting Bluehost and WP Engine because they have the highest commissions and do your research. Hosting is the #1 factor in WordPress’ optimization guide – very important!

Cloudways Response Times

Godaddy to DigitalOcean Migration

VPS Cloud Hosting WooCommerce Poll

Hosting Recommendations Facebook

2017-WordPress-Hosting-FB-Poll

2018 Hosting Recommendations

Favorite Hosting For Elementor

Untitled

Vultr Migration

WordPress Hosting Suggestions

VPS Cloud Hosting Poll

2016-WordPress-Hosting-FB-Poll

July 2019 Hosting Recommendation

Elementor Hosting Recommendations

Cloudways Thread

Cloudways Facebook Review

25% Off Cloudways With Promo Code OMM25

 

Get Help From My WordPress Speed Optimizer

Pronaya is a WordPress developer I found on freelancer.com who lives in Bangladesh and specializes in WordPress speed (yes, he’s better than me). I have worked with him for over 5 years and he optimized my site including multiple client sites to load 500% faster. He’s $40/hour with a perfect 5 star review on his freelancer profile. I have worked with over 20 overseas freelancers and he’s the one I always turn to for WordPress speed and development.

How to hire Pronaya – sign up for a Freelancer account and search for user BDkamol. Make sure the “online users” option is turned off, or email him at bdkamol@gmail.com. Serious inquiries only, and please do not tell him you expect a 100% score when you’re using slow hosting, bloated WordPress themes, and tons of plugins. Please review my WordPress speed guide and make sure you’re on good hosting and minimize plugins at the least (thank you!!!).

Pronaya-Kumar-S-Reviews

 

Frequently Asked Questions

✅ Is GoDaddy slow?

GoDaddy overcrowds their servers which is why they are able to offer cheap hosting. Strictly in terms of speed, GoDaddy is one of the slowest of shared hosting providers based on numerous Facebook polls and performance tests.

✅ How do you check server response times?

Run your site through Google PageSpeed Insights to check your server response time. It should be less than 200ms.

✅ What is the easiest way to improve load times on GoDaddy?

Upgrade to PHP 7.3 in your GoDaddy account, install the Autoptimize plugin, add Cloudflare's free CDN, clean your database with WP-Optimize, and use an image optimization plugin like TinyPNG. Avoid plugins that consume lots of resources and show multiple times in your GTmetrix report.

✅ Can you use a cache plugin with GoDaddy?

No, GoDaddy uses their own built-in caching system and blacklists cache plugins. The problem with this, is that cache plugins do a lot more for your speed than just caching.

✅ Will upgrading to a higher plan help?

It is unlikely this will permanently fix speed issues. Even on GoDaddy's Managed WordPress Hosting, performance tests have shown that load times were still slow.

✅ Which speed testing tool should I use?

GTmetrix is great for finding specific images, plugins, and third party scripts that need to be optimized. Google PageSpeed Insights is mainly good for measuring server response times.

Godaddy Managed WordPress Hosting Feedback

So…. did it work?
Let me know your new Pingdom/GTmetrix scores in the comments! Or if you need help fixing GoDaddy’s slow WordPress hosting, leave a comment and I’ll be glad to help with whatever I can. If it’s related to a plugin/tool I mentioned, keep in mind they also have their own support :)

See Also: How I Optimized My WordPress Site To Load In <1s

Please share if you liked this tutorial – I’d appreciate it!

Cheers,
Tom

The Ideal WP Super Cache Settings With Cloudflare/StackPath CDN

WP Super Cache is a solid cache plugin (if you’re going the free route).

Otherwise WP Rocket was rated #1 in 7 Facebook polls and is what I use (I have a setup guide for WP Rocket as well). But WP Super Cache is still a great choice especially because… it’s free.

I will show you how to setup the WP Super Cache settings including the Advanced, CDN, and Plugin tab. I’ll also cover Cloudflare, StackPath, and show you the difference between the two.

If you’re using an NGINX server, you will need to edit the configuration file to make full use of WP Super Cache, especially to use the disk-base cache. If you do not feel comfortable doing this, I recommend trying a different cache plugin (WP Rocket, WP Fastest Cache, or even W3 Total Cache), as these cache plugins do not require you to edit your NGINX configuration file.

Cache plugins, CDNs, and hosting are 3 major factors from the WordPress optimization guide. Aside from configuring your cache plugin with optimal settings and Cloudflare/StackPath’s CDN, I recommend joining the WordPress Hosting Facebook Group to see what unbiased people are saying. SiteGround was rated #1 in 20+ Facebook polls and is who I use. I’m on their semi-dedicated GoGeek plan which has 4x more server resources than most shared hosting with 100% GTmetrix scores and a .5s load time. They will also migrate you for free.

WP-Super-Cache-Facebook-Poll

Here’s how to configure the WP Super Cache settings:

WP-Super-Cache-Tabs

How To Setup WP Super Cache

  1. Easy
  2. Advanced
  3. CDN
  4. Contents
  5. Preload
  6. Plugins
  7. Debug

 

1. Easy

wp super cache - easy settings

Caching (Enable) – enables caching, an easy way to improve load times.

Delete cache – if you make updates to your website, especially to CSS or JavaScript files, and you see an old version of your page, deleting cache will refresh the page to the newest version.

 

2. Advanced

wp super cache - advanced.1

wp super cache - advanced.2

wp super cache - advanced.3

wp super cache - advanced, expiry time

wp super cache - advanced, garbage collection

wp super cache - advanced, filenames and exclusions

wp super cache - advanced, filenames and exclusions.2

wp super cache - advanced, lockdown

 

Caching (Enable) – enables caching.

Cache delivery method – simple mode is easiest and is recommended for non-programmers. Expert Mode uses Apache’s mod_rewrite feature to serve “supercached” static html files and is faster than simple mode… but if you’re uncomfortable editing PHP files, use simple mode.

Don’t cache pages for known users (Enable) –  enabling this doesn’t show cached pages for people who have been on your website before. This is good because regular visitors want to see new content (eg. in your blogroll) that otherwise wouldn’t show up if you disable this.

Don’t cache pages with GET parameters. (?x=y at the end of a url) (Enable)doesn’t cache pages that are different for each user (unique sales pages if you run Facebook/Google ads, membership profiles, conditional logic on contact forms). GET Params is a great plugin for this.

Compress pages so they’re served more quickly to visitors (Enable) – this is the “Gzip Compression” item in GTmetrix/Pingdom. After enable this, view your homepage and look for noticeable formatting errors. If there are any, disable it. Otherwise, definitely enable this.

Cache HTTP headers with page content (Disable) – makes cached pages faster, but also makes WP Super Cache use PHP file delivery (slower) instead of static file delivery (faster). It’s a trade-off, but if you use plugins that send extra headers, enable it. Otherwise, disable it.

Cache rebuild. Serve a supercache file to anonymous users while a new file is being generated (Enable) – shows the cached page if a new file is in the process of being generated.

304 not modified browser caching. Indicate when a page has not been modified since it was last requested. (Enable) – prevents updating the cache on ‘tag’ pages (saves server resources).

Make known users anonymous so they’re served supercached static files – counters the earlier setting “don’t cache pages for known users” and instead, it caches for everyone.

Enable dynamic caching – (Enable) – enables caching for dynamic content (content that is changing) like ads, a publicly displayed visitor count, or even Amazon’s recommendations.

Mobile device support. (External plugin or theme required. See the FAQ for further details.) (Enable) – if using mobile plugin like WPtouch, or a mobile theme, this caches mobile pages.

Remove UTF8/blog charset support from .htaccess file. Only necessary if you see odd characters or punctuation looks incorrect. Requires rewrite rules update – (Disable) – if you see weird characters on your website (Â â €™ ¢), this should fix it. Otherwise, leave it disabled.

Clear all cache files when a post or page is published or updated – Enable) – if you publish a post, and you also have a blogroll (eg. on your homepage) and want to make sure it’s updated with the newest post, this will clear the cache and make sure the new content is being shown.

Extra homepage checks. (Very occasionally stops homepage caching) (Enable) – similar to the previous setting, this makes sure your newest blog posts are being shown on the homepage (if you have a blogroll). This is also applicable to dynamic content on the homepage.

Only refresh current page when comments made – enable this if you have lots of comments, as readers want to see the latest content (you don’t want to refresh all the cache to do this).

List the newest cached pages on this page (Disable) – shows which pages have been cached.

Coarse file locking. You do not need this as it will slow down your website  (Disable).

Late init. Display cached files after WordPress has loaded (Enable) – allows content to stay dynamic. If you see the error “super cache dynamic page detected but late init not set” fixes it.

Cache location – Don’t Change – don’t change the path, the default path is fine.

Cache Timeout – 3,600 is good for most websites, high traffic websites can lower this to 1,800. This is the frequency cached pages expire and will be thrown away. If you set it too slow, users will never see cached version. If too fast, it can consume lots of server resources.

Accepted filenames & rejected URIs – specify pages you don’t want to be cached. The most common use for this is excluding eCommerce pages or pages that are updated very frequently.

Examples:

  • /shop/
  • /shop/account/
  • /shop/checkout/
  • /shop/cart/
  • /shop/confirm-order/

Rejected user agents – prevents user agents from caching pages. The most common ones are search engines like Googlebot and Bingbot, but here is a complete list of user agents you can view. If using WPtouch, you will also want to add their entire list of mobile user agents here.

Lock down – prepares your server for an expected spike in traffic (during lock down, new comments on a post will not refresh the cached static files). This will save on server resources and help prevent your site from crashing. Only enable this if you notice traffic skyrocketing.

Fix configuration – restores the default WP Super Cache settings.

 

3. CDN

A CDN (content delivery network) hosts your heavy website files on multiple data centers around the country/world, which reduces the geographic distance between your server and visitor. This reduces load times and is recommended in the WordPress optimization guide.

StackPath is one of the most popular CDNs and is what I use on my site . They have 45 data centers heavily located in the US and amazing support who helped improve my GTmetrix YSlow score by 8%. KeyCDN is also good, but I’ve been very happy with MaxCDN/StackPath.

StackPath vs. Cloudflare – Cloudflare is free, StackPath starts at $10/month with a free 30-day trial. Cloudflare has it’s own data centers, StackPath has their own data centers. Generally the more data centers, the better, and the more resources you can offload to them (making your site load even faster). StackPath comes with a support team who will help you configure it (there is no support with Cloudflare’s free plan). StackPath support was able to significantly improve load times and improve my GTmetrix YSlow score by 8%, which was totally worth it.

Step 1: Sign up for a 30-day trial, then use the steps below. (StackPath also has a tutorial).

Step 2: In the StackPath dashboard, click the CDN tab, and create a StackPath CDN Site

StackPath-CDN-Tab

StackPath-CDN-Domain

StackPath-Server-IP-Address

Copy your server IP address – it is needed in step 6 of this section.

WP-Super-Cache-StackPath-CDN-URL

Step 3: Paste your CDN URL in WP Super Cache’s CDN tab under “Off-Site URL” and “Additional CNAMES.” If using SSL, also check “skip https URLs to avoid mixed content” errors.

wp super cache - cdn settings

wp super cache - enable cdn

Step 4: In StackPath go to CDN → Cache Settings, then click “Purge Everything”…

StackPath-Purge-Cache

Step 5: Copy your server’s IP address from step 2 (you can also find it in your hosting account). Then whitelist your server IP address in StackPath by creating a WAF site (WAF → Firewall).

StackPath-Whitelist-IP

Step 6: Run your site in GTmetrix and “content delivery network” should be green in YSlow.

CDN GTmetrix YSlow

Be sure to contact StackPath’s support as they were able to tweak my settings to further improve grades. They have one of the greatest support teams – I would definitely utilize it.

 

4. Contents

As long as your “cache timeout” is set appropriately in the Advanced settings, your expired cached pages will be deleted and they won’t put stress on your server. When working on site, you may also be making changing to CSS/JS (eg. background images) and see a cached version (or you may not see that your CDN is working). In this case, deleting the cache should fix this.

WP-Super-Cache-Contents-Setting

Delete cache – refreshes the cache in case you see old cached versions of your pages.

 

5. Preload

Preload is a refresh when the cached pages are all cleared out and refreshed in one go. I would enable it since this improves both website/indexing speed. However, preload consumes a lot of server resources which puts stress on your server and can make your website slow. By default, it set to refresh preloaded cache files every 600 minutes. But you should increase this number if it’s putting stress on your server, especially if you’re on shared hosting. You can also leave it to 0 if you do not want static files to expire ever unless you manually refresh the cache.

WP-Super-Cache-Preload-Settings

 

6. Plugins

Leave everything as-is, unless you are using the Bad Behavior pluginWordPress MU Domain Mapping plugin, or WPtouch plugin, in which case you would enable compatibly for those.

WP-Super-Cache-Plugins-Settings

 

7. Debug

WP-Super-Cache-Dubug-Settings

 

Cloudflare

WP Super Cache does not have a direct way to setup Cloudflare, but this is very easy and I definitely recommend using Cloudflare’s free CDN. Many hosts (including SiteGround) have an option to activate Cloudflare in their cPanel with 1 click. This is by far the easiest method.

SiteGround-Cloudflare-Activation

If your host doesn’t have this option, follow the steps below…

1. Sign up for Cloudflare and you will be prompted to add your website then begin a scan.

cloudflare-begin-scan

2. Once the scan is complete, select the free plan, then Cloudflare will take you through a set of pages. You will eventually be taken to a page where Cloudflare assign you 2 name servers

Cloudflare-Name-Servers-Dashboard

3. Do a Google search for “how to change name servers on SiteGround” (only search for your host), then follow their instructions. You will be copying the 2 name servers provided by Cloudflare and pasting them into a custom name servers option in your hosting cPanel…

SiteGround-DNS-Records

4. Go to your Cloudflare speed settings and make sure Auto Minify and Rocket Loader are turned OFF, but SG Railgun is on.

Cloudflare-Speed-Tab

5. Cloudflare says “we recommend that you create a Page Rule to exclude the admin section of your website from Cloudflare’s performance features. Features such as Rocket Loader and Auto Minification may inadvertently break backend functions in your admin section.”

Add these 2 page rules in your page rules settings

Cloudflare-Page-Rule-WP-Admin

Cloudflare-Page-Rule-WP-Preview

6. Finally, go to your Cloudflare caching settings and purge individual files

Purge Individual Files Cloudflare

Done!

Watch My Video – it’s a 42 minute video, but I cover pretty much everything (timestamps in video description) and you should learn a ton of great information on WordPress site speed:

 

SiteGround (#1 Host In Facebook Polls)

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.

How To Check If Your Hosting Is Slow
Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. Google recommends it should be <200ms. Anything above 1 second is not good. You can also check your TTFB (time to first byte) in GTmetrix’s Timings tab or bytecheck.com.

Reduce Server Response Time

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

SiteGround is 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-Plans

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 with my affiliate link I will donate a good chunk at no expense to you. Each year I donate $3k 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. 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 are a stellar WordPress host and your site will run faster/smoother… do your research on Facebook groups + Twitter and you’ll find most people say the same.

OMM-On-SiteGround

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

 

Frequently Asked Questions

🚀 Is WP Super Cache a good plugin?

It's usually not the top rated plugin in Facebook polls and I have personally gotten better results with WP Rocket and other cache plugins. Every website is different - you need to configure and compare the results of different cache plugins in GTmetrix one at a time.

🚀 How do you setup Cloudflare with WP Super Cache?

Sign up for a free Cloudflare account and change nameservers (in your domain registrar) to the ones Cloudflare provides you with.

🚀 Will multiple CDNs further improve speed?

In theory, yes. More CDNs = more data centers = faster delivery of your content and more offloading of resources which should lighten the load on your server. Cloudflare's CDN is sufficient for most websites, but if you're obsessed with speed, try StackPath or KeyCDN.

🚀 How does WP Super Cache compare with WP Rocket?

WP Rocket has more speed features than WP Super Cache (database cleanup, optimizing Google Fonts + Analytics, heartbeat control) and is easier to configure, but WP Rocket is also a premium plugin. If speed is very important, give WP Rocket a go.

🚀 What other speed plugins do I need besides WP Super Cache?

You will need a plugin for optimizing fonts (OMGF), database cleanup (WP-Optimize), Heartbeat Control, optimizing Google Analytics (CAOS), and selectively disabling plugins (Asset CleanUp or Perfmatters). These features are not built-in to WP Super Cahce.

See Also: How I Optimized My WordPress Site To Load In <1s (36+ Tips)

Did it work?

Let me know in the comments!

Cheers,
Tom