WordPress performance metrics can be split into two general categories:
Frontend Performance
When you test your website with tools such as GTMetrix and Google's PageSpeed Insights, you generally measure the frontend performance. It is mainly affected by the way your theme is coded, the size of your images, etc.
Backend (Server-side) Performance
Backend performance also plays a role in these tests, but it is mostly seen in the TTFB value - Time To First Byte.
Backend performance includes speed with which the server generates your pages and responds to a request. Having a performant site allows you to efficiently use server resources such as CPU and memory.
While the server itself plays a significant role in this metric, any reliable hosting provider should offer decent servers.
To measure your server performance, it is best to use a separate script or a WordPress plugin.
You can also check industry-wide performance tests, like the WordPress Hosting Performance Benchmarks. You can find more about this year's test at:
In this article, we will show you how to optimize the backend (server-side) performance of a WordPress installation, and reduce its server requirements.
Table of Contents
The ICDSoft WordPress Manager
This is the main tool we will use in this article, as it provides quick and easy access to performance optimizations that we highly recommend.
The interface shows at a glance useful information about the WordPress installation. Here is a screenshot showing a site that needs some work:
Keep WordPress Updated
WordPress constantly pushes new performance fixes with updates, so updating your site and its plugins is probably the easiest performance and security optimization you can make.
Performance Of Localized Websites
As an example for the importance of updates, here is an update which we are all waiting - the performant translations update. The WordPress team, found that localized WordPress sites can be up to 50% slower than English ones.
Currently, work is being done as a separate plugin, but our expectation is that these changes will be incorporated in the WordPress Core as soon as possible, bringing performance improvements to all websites.
PHP Version and Execution Model
Another easy and very effective way to optimize your WordPress site is by using the latest PHP version and the fastest PHP execution method.
This information is easily accessible in the WordPress Manager in the ICDSoft hosting Control Panel. As can be seen, the site which we are working with is configured well in this aspect:
Ensure that your site uses the latest available (and compatible) PHP version and the fastest available PHP handler.
At ICDSoft, we have built a static, server-side caching service, based on the high-performance NGINX web server.
We recommend that you keep the caching feature disabled while you are developing the website, and enable it after your site is ready, as caching can make the development process harder.
The static caching system brings enormous performance benefits, as it skips any dynamic processing - the first time a page is requested, it is stored as a pure-HTML page and the server responds with it to any subsequent requests.
Caching Plugins
Sometimes, you may find that you need more granular control over the caching system. In these cases, you can use an alternative caching mechanism, provided by a plugin (we recommend WP Super Cache, built by the company that develops WordPress). While caching via plugins is generally slower, this will still provide a huge performance boost.
One-click WordPress Optimizations
This is a button that adds several important and highly recommended web server rulesets. As our servers work with Apache, the rules will be added to the .htaccess file in the site's document root folder.
Transport Compression
By enabling transport compression, it is possible to reduce the size of pages up to 70% (for pages containing mainly text), leading to a faster page load time.
Leverage Browser Caching
The second set of rules this button will add is for the control of browser caching. Modern browsers cache media elements on webpages and request them only after a certain time. This change greatly improves the load times for repeat visitors. You can find the full set of rules to add manually to your .htaccess file in our Knowledge Base article on how to optimize WordPress.
Skip 404 Error Handling by WordPress
By default, when a user encounters a non-existent page, WordPress initiates a 404 error handling process to display a standardized error page. This change can have a great impact on the CPU resources needed by a website. This is due to web scraping bots that generate a multitude of requests, often resulting in a surge of 404 errors, which, when handled dynamically by WordPress, places an undue burden on server resources.
The WordPress Heartbeat API
The WordPress Heartbeat API is a WordPress sub-system that frequently causes unnecessary server strain. Its purpose is to facilitate tasks such as autosave, post locking, and managing user sessions. The Heartbeat API sends periodic requests to the server to check for updates and user activity, ensuring a smooth and interactive experience.
We recommend installing a plugin, in order to reduce the interval of the Heartbeat polling API, and reduce the server strain:
Improve the WordPress Cron Execution
This is yet another WordPress sub-system that may affect the performance of your website and the server resources it requires. The wp-cron system enables features such as publishing scheduled posts, checking for updates, and performing maintenance operations.
There are two general ways to optimize wp-cron execution:
Reduce the WordPress Cron Execution Interval
This is done by placing the following line in the wp-config.php file:
define( 'WP_CRON_LOCK_TIMEOUT', 3600 );
This line sets the minimum execution interval of the WordPress cron to one hour, which is usually sufficient for most websites and WordPress scheduled tasks, but still helps significantly in reducing the usage of system resources and the negative effects on your website's page load times.
Disable the Default Behavior Completely
This is done by placing the following code inside the wp-config.php file:
define('DISABLE_WP_CRON', true);
After that, to enable the scheduled tasks, you can create a Bash script (for example cron.sh), with the following code:
#!/bin/bash
GET "http://www.domain_name/wp-cron.php" > /dev/null
Finally, this script needs to be added as a cron job via the Cron Jobs section in the ICDSoft Control Panel. You can find a more in-depth guide on doing this in our article Disabling the default WordPress cron and replacing it with a cron job. You can also always ask our support team to help you with this task.
Conclusion
In conclusion, we saw that using the latest and greatest versions of the software stack - from the PHP version, up to the versions of all themes and plugins, is one of the most important performance and security improvements.
Reducing the need of server resources by enabling different caching layers (server-side caching, browser caching), and optimizing some internal systems, is key to improving the efficiency of your site.
All these changes contribute to a well-running WordPress installation, which in turn provides a better user experience, improved search engine rankings, and less server load.
Finally, selecting a reputable hosting provider is key to running a successful website, as without a high performance tech stack and server hardware, no performance optimizations will deliver satisfying results.