We see it all the time, WordPress websites that are tediously slow or lock up all the time. Their owners say that their web agency put it down to ‘one of those things’, or say “it’s fine” when it is evidently not.
In this article we’ll look in to why this happens, and more importantly what can be done to improve things.
WordPress has a lot happening
It’s very true that WordPress has a lot going on, and the code and database are far from the most optimised out there. This is for a good reason, it allows for the flexibility that WordPress offers with plugins and themes, however it does mean that everything is overly complex compared to some other platforms.
What this means is that, when a page is loaded, potentially hundreds of files need to be retrieved from the server, and many calls to a large database made. A good analogy here is to imagine a well-organised office filing system, to another with 100x the paperwork all thrown in a pile on the desk and floor. The latter would result in a secretary taking considerably longer to find a document, and this is what WordPress has to deal with.
Can it not be optimised?
Well, yes and no. Certain things can be done, but the way that WordPress is structured means that it is inherently inefficient (because this means flexibility). Also, it’s worth noting that themes (the way it looks) and plugins (extra functionality) usually work independently, so each have their own set of files and database calls. So, if a web agency were to combine things nicely, then a regular update could break things.
So, WordPress can’t run fast?
That’s far from the case. It’s harder to optimise WordPress than some other systems due to the complexity mentioned, but it’s still possible, it just means you need to put more effort in and have more resources.
If you have a horse nicely pulling a cart, and then overload the cart, the horse will struggle. Add more horses, and you’ll get moving again. WordPress just needs more horses.
This isn’t the be-all and end-all, but usually the hosting isn’t up to par. The server isn’t fast enough, it doesn’t have enough horses. Without getting in to too much detail, it could be down to memory, processors, or disk access etc, but usually it’s cheap hosting that shares resources. You get what you pay for, and once a server is nearing its limits it runs slower, making the problem worse, then you enter a spiral until, oh dear, everything crashes.
There are tools we have available to see whether a slow and unreliable site is likely to be server-related, specifically by seeing how long individual elements take to respond/load, seeing who else shares the server, and of course a bit of industry knowledge.
The good news is that the vast majority of WordPress sites can be migrated with a bit of work, and that we use hosting that allows us to upgrade server packages in minutes.
Out of date plugins
These aren’t always the cause, but it is always good practice to ensure that all plugins are up to date and working correctly because, if not, is it any wonder that the website crashes?
The issues are that not all plugins ‘play nice’ with each other, sites that are really old may be hard to upgrade, and some plugins or components may be discontinued. This is something we address on a case-by-case basis, and we’re always happy to have a look before we onboard a client.
This is where the juicy bits happen. You don’t need to load files from the server if they are ready in front of you, so can bypass the time-consuming bits and help the server have an easy life at the same time.
Oversimplifying things massively, if lots of people visit a certain page, then keep that page ready-to-go and send it to users when they request it. Then you only need to refresh it periodically to ensure it’s up to date.
There are lots of types of ‘caching’ (or similar processes that I am omitting for simplicity) at different levels from database calls, to pages, to caching files, to merging files, to CDNs… and, used correctly, these can make a massive difference.
How fast can you get a site?
Well, that’s the million-dollar question, and of course it varies site to site. It depends on the size and complexity of the site, the way it is built, whether it links to 3rd party systems, the server used, the traffic the site gets, and of course the type of query the site has.
However, not trying to dodge an answer, one we took over from another web agency recently had a reduction of page load times from 15 seconds to under 2 seconds, oh, and it stopped crashing all the time, result!
What’s involved in doing this?
Would you believe it if I said to reach out and get in touch with us?
As every case is different, we’d need to look at the site, its complexity, the server it is on, the way/speed it loads components and a few other bits before we can talk numbers.
We’d usually just need admin-level WordPress access, and an idea of traffic (such as Analytics) and we’d have a good idea.
Yes, it will increase along with site complexity, but simple sites may only take a day to migrate and improve. It doesn’t have to break the bank.
I’m sure you love your web agency, but if yours aren’t a likeable bunch like us, then after you’ve moved you may get the added bonus of getting to talk to us instead.
There shouldn’t be much downtime, and once we have all of the required access it’s pretty much a process we can do without your help, and we will of course coordinate it with you.
It doesn’t cost anything for us to have a look, so if you want to know more, please get in touch.