Reducing Page Load Time in Wordpress
In this post, I’m going to go through a series of steps to make a website faster. We start things off by discussing the importance – according to Google – that your site must be blazing fast. I then discuss how vital it is to choose a fast web host. I then dive into making changes to a website and measuring the impact of those changes as I go through an iterative process of site speed improvement.
Video
The video below provides insight into the process that I took to make my client’s website faster.

The Process
Before getting started, note that if you’d like to follow this process on your own site, make sure you do it in a test environment and not on your live website!
There are steps in here that are 100% guaranteed to break (temporarily) your website, and you need to have a way to restore your site.
Create a test environment for your production site, and back up frequently so you don’t have to reapply what you’ve already performed.
Google: You’d Better Be Fast
Google went on record back in 2010 saying that site speed is a signal used in ranking pages in search engine results.
Having a page that loads quickly is essential for you to get more business from your website visitors. The longer it takes your web page to load, the more likely it is that people will leave – or “bounce”.
As your bounce rate increases from 1 second to:
- 3s – 32% increase in bounce probability
- 5s – 90% increase in bounce probability
- 10s – 123% increase in bounce probability
Get a Fast Web Host
Go with Dedicated - Not Shared Hosting
Get Managed WordPress Hosting
Some managed hosts will also allow you to set up multiple environments for your website. This can make it easy to migrate your website from a development environment to staging to production.
Having these different environments is vital, especially when you’re conducting tests – like the focus of this article – which is making your website faster. You’ll want to conduct anything remotely risky in a test environment rather than on your live website.
Choose a Host with A CDN
Web Host Options
Beware of Reviews
Step 1: Measure Baseline Speed
In order to measure the effectiveness of our tweaks to improve page speed, we need to start out with a baseline home page load time.
- Try to use the closest server to your location if possible
- Always use the same server
- Try to take multiple test results after making a change (around 3 tests should do it)
- Don’t compare results between tools – the tools measure different aspects of “speed”
Baseline Test


Our goal is to make changes to get Pingdom below 1.89 seconds, and GTMetrix lower than 6.2 Seconds.
(B) Page Size – Both tools also provide page size data. You’ll want to look at page size because it tends to correlate well with load time. If your pages are smaller they will generally tend to load more quickly
(C) Requests – Both tools show the total number of requests. A reduction in total number of requests generally correlates well with a lower load time.
(D)Performance Grade – I don’t care about the letter grades. While these are associated with best practices, improving a letter grade doesn’t necessarily mean that your page load time will increase.
Page Speed Score Card (Baseline Speed Test)
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | ||
ShortPixel Image Optimization | ||
Wordpress Scripts | ||
Autoptimization Speed Plugin | ||
Cloudflare CDN |
Step 2: Use a CDN
CDN Overview
A content delivery network (CDN) is a distributed network of servers that each contain a copy of your website content. The servers are spread out geographically, and the goal is to reduce the time to load your website content by having a server physically near the person who is visiting your website.
CDN Setup
Quality web hosts offer CDN to their clients in order to make their sites load much faster for their users. Below is a screenshot of the WPEngine hosting interface which allows you to take advantage of their CDN by just clicking a button.

CDN Implementation Test Results


GTMetrix: 2.6 seconds (was 6.2 seconds)
Page Speed Score Card - After Applying Webhost CDN
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | 1.66 (▼.23) | 2.6 (▼3.6) |
ShortPixel Image Optimization | ||
Wordpress Scripts | ||
Autoptimization Speed Plugin | ||
Cloudflare CDN |
Step 3: Optimize Images with a Plugin
Image Optimization and Compression Overview
In a perfect world, you would resize and compress all images for your website to the perfect size and resolution prior to upload.
In reality, putting together web content is quite messy. Adding images to a website is a trial and error process. As a result, you’ll find yourself uploading images without optimizing to see how they’ll look on a page.
1) Resize and Optimize Each Image on Your Site
Going through each image on your website is likely going to be a tedious process that yields relatively little benefit for the time you’re putting into it, and I don’t recommend it.
Use an application like Screaming Frog to analyze all images on your website. This will give you a quick look at any images that are large and have the potential to be optimized. The simple process works like this:

(2) Click on the images tab and sort by image size (descending)
(3) Click on the “Inlinks” tab on the bottom
Plugins will automatically optimize your images to reduce their overall size, and in turn help your site to load more quickly.
In most cases, you’ll want to choose options #2 AND #3. First, do a quick check with Screaming Frog to see if there are any bloated images that could be easily optimized. Then, use an image optimizer plugin to reduce the size of your images (without reducing the quality of the images).
Image Optimization Setup
I’m not a ShortPixel expert, but the following steps worked well enough for me. From the general tab, I went with the “Lossy” recommendation. I also include thumbnails and backup all original images as shown in the screenshot below.

I’m not a ShortPixel expert, but the following steps worked well enough for me. From the general tab, I went with the “Lossy” recommendation. I also include thumbnails and backup all original images as shown in the screenshot below.


Image Optimization Test Results


Pingdom: 1.65 seconds (was 1.66 seconds)
GTMetrix: 2.5 seconds (was 2.6 seconds)
Page Speed Score Card
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | 1.66 (▼.23) | 2.6 (▼3.6) |
ShortPixel Image Optimization | 1.65 (▼.01) | 2.5 (▼.1) |
Wordpress Scripts | ||
Autoptimization Speed Plugin | ||
Cloudflare CDN |
Step 4: Modify Default Wordpress Loading
These scripts are courtesy of my friend Tim Bowen over at Creative Slice. I should say that these scripts are not for the faint of heart and you should only try them in a development or test environment as there is a strong possibility that they will break your site.

Scripts Test Results


GTMetrix load time actually increased from 2.6 seconds to 3.3 seconds
Page Speed Score Card
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | 1.66 (▼.23) | 2.6 (▼3.6) |
ShortPixel Image Optimization | 1.65 (▼.01) | 2.5 (▼.1) |
Wordpress Scripts | 1.08 (▼.57) | 3.3 (▲.08) |
Autoptimization Speed Plugin | ||
Cloudflare CDN |
Step 5: Use a Speed Optimization Plugin
Speed Optimization Plugin Overview
Autoptimize Setup
For the most part, I just went with the default options offered by the plugin.



Autoptimize Test Results


GT Metricks went from 3.3 seconds to 3.1 seconds
Page Speed Score Card
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | 1.66 (▼.23) | 2.6 (▼3.6) |
ShortPixel Image Optimization | 1.65 (▼.01) | 2.5 (▼.1) |
Wordpress Scripts | 1.08 (▼.57) | 3.3 (▲.08) |
Autoptimization Speed Plugin | 1.04 (▼.57) | 3.1 (▼.02) |
Cloudflare CDN |
6. CloudFlare CDN
Cloudflare Overview
CloudFlare Setup
Cloudflare setup is usually quite easy. With a couple of exceptions I’ve had few issues using Cloudflare as my CDN.
You’ll want to get set up on Cloudflare during off hours so as not to disrupt your website traffic (or your business). Here are the general steps involved:
- If you have a CDN already through your webhost, disable it
- Sign up for Cloudflare
- Review and adjust your DNS Settings in Cloudflare – this information is imported from current nameservers, so it should be mostly accurate
- CloudFlare provides you with nameservers
- Go to your registrar and replace your nameservers with the nameservers provided by Cloudflare
- Adjust your settings within Cloudflare. Settings that I set up are shown below
SSL/TS
I have found that Flexible is the best option for encryption mode (shown below). I ran into issues when using Full.

Speed (Under the Optimization Setting)


Cloudflare Test Results


GT Metricks went from 3.1 seconds to 4.7 seconds
Page Speed Score Card (FINAL)
Implementation | Pingdom Load Time (seconds) | GTmetrix Load Time (seconds) |
---|---|---|
Baseline Speed Test | 1.89 | 6.2 |
Webhost CDN | 1.66 (▼.23) | 2.6 (▼3.6) |
ShortPixel Image Optimization | 1.65 (▼.01) | 2.5 (▼.1) |
Wordpress Scripts | 1.08 (▼.57) | 3.3 (▲.08) |
Autoptimization Speed Plugin | 1.04 (▼.57) | 3.1 (▼.02) |
Cloudflare CDN | .665 (▼.38) | 4.7 (▲1.6) |
Conclusion
Many of the plugins and CDN features I utilized for this analysis actually have overlapping features. This makes it difficult to properly attribute reduced page load to a specific action.