Let’s face it, when we’re out shopping we don’t want to be kept waiting right? Whether that is because people are waiting in a long line in order to get to the register or simply because we can’t find any qualified staff to answer our questions.
And ask yourself what you do whenever the wait becomes too long.
You let your feet do the talking and you leave the store right? There are a lot of place selling the shoes you came for so why waste time standing in line.
In an increasingly bigger battle for the consumers, we have come to expect a high service level. Our demands and requirements have increased as we become more experienced buyers.
So why am I raising this issue and why do I accuse you of letting your customers wait in line?
Because we know how we would act if we were forced to wait in line in a physical store. But what do you think will happen when you’re forced to wait in an online store (or just a simple website).
While you might be willing to wait a few minutes in a physical store, you’re willingness to wait online is down to a few seconds.
If you look at the statistics then it’s clear to see that our attention spans have been decreasing over the past decade as we have seen an increase in external stimulation.
The average attention span was 12 seconds in 2000 and this is in 2013 now down to 8 seconds!
We see that 17% of online page views last less than 4 seconds (source)!
The thousand pound gorilla Amazon found out that one tenth of a second that they can shave off a page load result in 1% increase in sale. Do you think page load speed is important to them?
According to Mozilla the makers for Firefox:
We found that a 1 second increase in page load time decreases conversions by 2.7%! Assuming our model is correctly specified, we have massive room from improvement and can easily increase our conversion rate by 5 – 10%.
Now if you’re selling something online whether that is luxury cruises, vibrators or custom made Santa Claus beards the business case becomes obvious.
However if you “just” run a non-profit blog you might not think it’s that relevant, because what’s a few visitors, right?
Wrong. It’s certainly not news that Google has been incorporating page load speed as part of their search algorithm. This means that you will become penalized if you have a slow loading website.
So you will receive less traffic to your website if it loads slowly!
And let’s face it. If you have some kind of online property, you want people looking at it.
Now if you’re a big shot company and have your own web team, they will probably be somewhat on top of this (although in experience the load speed is often something that is optimized quite late in the process when everything else has been taken care of).
But what happens if you’re just a small business without an army of trusted IT geeks living in your office basement?
The problem is that you as a business owner most of the time aren’t really aware of this, and if the website is loading – you’re not on the line with your “web guy” who’s charging you $50+ an hour for listening to your screaming.
The fact is that optimizing load speed is a rather technical task that you as a business owner really shouldn’t have to worry about. So my goal with this blog post is on one side to make you aware of this fact, but also show you what I’ve done about optimizing this blog.
Knowing Your Baseline
But before you can optimize anything you need to know how long your current load speed is. I like to use Pingdom for this. They have servers around the world you can instruct to call your website tracking how much time they spent.
Now to begin with I was quite happy with my load speed, but as I began to add functionality to my website running WordPress using plugins, I could see that more and more files need to be loaded and my load times started to increase.
First Step is to Cache the Shit Out of Your Website
You are probably doing this already, but it needs to be said as it is really the first thing to do.
If you’re not running a highly dynamic site such as a forum, you need to install a caching plugin (I’m writing plugin here because I kind of assume that you’re using WordPress – if you’re not doing so, you probably should ;)).
I’ve been using W3 Total Cache for a long time and if you want to get into some really cool performance optimization this is what I recommend.
Now I won’t go too much into the configuration of this plugin, there are plenty of guides online for this. Just know that you need to enable Page Caching that is effectively saving static versions of your site content. This way WordPress won’t need to generate the content with each visit.
All this was in place on my blog. Heck I had even added a Content Delivery Network (I’m using Amazon Cloudfront) meaning that all my static files (images and such) was distributed to servers all over the world so a person from India wouldn’t need to get images from a US based server but would – automatically I might add – just get them from a server in India.
Reading the Data
But what I saw from the broken down Pingdom report was that I had an increasingly number of requests not being served from cache.
One example being my “pop up window” plugin. Now while most visitors hate popups, it’s one of the best ways to get people to sign up for your newsletter. And sorry – I really want to add you to my newsletter (and if you’re reading this, why don’t sign up for it in the box to the right :)).
And while many of these request was running in the background it added to the load of my website.
So I started getting rid of those plugins. So you might enjoy that there are no longer any popups (probably depends on when you’re reading this, I could add one in the future :)) however I feel a bit sad about letting this go.
But the Numbers Lie
Now I was getting requests that would load in less than 2 seconds. Great – now we’re talking.
But don’t trust these numbers. They are like pissing in your pants and not noticing it. To begin with it’s warm and then…. it keeps being warm :).
Instead I would invite you to sign up as a user on Pingdom. It’s free for a single website.
This gives you some VERY interesting information.
For instance I have now gotten the “load time” down to less than one second (average 920ms last 30 days)
But this is only that half story. Remember pissing your pants?
This is the time that another computer takes to call your website. No – it’s not humans sitting with small stopwatches.
Inside your Pingdom account you also have access to something call RUM. You might like them already but it’s not hard liquor (sorry). Instead it stands for Real-time User Monitoring. And this measure how long it takes for the website to load for real website users.
And here my average (or rather my median) is 3.8 second. Quite different from the “less than one second” right?
So if you have site loading with a nice 2-3 seconds on pingdom (or other tools) you probably think you’re in the clear, but until you put yourself in your customers’ shoes, you’re really letting them wait in line and you don’t even know that you’re losing sales or Google ranking!
(As bonus information I can tell you that Pingdom thinks you’re in the clear if your lower than 4 seconds in the RUM measurement – however to me there’s room for improvement).
So how fast is your website really loading?