How Niche Site Project went from 6+ second load times to less than 1 second…
Why is site speed important?
Do you like a website that loads slowly?
No way. No one does.
Well, I don’t have to tell you how annoying a slow loading website is. It doesn’t matter if it’s a blog, a news site, or a banking site – slow is bad.
A slow site leads to higher bounce rates, lower conversion rates, and a poor user experience overall.
Today, we’re going to talk about speeding up the load time of a WordPress website.
You should be able to get your load time down to under 3 seconds. 1 second or less is preferable.
Some pages or posts that are image heavy may have longer load times – that’s okay. Your homepage should definitely load very fast.
This post is has a couple main sections.
- The 6 steps that you take to improve the speed (at a high level).
- A case study of Niche Site Project.
- A Checklist of the items that need to be audited and potentially improved.
- Details about each of the items in the checklist. This includes a video of setting up W3 Total Cache.
- Details about the 6 steps that you need to take to implement the changes.
Steps to Improve the Speed of a WordPress Site
- Determine the baseline speed.
- Audit your website.
- Determine what improvements you should implement based on the audit.
- Make one improvement.
- Check the speed to see the results.
- Repeat the process of making a change & checking the results.
Case Study of Niche Site Project – Does this stuff work??
Oh, yeah. It works!
Before (6 sec)
I don’t have a screenshot for the homepage before. Sorry. But I know it was taking about 6-8 seconds to load the home page!
It was super slow due to images, widgets on the sidebar, and 10 recent posts being displayed.
After (0.7 sec)
Now, the homepage loads in less than 1 second.
Before (10.9 sec)
Slower than 88% of all the tested websites.
This post is an earnings report and it has a lot of images.
After (1.5 sec)
Faster than 80% of all the tested websites.
I could make further improvements if I optimized the images a little more.
Before (11.5 sec)
Slower than 89% of all the tested websites.
This post is a round-up and it has a lot of images.
After (2.62 sec)
Faster than 59% of all the tested websites.
Same here: I could make further improvements if I optimized the images more.
Disclosure: There are affiliate links on this page, and at no additional cost to you, I will earn a commission if you decide to make a purchase. I have experience with each of the products or services listed below so I feel fully comfortable recommending them. Please do not spend any money on the products unless you feel you need them to achieve your goals.
There are several things that we can optimize to help speed up a site. Some things will help a minor amount, like cleaning the database.
Other things can help a lot, like upgrading your hosting plan.
Let’s divide the items into two main areas.
One is more foundational and we can consider it the infrastructure of the website. This will be hosting, the WordPress theme, a caching plugin, and implementing a CDN.
The other part deals with the day to day workings of the website, plus extras. It will become clear once we get into the details.
Checklist & Summary
All of these items are generally in order of impact. Some impacts may vary and it depends on the specifics of your website, hosting, etc… For example, if you upgrade your hosting, you’ll probably see much faster load times even if you don’t change anything else.
The Infrastructure
Hosting – Upgrade to Semi-dedicated, Pro, Business, or WordPress Optimized Hosting from Basic Shared Hosting.
Fast Theme – Use a fast theme. Free is fine as long as it’s fast.
Caching Plugin – There are many options out there and the free ones are fine to use.
Use a CDN – I use MaxCDN since they seemed faster than the free version Cloud Flare.
The Rest
- Check your plugins – Get rid of the plugins you don’t need.
- Use the Plugin Performance Profiler (P3) to identify the resource intensive plugins.
- Image Size – Use images that are the right size and compressed with the proper file format.
- Use the Smush.it plugin to make the process easier. It processes images as you upload them and has a feature that will optimize your current images.
- Clean the Database (DB) – This isn’t complicated since we can just use a plugin.
- Use the WP Optimize plugin to make the process easier. Just be sure to deactivate and delete the plugin when you finish cleaning the DB.
Next, let’s review some of the details about each one of the items.
Hosting
Using a quality host is a big deal. A slow server can cause major issues for the load time of your website.
What is the biggest culprit?? You might think that it if you use a big name host that you’ll automatically get a fast server.
Nope.
Here is the problem: most of us start out on a basic Shared Hosting Account. That’s fine to start with but once a website starts to get some traffic you need to move to a higher tier hosting plan.
The basic plans end up hosting your website on a server that has 100s of other websites on it.
When I checked my server, I saw there were over 500 other domains on the same IP address.
So, we need to get your website a server that has fewer users, and moving to a more expensive plan usually takes care of it.
This might be called a “Business,” “Premium,” “Semi-dedicated,” or “Pro” plan. It may still be a “shared” type account but there will only be a few other domains on the same server. There should not be 100s of other domains on there.
This is much faster! Just making this change can make a tremendous difference.
It’s really amazing!
I started on a basic, shared hosting account at Blue Host for my niche sites. I upgraded to a WordPress optimized-type account which is fantastic. I can’t say enough about the improvement.
Site Ground took care of the migration too. They took care of everything for me and explained the process before the migration.
The basic, shared accounts usually cost about $3 – $6 per month. It is the best way to get started if you’ve never had a website before.
When it is time to upgrade and migrate your account, you can almost always do this free of charge. Plus, you can get a pro-rated refund on the remainder of your existing account.
The better plans usually cost about $25 – $30 per month. There are other plans that fall in the space in between.
This website, Niche Site Project, is hosted over at MDD Hosting. My friend Lewis at Cloud Income told me about MDD and highly recommended them.
They are a much smaller company but offer great service, prices, and support. I have the Premium Hosting – Basic level with MDD. They say this about the Premium Hosting:
Premium servers have only 1 to 3% of the total accounts the hardware would normally support and Pure SSD storage is used to ensure maximum speed all day, every day. All Premium accounts have access to 2 CPU Cores on the server as opposed to the limit of a single core per account in our standard shared hosting.
I pay about $20-25 per month at MDD and you can see the speed results above. I am very happy with the hosting there.
Select a fast theme
I used to think this didn’t matter very much. It does matter.
If you are going to use a free theme, I encourage you to use the default WordPress Themes. 2012, 2013, and 2014 all look fine. They are clean and fast.
I use Thesis here on Niche Site Project and a lot of my friends really like Genesis. Check out either one of those.
Use a Caching Plugin
I use W3 Total Cache. It’s a free plugin and very easy to configure. I found this site really helpful when I was trying to figure out the best settings for W3 Total Cache.
It’s pretty straightforward, although if you do not configure your caching plugin properly it might actually slow down your site.
Here is how I configure W3 Total Cache:
Use a Content Delivery Network (CDN)
This is a game changer. The basic idea is to put the content of your website geographically closer to the end user.
That’s it. It’s simple and easy to understand.
These CDN companies have servers located all over the world.
Certain data is stored on the CDN servers in addition to your hosting company’s data center. If an end user can get data from a closer location via the CDN, it speeds up the response time.
I use MaxCDN as I mentioned in the video above. I initially tried to use CloudFlare since it was free with Blue Host. However, it actually made the whole site load slower! Maybe it was user error, i.e. my fault.
I do see a lot of people using CloudFlare and MaxCDN so see which one works best for you.
It takes a little more configuration to set up the CDN. It isn’t hard though. It took me less than an hour to sign up and configure the caching plugin plus everything on my MaxCDN Dashboard.
Check Your Plugins
There are so many plugins available out there, and they can do just about anything you can think of.
However, the more plugins you have on your WordPress site, the greater the load on the server is.
All those plugins can slow things down.
I like to have less than 10 plugins installed. That’s it…Only the critical ones make the cut.
I’m a minimalist for plugins so take a hard look at what you have installed. Question every plugin and if it isn’t required then deactivate it.
Once you have removed the unnecessary plugins, download this one: The Plugin Performance Profiler.
See which plugins are slowing down your site. This plugin creates a performance report for your site. If you have a particularly slow plugin, take action to replace or delete it.
After you get rid of the plugins that are slowing things down, then you should deactivate the P3 Plugin.
Keep this technique in mind – some plugins can be activated, used, and deactivated to keep things clean and fast.
Image Size
You should optimize the images that you use on your site. So, resize the images to something that’s appropriate, like 480 x 640 or so.
If you need to have a higher resolution, then you can display a smaller one and link to a larger image.
The Smush.it plugin is fantastic. Download load it and use it.
Every image you add to a page or post will be automatically run through Smush.it behind the scenes. You don’t have to do anything different.
Database Clean Up
The WordPress database can get a little messy over time. WP is great since it will automatically save different versions of a post or page.
In fact, WP saves like every version and draft. All that adds up and it’s worth while to delete those extra versions.
Download WP Optimize and clean up your database.
Simple but effective plugin allows you to extensively clean up your WordPress database and optimize it without doing manual queries.
Here is what to do…
Step 1: Determine Baseline Speed
How to get a baseline speed test?
Here are two tools that I use – Pingdom & GTmetrix. Both are free and do the exact same thing.
They both check the page speed and automatically provide some very good recommendations.
Pingdom – https://tools.pingdom.com/fpt
I use pingdom more often. I like the feature that allows you to test from different locations – Amsterdam, New York City, & Dallas.
GTmetrix – https://gtmetrix.com/
GTmetrix also provides the YSlow score. The YSlow analyzes web pages and why they’re slow based on Yahoo!’s rules for high performance web sites (reference).
Get the baseline speeds for your homepage and spot check about 3 to 5 other pages.
Check the pages that get the most traffic.
Record these values so you can see how much each measure you take improves the speed.
Step 2: Audit your website
Review the checklist and the details above. Audit your website and identify the areas that need to be corrected.
Step 3: Determine what improvements…
Determine the next steps for each of the items that require action.
After reviewing the list of items above, you should have several areas to look at. Figure out which steps you need to take to improve your site speed.
The items are generally listed in the order of how much of an improvement they will make. You should rank your list by the relative priority with you best guess.
For example, if you need to upgrade your hosting plan, check with your current hosting about upgrading so you know the costs, migration process, and if they believe your site would benefit from a better hosting plan.
If you don’t feel good after talking to them, you should consider talking to another company. There are plenty of them out there so you should feel totally comfortable asking any questions.
You should develop a timeline for each of the next steps too. You can set aside one day to talk to the hosting company and schedule the migration. You can set aside another couple hours to work through all of your plugins.
And, so on…
Step 4: Make one change…
Implement one of the improvements.
You might wonder why we are only changing one thing at a time. It’s a good question.
We want to know how much improvement we get from each step. There are two main reasons:
- You can roll back changes that are not helpful. This can potentially save money. Let’s say you try to use a CDN solution and there is no impact to your website’s speed. Then, cancel the service and save $7 per month.
- You will learn about what has an impact. Perhaps you can make all the changes for your current website. But in the future you can take the knowledge you learn here and apply later. I know that upgrading the hosting, using a CDN, and configuring a caching plugin makes a HUGE difference in load times.
Step 5: Check the speed…
Now, you can see how much of an improvement you’ve made.
You only made one change, right?
Continue recording the speed improvements while checking the same pages each time.
Step 6: Repeat…
Continue working through your list of improvements. Most likely you should have a website loading under 3 seconds for almost all of your pages.
Your homepage will probably be loading under 1 second, along with most of your pages and posts that are not particularly image heavy.
How fast does your website load?
Do you have additional tips that can speed up a WordPress Site?
If so, leave let me know in the comments below.
Great advice Doug. I recently went through the same steps for my blog and saw similar improvements.
I find the caching plugin accounts for a large percentage of the time savings, but I also finding myself turning it off and on when I’m testing out things )
Thanks, Alistair! I like the latest changes on your site. Looking great, and very fast!
It might be a bit slow sometimes… I keep turning the cache on and off )
I’m developing a smart content plugin that will hide or show content based on subscriber status.
I hope it will be an easy way to create a VIP version of my site and reward subscribers with extra bonus content throughout. I’m planning on taking content upgrades to a new level )
Thanks Doug! As I said on Twitter, hadn’t heard of Smush it, just tried it out and seems awesome! I’ve been using ImageOptim for Mac which is great but smushit was great for doing some old images already on the site. I’ve always had problems with caching plugins and Thesis…but I guess that’s only been during development and I should turn it on after. Great tips here, super useful and important for people to know!
Hey Leah – Thanks for swinging by. Yes, I had some issues with caching whenever I am making changes too.
Keep up the great work at Freelance To Freedom Project!
Nice post Doug. Got my site from about 5 secs down to 1.15 secs with 30 minutes of work. Are you ever going to change your header logo? Or… is that kind of like your thing now?
Really really niche tips, i have a site call Belajar SEO Google In Indonesia (my country), and i just wanna get a proof what these plugin works, so i install them in my website. And after seeing it, i think it’s have progress for speed when opening my member.
Pingdom website says my website load time 4.86 second and Getmetrix says 15.0s which website is reliable and I want to say, You saw your website loading time 1.5 s which website measure 1.5 s.
Hey Ahmed, I’m not sure I understand your comment/question exactly… But I think you’re asking which tool is reliable. I like Pingdom myself, but you should experiment with both on different sites. If you see that yours is showing different loading times, yet other sites are consistent, then your site is the issue.
Good Luck!
Hi Doug, thanks for the info on speeding up your website I found it rather useful. Although I felt I should inform you regarding your website, I first viewed your website on my mobile and found that your first image was taking up a lot of space. Otherwise your site looks fabulous, here’s the image http://nsp.nichesiteproject.netdna-cdn.com/wp-content/uploads/2014/12/green-smile-small.jpg
I hope you don’t mind me reaching out and letting you know, I would hope someone would do the same for me. Anyways cheers
Hi Doug,
Thanks for another great post. Do you think it is worth it to pay for a CDN? I didn’t know much about them until this post. Seems like it could be handy but comes with a monthly fee.
Hi Doug,
You write a Nice Article, This Guide Helps for Beginners in WordPress, You Have Mentioned Best WordPress Caching Plugin It’s Free, I Want to Recommend WP Rocket Caching Plugin It’s Similar to W3 Total Cache plugin But It’s Available Only Paid Version and For MaxCDN Alternate I can Recommend Amazon Cloudfront on this you will get 1 year free tier.
Balaji, Thanks for the recommendation.
A lot of good tips- I hired a developer for some speed fixes. Sometimes screwing around with this stuff on your own- you can end up breaking your site. I’ve done that in the past.
Good advice. The only thing I would update is the part on Thrive. I think based on your recent videos you no longer recommend them. I personally really regret using a Thrive theme and the Thrive Content builder/Thrive Architect-
wish I would have used something other than Thrive.
Thanks, Marcel. Updated…I totally forgot about mentioning Thrive.
Hi Doug…Brilliant post, as usual!
You mentioned that you when you had checked your server, there were over 500 other domains on the same IP address.
I have no idea just how many other domains on my server use the same IP, which is kind of worrying.
Can you suggest how I will find this out, please?
Many thanks in advance
James
@Marcel @Doug Why/what do you regret about thrive? I’m using it now, but am considering dropping it. It feels bloated, but I’m a newbie and am still tinkering. Thanks in advance?
I think it’s bloated overall. There are too many options so it leads to overusing them and wasting time.
Once you do use them, it’s a HUGE pain to migrate. So you end up sticking with it. Also, the support is terrible — it’s in a forum and very slow to get any help.
Great article. Thanks for the detailed instructions. Just one question.
I have heard the installation of plugins does not affect load speed. It is the activation of the plugins that slow down a website.
Should your statement, “I like to have less than 10 plugins installed. That’s it…Only the critical ones make the cut.” be changed to “I like to have less than 10 plugins activated. That’s it…Only the critical ones are active at any given time.”
@Doug, @Marcel –
I’ve been doing a lot of research on thrive themes plugins. Everyone says its great, buy it through my link and you’ll love it 😉 However, comments from real users like yours give me pause. What do you specifically not like about thrive and what alternatives do you recommend instead? fyi I’ve been looking at it b/c it seems to be what i need since I’m not a coder. I’m looking for a WYSIWYG experience for setting up my first WordPress site and some of the other builders seem to have there own problems and downsides IMO. I appreciate any feedback from real users!
JD, It’s hard to use, slow, and the support is terrible.
You can read more of my thoughts here.
I literally tried to change a few lines of text in the Thrive Architect and I was never able to do it. So even if there was some type of user error, which I assume so, it should NEVER be so complicated that you can’t change text in a simple way.
Finally, how can you trust a review when the person is getting paid, especially if you see that they don’t list any cons or downsides? It just doesn’t add up. And trust me, it’s a piece of shit and I’m an affiliate for Thrive.
Hi Doug,
Do you have any details on the CDN setup?
I understood that without special care then your Google juice from images, infographics etc hosted on the CDN gets pointed to the host wherever it is in the world rather than back to you?
Hey Rob, I’d consult the CDN company for feedback.
I haven’t heard about the “Google Juice” issue that you’re describing, but I think that would only apply if some website linked to the CDN file. That would be weird. So I wouldn’t worry about it.