Everyone wants a super fast website for their business, but few business owners know exactly what goes into speeding up a WordPress website, or conversely, what causes websites to load slowly. We’ve laid out the top 10 most common reasons we see for slow WordPress websites. Is your website suffering from any of these issues?
Problems with the Host Server
When you’re thinking about website speed, the number one thing you have to look at is your host server. You need to be confident that the server where your website lives is performing at its highest possible level.
Poor quality server hardware or outdated server software can lead to problems — a bad server is not going to run efficiently and it’s not going to be able to communicate quickly with browsers. If you’ve ever tried to boot up an obsolete laptop that’s been collecting dust in a corner of your house, you know just how unusable a computer can become when it’s not being properly maintained or updated. A server is the same way. If your host server is old, cluttered, and neglected, it’s going to struggle to deliver your website to your users.
A Poor-Quality Web Hosting Provider
If you own a website that you’re proud of, then you should only entrust it to a high-quality web host. In addition to the aforementioned high-powered server technology, a good web hosting provider will have a very strong and dedicated connection to the internet.
Imagine the internet as a series of pipes. To take the analogy one step further, internet users, and the various queries they’re making, are like water running through those pipes. Bad hosting companies have small, narrow pipes — they work fine if there’s only a little bit of water running through them, but they quickly become overwhelmed by larger volumes. This creates a bottleneck, and a flood of users who can’t get through to your site.
High-quality web hosts have big, wide pipes — they use efficient software and server resource allocation techniques that can handle a lot of traffic without issue.
Some very high-powered servers use automated techniques that can reallocate additional resources to any server that happens to be experiencing a larger amount of traffic at a given time. This kind of dynamic server management can have a dramatic effect on the speed of your website, and make for a much better user experience.
Inefficient Website Code
If you’re certain that your host and their server are performing well, then your speed issues could be coming from inside the house. A good quality server can only do so much if the website itself is poorly built and designed. A site composed of disorganized, redundant code will use additional server resources, and also force a browser to make more queries than should be necessary in order to load it.
Other website clutter like excessively large image files and huge numbers of documents can also contribute to slower load times. The bigger a website and the more information it contains, the more server resources will be required.
A well-developed website should have clean, efficient code and ideally shouldn’t rely on a lot of plugins that demand additional server resources.
Now we get into more specific factors that can affect the efficiency of the code itself. Caching is a technique used by browsers and Content Delivery Networks (CDNs) that allows a browser to store website files locally, so that repeat visitors to your website don’t have to query the server and download certain files every time they want to load the page. This helps speed up your website by, again, reducing the number of requests made to the server and the amount of bandwidth needed to be used. Website information can be cached on a user’s browser, but it can also be cached on multiple servers in a CDN.
Most people are familiar with .zip files — .zip compression makes it possible to send and receive large files by squishing the information down into a more manageable size. A similar method of compression can be used on websites to reduce the size of image and text files before they are transmitted, allowing this information to be sent to a browser faster, so that browser can in turn unpack it and display it on a user’s screen.
Your developer’s done a good job of building the site, the code has been optimized, and you’ve implemented both caching and compression — but are you using a Content Delivery Network?
Going back to the example about the internet being a series of pipes, one of the reasons why bottlenecks happen is because internet traffic is regional — and so are servers. If you have an international business, but your website is stored exclusively on a server in New York, then all that traffic from around the globe is being routed to that one server. That puts the server under a lot of stress, and forces it to draw on additional resources to deliver your site to all your users. Most servers can’t handle this level of traffic for very long, so eventually that bottleneck will build up and your users will start having trouble loading the site at all.
A CDN is a global network of servers that each contain a cached version of your website. Now instead of all queuing up at the server in New York, your users’ browsers get your website from whatever server is geographically closest. British users query a server in London; Japanese users query a server in Tokyo, and so on. This helps disperse user traffic and ease the load on individual servers.
An Improperly Configured Firewall (or No Firewall)
Once you’re using a CDN, then it’s time to think about firewalls. Most people think of firewalls as purely a security measure, but the fact is that they can often improve the loading times of your website as well.
If you don’t have a firewall, you’re exposing your website to poking and prodding by bots, malware, and hackers. The problem here, aside from the obvious security issue, is that a server can’t distinguish between good and bad traffic. So it is using resources to deliver your site to these bad actors, and that can slow down the site for your good users, as well.
A good firewall can sort out the good behaviour from the bad behaviour and block malicious traffic from ever querying the server, so your server can save those precious resources to deliver your site to the traffic that you actually want.
Firewalls are generally located at the CDN or on the server itself. The ones that sit on the server are helpful, but they do also use server resources, so it’s not a great idea to rely on those entirely. We prefer a tiered approach, with a web application firewall at the CDN level as the first line of defense.
Issues with the Internet
If you know that your website is configured for speed and hosted on a good quality server, it’s always possible that speed hangups are simply due to problems with the internet.
The internet puts a lot of information apparently at your fingertips, but in most cases that information has to travel through a vast network of nodes and relays to get to you. Though the process often seems instantaneous, there’s a lot that can go wrong along the way.
Sometimes, you might get reports from users in a certain region that your website is loading slowly. This is often because there’s a problem with the internet in that particular area or IP address. It might soon be resolved, or it might just be that that area doesn’t have the same digital infrastructure that’s found in major population centres. Some global regions just don’t have as fast of an internet connection as others.
If you’ve exhausted your other options and you can confirm that the problem is one with the internet, relax. There’s nothing you can do but wait.
Issues with a Local Network or Device
If a large number of people in a region are having trouble with your site, it might be the internet in general. If a smaller handful of people or just one person is reporting a problem, then it’s more likely to be an issue with that person’s personal network or browser.
When we’re testing a website, or we come across a page that’s loading slowly, one of the first things we check is whether that slow speed is affecting all users, or if it’s more localized. If you notice that a site is loading slowly on your own computer, it’s very easy to check it on another device, or ask a colleague to try it on theirs. If the site seems to be loading slowly while you’re in the office, but loads fine at home, it could be an issue with your office WiFi. If the site loads fine on your phone but slowly on a colleague’s phone, then that colleague might be due for a software or hardware upgrade. Clearing your browser cache or restarting your device are other methods of determining whether the issue is severe and widespread, or just a momentary local hangup.
The Users Themselves
Finally, if all aspects of your website are squared away, you may want to check your expectations for how quickly a website should be loading.
As we talked about above, in parts of the world where internet infrastructure isn’t as strong, sites will load slower. Aside from physically building more servers and laying fibre-optic cable in the region, there isn’t much that can be done by an individual business or website owner. If you’re doing business internationally, some of your customers may experience a slower connection with your website than others.
It’s also worth noting what actually constitutes “fast” when we’re talking about website loading times. Less than three seconds to load a page is the current gold standard for website performance. Under two seconds is astonishingly fast, and any faster than that is in the upper echelon of what today’s technology can deliver.
A website momentarily slowing down or taking five seconds to load a very information-dense page is not usually cause for concern. Your website has to travel so far and through so many gates and relays to get to your customers’ browsers that there’s bound to be occasional hangups. It only becomes a problem when your website is consistently, noticeably under-performing in the speed department.
If you have any problems with the speed of your website, please feel free to book a security and performance audit and one of our technicians would be happy to have a look.