WordPress is the most popular Content Management System (CMS) by far and powers more than 38% of all websites in the world today. It is valued because of its versatility in allowing website owners to quickly build websites of impressive quality and functionality.
However, WordPress does need to be understood in order for it to perform at its best. If you’ve been running a WordPress site and feel that performance has been sub-par, you might be able to increase performance by making a few small tweaks.
1. Not Caching Properly
Caching in general is when applications store data in memory for faster processing or access. Similarly, by enabling caching you can pre-load parts of your website for quicker access. There are various modes of caching you can take advantage of but they generally fall into either of two categories; client-side cache, or server-side cache.
Client-side caching (usually browser caching) helps you define what elements of your site is stored on a visitor’s web browser. It also lets you specify the duration those elements are stored so that if your site is updated, the browser will be able to refresh the cache with updated elements. Browser caching works with static elements such as CSS, JS, and images.
Server-side caching is any method of caching that is implemented on your web server. These can include OPcode caching, Page caching, database caching, and more. Each of these methods deal with various elements of WordPress and leveraging on them can help improve our site performance.
For example, WordPress is very highly database-centric. Unfortunately, any processes that work with a database generally require a lot of resources (processing power and memory) to run. With database caching, what you do is basically save results of previous queries in memory to reduce the time taken to deliver certain results.
Solution 1: Install good caching plugins
Caching is one of the most important ways that you can greatly improve the performance of your WordPress website. Thankfully, as with all things WordPress-related there are plugins you can use to help with this.
There are plenty of good WordPress caching plugin in market – here are some free ones in WordPress Plugin Directory.
Tip: Use Swift Performance ($39.99 per site) for Better Results
For those with extra budget – I recommend Swift Performance.
The plugin offers an integrated solution for speed performance issues. Users get to optimize their WordPress site in just a few clicks – including database clean up and code (HTML, CSS, JavaScript, etc.) optimization, server settings, as well as cache structure.
What's more – Swift Performance helps create optimized images in JPG-PNG and/or WEBP version automatically. This enables your web pages to load even faster on modern browsers that support WEBP image format.
Note: WEBP images are 25% – 34% smaller than JPEG as per this Google article and load 1.56x faster based on study. WEBP's browser support has reached 94.2% at this time of writing.
Solution 2: Enable OPCache on your web host
By caching the compiled operation codes of PHP scripts, OPcache enable sites to serve page content significantly faster. The good news is most shared hosting providers allow their users to install OPcache extension from their control panel. So – to make use of this option to load your website faster, simply login to your hosting control panel and enable this function.
2. Databases stored in HDD
Almost without fail, most web hosting providers today will advertise that they offer Solid State Drive (SSD) solutions. SSDs are the high-tech version of the traditional hard drive and are much faster. However, despite the fall in prices of SSD, they are still more expensive than mechanical hard drives.
Because of this, some hosting provider may try to get away with a hybrid setup. They will run applications off SSDs but use traditional hard drives for storage. This is bad news for WordPress users since it is likely the database will reside on the slower, mechanical drives instead of SSD. Make sure you take note of whether your WordPress hosting provider is offering a full SSD solution or not.
Solution: Stick with hosting companies that offer full SSD hosting
Despite being one of the cheapest WP hosting in market, Hostinger runs on full SSD storage – making them ideal for hosting WordPress sites. Other well-known brands that run on full SSD include: A2 Hosting, BlueHost, and SiteGround.
3. Outdated PHP
WordPress is PHP-based and the version of PHP that your server is running can also affect your site performance. PHP 7 has been tested to out-perform PHP 5.6 by almost twice the speed – that’s 100% increase in performance!
The team at AeroSpike ran some tests to compare PHP 5 with PHP 7.
Their test launched four processes, each running 100,000 transactions. All runs were performed against a one-node cluster running Aerospike Server Community Edition version 3.9.1 on CentOS 7 with 32 Intel(R) Xeon(R) CPU E5-2660 @ 2.20GHz processors (with hyperthreading turned on) and 32GB of memory.
The two PHP versions used were php-7.0.10 and php-5.5.38.
Below are the results summary.
Total Execution Time
Operations Per Seconds
Solution: Update your website PHP version
If you’re running on an older version of PHP it is likely that you will see pretty good speed improvements simply by choosing a newer version of PHP. Most web hosting providers will offer multiple versions of PHP which you can select through your web hosting control panel.
4. HTTP / 2
HTTP/2 is a “new” Internet protocol which was introduced in 2015. Unlike the previous version HTTP 1.1, it allows multiple data requests to be done at the same time. This helps reduce load time for the assets of your website.
Solution: Implement HTTP/2
Despite this, however, some web hosts still do not offer HTTP/2 or only offer it on more expensive plans. There are two ways you can take advantage of HTTP/2; look for a host which offers it, or make use of Cloudflare CDN.
There are web hosting providers that offer varying levels of HTTP. For examples, Scala Hosting and GreenGeeks has made HTTP/2 available on all their plans, but A2 Hosting only offers HTTP/2 on their Turbo web hosting plans or above.
5. Rushed Server
Websites are automated and their performance can be affected by the amount of resources available to them. Each site needs to have processing power and memory to handle web traffic – the higher the volume, the more resources needed.
If your website has a sudden influx of visitors, your hosting plan may not have the resources available to handle all of them at once. This will result in the site either slowing down or becoming unavailable to some requests.
Monitor your hosting performance
The situation is more likely to occur on shared hosting plans since all the accounts on that server are sharing a fixed amount of resources. To ensure that your site is running smoothly, try and use a site monitoring tool like Uptime Robot, Website Pulse, and Freshping.
Using those tools will help you judge over a period of time how well your host is performing. If your site keeps slowing down or the server is always down, it might be time to consider shifting to a better plan or a different web host altogether.
Solution: Upgrade to VPS or higher level hosting if necessary
VPS hosting plans are more expensive than shared hosting plans but can handle high traffic more easily. This is because VPS hosting plans are generally scalable, meaning that you can dynamically increase the amount of resources if you feel that your site needs more.
6. Bulky Media Files
While big, sharp images or exciting videos can be great eye-candy, do remember that these multimedia files often are large in size. As a rule of thumb, the bigger a file is the longer it takes to load.
This doesn’t mean that you have to completely forego them, but at least remember to optimize your files.
Solution: Compress your images
Images can be scaled down somewhat and using the right format can also help reduce size. For example, a BMP file will usually be larger than a GIF or JPG file. To optimize images, you can choose to do so manually or by using a plugin. Some WordPress plugins that can do the trick include EWWW and Short Pixel.
If you decide not to use a plugin there are also online tools that you can use to manually optimize images. Some of these are Optimizilla and EzGIF.
7. Badly Optimized / Corrupted Database
Earlier I mentioned about how WordPress is very database-centric and how SSD storage can help speed up queries. However, the condition of the database also plays a part in the performance of your site.
Solution: Optimize database regularly
It can be very difficult to control every single element that goes into your database, so from time to time, you need to perform some housekeeping. This will help keep your database organized and able to work at full speed.
There are also plugins you can use for this. Some good examples are WP DBManager and WP Sweep.
8. Slow DNS provider
Many people feel that Time to First Byte (TTFB) is the be-all of speed gauges but not many actually break down TTFB and try to address the individual elements in it. One of the elements that contributes to TTFB is DNS resolution.
This process which involves the translation of domain names into IP addresses takes time. Different DNS providers perform differently and using a good DNS provider can speed up your site loading speed as well.
Solution: Switch to better DNS provider
To check your DNS speed, run a test on your site using Pingdom Tools and then click on the first instance of your domain name in the results chart. This will expand a box showing you the components of your TTFB. In that box, look for a line that says “DNS”.
Compare it to the aggregated DNS speeds of various providers on the chart at DNS Perf and consider if your DNS speed is where it should be. If not, opting for a different DNS provider can be beneficial to your site loading speed.
Cloudflare is one of the most popular DNS providers around and you can get an account with them for free.
9. Too Many Plugins
One of the things that people love about WordPress is how easily it is to boost functionality simply by using a plugin. Because it is open source, Wordpress has a huge developer community which is great for choice, but results in plugins that vary greatly in quality.
Plugins are also extensions to basic WordPress code, meaning that the more you use, the bulkier your WordPress instance will be. This in turn adds to the overhead of your site and may affect performance to varying degrees.
Solution: Reduce plugin usages
Where possible make sure that you only run the plugins that you really need and try to trim unnecessary fluff. Also, remember to remove any plugins which aren’t in use! There are many plugins today which try to accomplish many different things, so where possible try to ensure that functionality isn’t duplicated by your plugins.
10. Hacked Site
In the past, hackers used to take over site and cause mayhem just for kicks. The cybercriminal of today is more sophisticated and will try to avoid you detecting their presence. Their aim is to make use of the resources on your account to enrich themselves – for example by using it to mine cryptocurrency.
This takes away resources from your site and can have great impact on performance. Because they’re flying under the radar, you need to actively scan your site regularly to ensure that it hasn’t been hijacked silently.
Invest in a security tool from a reputable security solutions provider like Sucuri and make sure you only install plugins from trusted sources. To check if your plugins are legit, use a tool like Plugin Security Checker to scan for issues.
Conclusion: Focus on the Details
As you can see by now, running an efficient WordPress site can be practically a full time job. However, if you list down and regularly follow best practices, you’ll be able to reduce the chances of a low-performing WordPress site like it was second nature. Remember to stay focused on performance in everything you do and carefully consider anything you want to add on to your site. Many new WordPress site owners tend to go overboard and throw in everything but the kitchen sink.
Avoid that temptation and slowly build on functionality as your site and business grows.