Diagnose slow WordPress performance using FireBug

I have been pretty frustrated over the past few weeks with the performance of a few of my WordPress sites. At first I was convinced that it was my web host. perhaps it was their web or DB severs; perhaps that I’m on shared hosting. After putting up with it for a while I decided I needed to get to the bottom of the issue. It had to be my host, aÂ plugin, or some content that it just to stinking big. I found an article by Idano called Nailing Down Slow Performance in WordPress. The approach outlined entailed reverting to the default theme, disabling all plugins, and then one by one enabling the plugins to find the culprit. Sounds like a lot of work eh? I already know my theme is relatively heavy, but I like it so it’s not going anywhere. I suspected it might be a plugin… but did I REALLY want to go thru the process or turning them all off then one by one turning them back on? Naw…

Enter FireBug. Firebug integrates with Firefox to put a wealth of web development tools at your fingertips while you browse. You can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page. If you don’t already have FireFox and FireBug, you should check them out…. particularly if you do any web development. For the record I typically use IE, I’m not anti-Microsoft or anything like that, but it’s nice to have FF and FB around for development purposes. Once installed enable FireBug by going Tools -> FireBugÂ and then deselecting the Disable FireBug check. Then go to Tools -> FireBug -> Open FireBug. At the bottom of the screen you’ll now see a console window for FireBug. Hit the NET tab and point your browser to your website.

What you’re seeing is the total number of requests made by the browser and how long each one took. With my standard plugins enabled, my homepage took a crazy 12.65 seconds to render! TOTALLY UNACCEPTABLE.

I began scrolling through the results and immediately saw that the lightbox plugin, as well as an Amazon Context Links plugin were the cuplript (image below shows the lightbox stats).

I then went to my plugins page and disabled each of the plugins. Removing those two plugins took my page render time down to 7.79 seconds. Better… but still not GOOD. I repeated the process above until I found another performance culprit… a call the the MyBlogLog tracker is taking 2.44 seconds. This is not a plugin, but a script code I added to the header of my website… 2.44 seconds, gone. I like MyBlogLog… but not that much.

So how much time did I shave off by removing the Lightbox, Amazon Context Links plugins and the MyBlogLog link tracker?

Yup… 9.06 seconds shaved off my front page load time. 3.59 seconds still isn’t excellent performance, but my front page usually has YouTub videos, linked images, etc. I then noticed the time to render a sidebar widget I put in place to show where else I can be found on the net was making a bunch of requests. I move it to my About Me page… nobody really click it anyway.

In total my average front page load time is now down to about 3.2 seconds. I could probably do even better, but I’m happy with the performance increase so far. The average page on my site, when it’s mostly text, is down to around 1.5 seconds. w00t! Feel much more snappy!

FYI… if you CANNOT live without the lightbox effect, there’s a new Slimbox plugin, which claims to be a 7kb clone of the previous Lightbox plugins. I haven’t tried it yet… it’s a cool effect, but I’m not sure if it’s worth it.

About Paul Spoerry

I’m a groovy cat who’s into technology, Eastern Thought, and house music. I’m a proud and dedicated father to the coolest little guy on the planet (seriously, I'm NOT biased). I’m fascinated by ninjas, the Internet, and anybody who can balance objects on their nose for long periods of time.

I have a utility belt full of programming languages and a database of all my knowledge on databases... I practice code fu. Oh, I've also done actual Kung Fu, and have a black belt in Tae Kwon Do.

Comments

We also had a very slow wordpress with 53 plugins active and it took almost 10-15 seconds to load!, in fact at 7000 uniques a day on a xeon processor and 4 gigs ram it ground the server to a halt. We found that a combination of caching for both database queries, supercache and APC for PHP made our site perform like it was just a static page! check it out here http://gamersyndrome.com

Yep!!! My 2 sites were running horribly slow and have been for the last month. Loaded up Firebug, (did crash on me a couple times) but within minutes knew the 2 WordPress Plugin culprits…W3TC (Caching) and Share Buttons by Lockerz.

Both plugins were on both sites – disabled both, sites running faster than ever. Now onto finding replacements.

W3TC is the best provided your host can handle it. When on a shared server it might not work as well. WP Super Cache is your friend in that case. If you’re on a pro plan with your host or can get more resources though W3TC is the way to go.