How To Speed Up Your WordPress Website

Most of us are aware of the benefits of speeding up your website. The quicker a page loads, the more time a visitor is likely spend on your site, and if they stay longer on your site they are more likely to make you money (purchasing a product, clicking on an affiliate link etc). Pages which are quick to load also use less bandwidth and since major search engines like Google take speed into account when ranking your site, you should see an increase in traffic too indirectly.

In this article I will be showing you how even small changes to your WordPress powered website can make a huge difference to your sites performance. In addition to tips and tricks and good practices for speeding your website up, I have also reviewed a lot of useful WordPress plugins that improve your website in a number of ways. Please note, I have tested all of the plugins mentioned in this review in my test area to make sure that they work with the latest version of WordPress. Unfortunately, it just wasn’t practical for me to test each plugin over a number of weeks to monitor their performance therefore I cannot say which plugin is better when it comes to speeding up your site. What I have done is briefly explain what each plugin can do and spoke a little about what options you have with the plugin.

I’m sure you’ll find this article useful. If for any reason you are unsure about any advice given or plugin listed in this article, please let me know and I’ll do my best to help :)

Good Practices, Tips and Tricks

By adhering to good practices when setting your WordPress site up, you can improve your websites performance by a great deal.

Fast Reliable Hosting

It goes without saying that the speed and reliability of your hosting package will play a big part in how fast your pages can be viewed by visitors. If your hosting can’t handle the traffic you are receiving many visitors will suffer from poor loading times or may not be able to visit your site at all.

Most bloggers start off with the basic (read cheapest!) package. There is nothing wrong with this though it is important to upgrade your host as your site grows.

A Well Designed WordPress Theme

A poorly coded them can really slow down your page. Try and make sure the theme you are using was designed well using CSS and not tables and ensure it doesn’t rely heavily on images either. For example, if your website design uses 300kb of images for the border that wraps around your site, that’s 300kb of data that needs to be loaded by every single visitor every time they visit your site.

You should also validate your design with the W3C Markup Validation Service. I used to be a tiny bit sceptical to the benefits of ensuring your code is 100% correct as most browsers can auto-correct your code. It has been found however that Google Prefers W3C Valid HTML & CSS and having a page with no validation errors can improve your ranking over other websites. As such, I believe it is worthwhile to validate your design and remove any errors that you may find within your code. I recommend doing this at least once a month as it’s really easy to modify your site and forget to add a quotation mark or close your line of HTML.

If you have a lot of plugins installed you may find it difficult to validate your page without errors, as many plugins insert code onto your page that is not W3C compliant. I recently spent about 3 hours validating the code on WP Mods. It picked up a few basic errors on my part though the majority of errors were generated by 4 or 5 plugins I have installed. To remove these errors I had to manually edit the plugin core files to address these problems. It’s a bit of a pin but if it speeds up your page and improves your search engine ranking, it’s probably worth it.

Images

Images are obviously one of the biggest factors that contribute to the speed a website page. There are some things you can do to increase your website performance and reduce your bandwith.

  • Reduce/Compress image sizes before you upload them – There’s no need to upload a 2,000 pixel image if your content area is only 600 pixels in width. By reducing the size of an image and reducing the quality, pages will load much much quicker.
  • Host images on a separate domain – Most browsers allow two to four connections when downloading a page from a server. If you place a lot of images in your content, you could speed up your page by hosting your images on a separate domain or a sub domain (e.g. images.yoursite.com). You could also use a service such as Flikr instead.
  • Prevent hotlinking – Hotlinking increases bandwidth by quite a large factor. If you have a lot of leechers you may start to see a drop in performance from your host therefore it’s worthwhile editing your htaccess file to prevent hotlinking.

With regards to hotlinking, I’ve found that it can be difficult to implement as most methods also block RSS services from linking to your images. Allowing your readers to read your content via an RSS reader is important therefore it is counter-productive to stop being shown to legitimate readers.

Optimise The WordPress Database

By optimising your MySQL datasbase. To do this all you need to do is select all of your WordPress tables via phpMyAdmin and choose the ‘optimize tables’ option.

Optimise The WordPress Database

One plugin I recommend installing to do this is Portable phpMyAdmin as it allows you to access phpMyAdmin directly from your WordPress admin area. If the thought of modifying your WordPress database manually scares you I recommend installing Joost De Valks plugin Optimize DB, which will optimise your tables for you.

Remove Plugins You Don’t Use

If, like me, you install plugins quite frequently, you may find that many of the plugins that are activated are no longer being used. It’s worthwhile removing plugins that are not required.

Additionally, I think it is good to get in the habit to only use a plugin when absolutely necessary. You should always try and hard code a solution where you can rather than use a plugin.

Use Excerpts And Reduce The Number Of Posts On The Home Page

One of the most important pages to optimise is the home page as it’s the first page a lot of your visitors see. In WordPress you can set the number of posts to display. By reducing the number of posts that are shown on the home page and in archives you can reduce the time it takes to load the page. To reduce the loading time even more, ensure that you use excerpts instead of full articles.

Break Up Comment And Pages

The Page-Link tag is a feature that is very useful if you have a long article, particularly if the article has a lot of images. By inserting < !–nextpage–> into your article you can split it into several pages.

If an article has a lot of comments, you can improve the loading time of the page by splitting the comments into different pages. You can do this in the ‘Other comment settings’ area of www.yoursite.com/wp-admin/options-discussion.php

Split comments into pages

Enabling the WordPress Object Cache

WordPress has a built in function called WP_Object_Cache that allows you to cache time draining database queries (this replaced the older WP_CACHE function). By enabling it you can save WordPress from having to reload the same queries over and over again.

Caching is one of the best ways to improve the speed of your website. The best way to utilise the feature is using one of the many cache plugins that are available. :)

WordPress Cache Plugins

Caching improves the speed of a WordPress website by saving your pages and files and storing them in a static file. When a visitor visits a page your server sends a request directly to the file rather than loading the PHP file and building the page from the database. This saves a huge amount of time and as result, many cache plugins promise to speed up your website by at least 10 times.

Below is a list of some of the most popular cache plugins for WordPress. I recommend only using one plugin that caches your files because as these plugins are trying to do the same thing, they will conflict with each other and most likely cause an error.

One plugin that I do recommend installing with a caching plugin is Cache Time. The plugin allows you to call a function anywhere in your templates (e.g. footer.php) and display the time the page was cached. Useful if you are unsure whether the cached page is up to date.

W3 Total Cache

The most popular cache plugin is lauded by top hosting companies like HostGator and MediaTemplate and is used by many top blogs like Mashable, Smashing Magazine and John Chow.

The developers promise that after installing the plugin your site will be at least 10 times quicker. I’ve only recently installed the plugin at WP Mods. Although the home page still seems to be taking a very slow 6 seconds, older posts and pages are sometimes being loaded in around 1.5 seconds. Not only will this make the site quicker to read for visitors, it will also save me a lot of bandwidth.

W3 Total Cache

The plugin is compatible with shared hosting and dedicated services and has a huge amount of options including mobile support and caching of feeds and search results pages. Don’t let the huge number of options daunt you, the plugin was designed to work perfectly on its default setting.

W3 Total Cache: Information | Download

WP Super Cache

WP Super Cache promises to show static HTML files to 99% of your visitors. It’s quite upfront about the fact that in day to day use, most visitors will not see a huge difference when loading your website however the developers note that you will see huge benefits if your server is underpowered or you are experiencing a large amount of traffic.

WP Super Cache

The plugin features a lot of useful customisation options including the ability to cache plugins in a special folder so that they are loaded before other plugins.

WP Super Cache: Information | Download

WP Simple Cache

A simple plugin that creates static HTML files of your content to speed up your page loading. Other than setting the cached page timeout value and the frequency to autoclean the cache, there is no option to customise how it runs (which won’t necessarily be a bad thing for many of you).

WP Simple Cache

WP Simple Cache: Information (Turkish) | Download

WP-Cache

Reviewed a few weeks ago by Briley Kenney, WP-Cache hasn’t been updated for a number of years though it seemed to work pretty well when I tested it in my test area (and loaded my test page in under a second).

The plugin includes an option to exclude certain files/pages from being cached too.

WP Cache

WP-Cache is a simple plugin but it appears to work very well. One worth trying out :)

WP-Cache: Download

Hyper Cache Extended

Mapto Lazarov enhanced the Hyper Cache by extending its functionality and rewriting the code. Features include 404 caching, compression options and compatibility with mobile devices.

I had a slight problem during installation. After installing I got the message ‘Hyper Cache was not able to create files in the folder “cache” in its installation dir. Make it writable (eg. chmod 777)’; however adding a writable cache folder in the Hyper Cache Extended plugin folder and another one in its parent folder, I couldn’t get it to work.

The plugin is updated regularly and many users have confirmed that it is working correctly therefore it is likely an issue with my settings (Mapto has also encouraged users to email him directly for help if they have any problems using the plugin).

Hyper Cache Extended

I was disappointed I couldn’t get the plugin setup correctly to test as it seems like a good plugin.

Hyper Cache Extended: Information | Download

Quick Cache

A feature rich cache plugin from theme developers PrimoThemes, Quick Cache has a lot of cool options such as not showing cached pages to logged in users. This would be useful for registered members who want to see up to date comments.

It also has a useful inbuilt debugging system that alerts you to any problems with the cache on a given page.

Quick Cache

Quick Cache: Download

WP File Cache

WP File Cache works a little differently from other plugins. Instead of caching the full page, it caches the information that WordPress asks it to cache. Due to this, the plugin will not improve performance as much as WP Super Cache or W3 Total Cache, however it will speed up your website and allow it to remain dynamic.

WP File Cache

WP File Cache: Download

DB Cache Reloaded Fix

DB Cache Reloaded Fix is a modified version of DB Cache Reloaded that claims to be ‘the fastest cache engine for WordPress’. The plugin caches every database query which apparently makes it faster and uses less disk space for caching.

It seemed to work well in my test area so I’m tempted to try it out on WP Mods in the future to see if it lives up to its claims.

DB Cache Reloaded Fix

DB Cache Reloaded Fix: Download

Other cache plugins you may come across:

  • WP Plugin Cache – A plugin that provides a file caching facility for any other plugin that wants to integrate with it. You would only have to use this if another plugin you used advised that it worked in conjunction with it.
  • WP Widget Cache – Caches the content of your widgets to speed up the performance of your website. Works well with WP-Cache or WP Super Cache.

Reducing Image Load

The plugins below will help you speed up the loading times of your page, either by hosting your image on a sub domain or by reducing the size of the uploaded image.

WP Parallel Loading System

The plugin was designed to reduce the load for image intensive websites. Standard HTTP v1.1 requests only allow 2 connections at the same time from the same domain. WP Parallel Loading System lets you use virtual connections via subdomains to increase the number of connections. It also optimises your images in order to improve performance.

WP Parallel Loading System

WP Parallel Loading System: Download

WP ImageHost

Similar to WP Parallel Loading System, WP ImageHost allows you to host your blog post images on a sub domain, thus speeding up the time it takes for a page to load.

WP ImageHost

WP ImageHost : Download

WP Smush.it

Automatically reduces the size of uploaded images. To do this is optimises JPEG compression, strips meta data from JPEGs and converts GIF image files to the PNG format.

Reviewed earlier this year by WPMods author Pippin Williamson

WP Smush.it: Download

Script Compression

Content is not always loaded in the fastest or most efficient way. The plugins below try and resolve this issue by compressing code or moving important files to the one location so that multiple connection requests are reduced.

HeadJS Loader

A cool plugin that utilises the Head JS script in your header. All declarations are stripped and placed in a file called head.js and loaded in parallel. Doing so speeds up the time that the javascript files are loaded.

HeadJS Loader: Download

JS & CSS Script Optimizer

Combines several scripts into one file to minimise http requests. You can also move all javascript files to the bottom of the file and combine all CSS scripts into a single file.

JS & CSS Script Optimizer

JS & CSS Script Optimizer: Information | Download

CSS And Script Files Aggregation

Aggregates all CSS and Javascript files from all of your plugins and combines them into a few files in order to reduce the number of http requests and reduce the time it takes for a page to load.

CSS And Script Files Aggregation

CSS And Script Files Aggregation: Download

WP Minify

Takes advantage of the Minify Engine to combine and compress all CSS and Javascript files in order to speed up the loading time of your page.

WP Minify

WP Minify: Download

Scripts Gzip

Another plugin that merges and compresses CSS and Javascript files.

Scripts Gzip: Download

WP-HTML-Compression

A useful plugin that removes unnecessary white space from HTML documents. Works best with a cache plugin.

WP-HTML-Compression: Download

html-compress

Removes whitespace and compresses the HTML output of a web page in order to improve the pad loading speed.

html-compress

html-compress: Download

Performance Optimization: Order Styles and Javascript

Orders CSS and Javascript files in order to improve performance.

Performance Optimization: Order Styles and Javascript

Performance Optimization: Order Styles and Javascript:Download

External Files Optimizer

Automatically combines and compresses CSS and Javascript files with wp_head() and wp_footer().

External Files Optimizer: Download

More WordPress Plugins That Improve Your Websites Speed

blah blah blah

WP Avoid Slow

An interesting plugin that uses .htaccess tricks to boost your websites performance. In particular, Expires Header and Entity tags .

Expires Header caches a lot of http request information so that is loaded the first time a visitor views a page on your website so that loading subsequent pages on your website is much quicker. WP Avoid Slow also configures entity tags. Their explanation is much better than mine every could be, so here’s how they explain it:

Entity tags (ETags) are a mechanism web servers and the browser use to determine whether a component in the browser’s cache matches one on the origin server. Since ETags are typically constructed using attributes that make them unique to a specific server hosting a site, the tags will not match when a browser gets the original component from one server and later tries to validate that component on a different server.

WP Avoid Slow Configure Etags helping browsers to validate the component !!

WP Avoid Slow: Download

WordPress Gzip Compression

Enables Gzip Compression if the visitors browser can use it. This speeds up your website and reduces bandwidth too.

WordPress Gzip Compression: Download

Plugin Organizer

A useful plugin that allows you to select the order in which plugins are loaded. It also allows you to disable plugins on certain plugins and posts.

Plugin Organiser

Plugin Organizer: Download

A Quick Summary About Speeding Up Your WordPress Website

As you can see, there are a lot of ways to improve the performance of your website. I hope you all understand the benefits of speeding of your website performance and find the time to optimise your own site over the next few weeks. You don’t have to spend a lot of time doing this.

Your websites performance could be greatly improved by just adjusting your WordPress settings accordingly, validating your code so that it is W3C compliant, installing a good cache plugin such as W3 Total Cache and adding Gzip Compression to your site.

Once again, if you are unsure about any aspect of this article or simply want some advice about how to improve your websites performance, please leave a comment and I will do my best to help you where I can :)

Good luck,
kevin

This article was authored by:

Kevin Muldoon is a professional blogger with a love of travel. He writes regularly about topics such as WordPress, Blogging, Productivity, Internet Marketing and Social Media on his personal blog and and provides technical support at Rise Forums. He can also be found on Twitter: @KevinMuldoon and Google+.

Kevin Muldoon has authored 830 posts.Visit Website

Showing 23 Comments

  • Great tips to make my WordPress blog faster. You have mentioned so many good plug-ins here.

    But I have a question. If I use so many plug-ins like W3 Total Cache for caching, WP Image Host for image optimization and some more plug-ins like HeadJS Loader, JS & CSS Script Optimizer, Scripts Gzip etc. all at once; will it slow down the performance?

    Is not the plug-in list too heavy?

    REPLY
  • Kevin Muldoon (Admin)

    Hi Sumon,

    I certainly wouldn’t recommend installing too many plugins. I would recommend installing one plugin for caching, one for reducing your image loading times and perhaps another to reduce the time it takes to load your javascript functions etc.

    I have included a large list of plugins to make it easier for readers to decide which plugin they want to use. I am currently using W3 Total Cache but i’d be keen on trying a different solution in the future if others recommended alternatives :)

    REPLY
  • Hi Kevin,
    I’ve been following suggestions like yours ever since finding how slow my site is. One of my probs is a jquery slider I dearly love, but loads dead last & is at the top of the page. Will any of the JS script optimizers help? Any other suggestions?

    REPLY
  • Kevin Muldoon (Admin)

    It’s worth a try. Though if the slider calls a lot of functions it may not help too much. I would try out one of the plugins for css optimisation and see if it helps :)

    REPLY
  • Thanks, Kevin. That was my plan. I also went straight to the source of on of the JS & CSS Optimizer plug-ins and asked what they could do. I appreciate the point in the right direction.

    REPLY
  • Kevin Muldoon (Admin)

    No problem at all. Glad I could help :)

    REPLY
  • Super post and I really appreciate the fact that WPMods has enough content and traffic to really put the plugin tests through their paces. Will be watching for future posts on test results of some you are trying.

    REPLY
  • Kevin Muldoon (Admin)

    Glad you enjoyed the post :)

    REPLY
  • Thank you for these tips – it reinforces some of the best practices I exercise on my WordPress website.

    For caching I have both DB Cache Reloaded and WP Super Cache – works great! We got about 95000 article reads a days and I am using HostGator dedicated service. You have a look at the website at http://www.kaieteurnews.com

    REPLY
  • Kevin Muldoon (Admin)

    Hi Girendra,

    Do the cache plugins not conflict in any way?

    :)

    Kevin

    REPLY
  • Great tips for speeding up the loading of my site. Great blog keep up the fine work.

    REPLY
  • Wow! Thanks for Optimization tip for running a WordPress website.
     
    I’d also suggest to run “P3 profiler” plugin to find out the Plugin performance.
     
    http://wordpress.org/extend/plugins/p3-profiler/
    http://wordpress.org/extend/plugins/p3-profiler/
     
    http://wordpress.org/extend/plugins/p3-profiler/

    REPLY
  • Wow! Thanks for Optimization tip for running a WordPress website.
     
    I’d also suggest to run “P3 profiler” plugin to find out the Plugin performance.
     
    http://wordpress.org/extend/plugins/p3-profiler/

    REPLY
  • Kevin, this is a wonderful report – thank you so much time for putting it together! I especially appreciate that you took the time of pointing out what plugins are doing the same thing and therefore don’t need to be installed at the same time.
     
    I am happily using W3 Total Cache on my webpage (http://joachim-scholz.com/academipad), and it works great. I just have a few questions regarding some other plugins that I am not sure about whether or not they are still needed when using W3TC:
     
    Are things like WP Widget Cache and CSS/JS optimization covered by W3TC? I think they are, but I want to be sure.
     
    Also, do you have any preference between WP Parallel Loading System and WP Image Host?
     
    Last, I think you could add the “Use Google Libraries” plugin to your list. I forgot where I found out about this plugin, so I can’t reference the webpage, but it shaved off about 300 mili-second of load time on my page.

    REPLY
  • Kevin Muldoon (Admin)

     @metanoiac Glad you liked the post. CSS and JS optimisation can be optimised through W3Cache though every now and then you may come across a plugin that doesn’t work because of the way that w3cache optimises CSS etc. I’d always recommend optimising it and then crossing that bridge when you come to it.
     
    I tested WP Parallel Loading System and WP Image Host when I wrote this post but I haven’t used them on a live website, so I’m not sure which is best (if any).http://wordpress.org/extend/plugins/use-google-libraries/ looks pretty good. I’ll need to try it out :)  

    REPLY
  • Kevin Muldoon (Admin)

    Thanks Ernie. Glad you enjoyed the post :)

    REPLY
  • Holy cow!, I never thought we had so many alternatives of how to deal with our site speed thanks for the useful information.

    REPLY
  • Thiagu

    Kevin,
    I am a newbie to wordpress and have just hosted my Rotary club site. My service provider godaddy says “exceeded the allotted disk space for your hosting account”! Will wordpress work if I shift some of the content to googledrive or some other free space provider?

    REPLY
  • Hey! Do you know if they make any plugins to protect against hackers? I’m kinda paranoid about losing everything I’ve worked hard on. Any tips?

    REPLY
  • Michael Scott (Admin)

    @Kris this is a very good free security plugin http://wordpress.org/extend/plugins/wp-login-security-2/

    REPLY
  • Could you please suggest some sites which offer WP optimisation service?

    REPLY
  • Thanks Kevin !!
    Thanks for sharing the load of Plugins. I did not know WP Avoid Slow was featured somewhere ;)

    REPLY
  • I only love WP-Super Cache as my site works much faster with this plugin
    for my current host Hostgator.in instead of W3 total cache.

    REPLY

Add Your Voice: