How to Speed Up Your WordPress Site

by Bradley on July 1, 2010

Wondering how to speed up your WordPress-powered website?  As part of our 30 Days of WordPress fiesta, we are taking a look at Somone’s question about how to speed up her site.

From Somone:

Once a self-hosted WordPress site gets a decent amount of traffic, the use of plugins and other scripts that run to show images, thumbnails, style sheets, etc can be very memory, cache and processor intensive for a shared server arrangement and an affordable annual fee.

I find my site running quite slowly at the moment and am trying to work out if it is my layout, the different plugins, the number of images…causing the problem. What would you recommend somebody do when their WordPress site is listed by Alexa as ’slow compared to others’?

Answer: How to Speed up Your WordPress Site

I’ve had to learn a lot about speeding up WordPress because of a new coupon site that I’ve been working on.  The site presented some challenges that made it run much slower than it should, so I’ve had to do a lot to make it speed up.  Hopefully my work will help you, Somone, to speed up your site a bit.

So, in order of importance, here are my suggestions for speeding up your site:

1.  Grab a benchmark

Get a benchmark of where you stand right now, so you can see if (and by how much) your efforts have improved your results.  My favorite site to use to get a benchmark is Pingdom Tools.  It will also give you an idea of how long each item is taking to download, and this can be very helpful is deciding if that big image or two is really worth the extra download time.

2. Make sure your host isn’t the problem

The speed of your site is completely dependent on your host.  The best coding and most streamlined site will still take forever to download if you are on a crappy host.  I have had a bad experience with Media Temple, 1and1, and a few other hosts.  I’m not saying they are bad, just saying that you couldn’t pay me to go back to working with them.

I have found that Bluehost is great and saw site loading times for the coupon blog mentioned above cut in half when I moved to Bluehost.  So yeah, bluehost is good.

3.  Use Caching

You can cache all of your WordPress pages.  When you cache, it saves a copy of each page and serves that copy up instead of running all of the php code each time someone requests a page.  This can be really helpful.  I use w3c caching plugin and really like it.

The only down side of caching is that it takes a little while to set up, and it can also make updating your site more confusing because sometimes you are looking at a cached version of your site when you think you are looking at a live version.  But once you work through those kinks, caching is great.

4.  Cut out the unnecessary clutter

With websites, I believe less is more.  This is undeniably true of loading times.  So if there is something on the page (like a javascript you load, or a big image, or something like that) and it doesn’t have to be there, then get rid of it.  You can use the results from your Pingdom Tools test above to see what your site has to upload that is the biggest and most time-consuming.  Start with the big stuff and keep working from there.

5.  Going Deeper

These 4 points listed above have made a huge difference in my experience, however they are just the start.  If you’ve done the 4 things above and still want more speed, then I’d suggest looking at this article.

Or, if you want a custom solution for your site, then I’d be happy to speed up your WordPress site.

Thanks to Somone for contributing her question, and please feel free to ask your WordPress Question here.

Want More out of WordPress?

I can show you how to get more traffic, make WordPress do amazing things, and how to make more money with your website by converting your visitors into customers. Click the button to the right to get a free estimate.

  • Designr

    Run this test
    http://siteloadtest.com
    and then get rid of all red color in report, one by one
    after that your site will be fast, that’s all

Previous post:

Next post: