WPPerformanceTester

Description

WPPerformanceTester was written as a tool to benchmark WordPress in the WordPress Hosting Performance Benchmarks (2015) by Review Signal. Current benchmarks are on WPHostingBenchmarks.com. It was designed to test the server’s performance by stressing PHP, MySql and running $wpdb queries.

WPPerformanceTester performs the following tests

  • Math – 100,000 math function tests
  • String Manipulation – 100,000 string manipulation tests
  • Loops – 1,000,000 loop iterations
  • Conditionals – 1,000,000 conditional logic checks
  • MySql (connect, select, version, aes_encrypt) – basic mysql functions and 5,000,000 AES_ENCRYPT() iterations
  • \$wpdb – 250 insert, select, update and delete operations through \$wpdb

It also allows you to see how your server’s performance stacks up against our industry benchmark. Our industry benchmark is the average of all submitted test results.

Notes on Performance

Performance can be measured in a lot of ways. WPPerformanceTester was simply one component of a much larger performance benchmark. It tests a single server (or node) that it is running on. So if you’re considering looking at the results from a clustered or distributed setup, it may give you limited insight into how well your whole system performs. WPPerformanceTester is about the raw speed a system has to execute code and perform database operations.

Real website performance isn’t always correlated with raw speed. A seemingly slow website could have a very fast WPPerformanceTester result. There are lots of layers (namely caching) in making a WordPress website fast. A good caching layer will almost always outperform computing power. But when the caching layers are equal, raw speed can make a difference.

WPPerformanceTester is simply one tool to add to your toolkit in measuring performance. You should have a variety of others to test other facets of performance.

Known Issues

If the script times out (max_execution_time limit) it will not show any results. You can solve this by increasing the max_execution_time in the php.ini. Some plugins may also cause WPPerformanceTester to run exceptionally slow and make it more likely to hit this limit. One such plugin is VersionPress. You can temporarily disable plugins that might be interfering with it as an alternative way to run it.

Note:

  • It’s always best to BACKUP EVERYTHING before running ANY new plugin or making changes to your WordPress install.

Installation

Download the plugin and install it into your wp-content/plugins folder.

Once activated, it should appear under the Tools section of your wp-admin.

Reviews

March 3, 2022
Of course the plugin does not differentiate between an own server and a cheap managed hosting, but you can compare the performance of your several hostings. When the plugin ask for sharing the results, perhaps it should ask too for the kind of hosting. Thank you for sharing this plugin!
August 17, 2020 1 reply
Ran it on cPanel, Plesk, and Gridpane based servers. I’m not sure if the results are as intended (as in, whether it’s a false positive), but the plugin still runs without errors on all of them.
September 29, 2017
Pretty simple plugin. Works just fine. Test took about 5 seconds on our pretty-fast VPS servers.
January 28, 2017
Didnt tell me any comparative stats. Form submitted to a https invalid certificate. Clicking on authors website link gave Cannot connect to the database because: Unknown MySQL server host ‘review-signal-database-2.c4gwtyqfn8ba.us-east-1.rds.amazonaws.com’ (1)
Read all 8 reviews

Contributors & Developers

“WPPerformanceTester” is open source software. The following people have contributed to this plugin.

Contributors

Translate “WPPerformanceTester” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2.0.1

(April 23, 2024) Minor security update.

Patched CVE-2023-49844. This vulnerability allowed a CSRF which could have let an attacker make an admin to run benchmark unknowingly.

2.0.0

(December 29, 2021) Major update and version change.

Plugin should now be compatible with latest PHP 8 / MySQL 8.

Benchmarks no longer comparable between versions. Industry benchmarks will only show results from the same version.

benchmark script updated to replace deprecated/broken math functions and mysql functions. Version number in benchmark script reflects version number of current open source library it was based on, NOT WPPerformanceTester version number.

ENCODE() replaced with AES_ENCRYPT to perform mysql benchmark.

Benchmark graph now uses Chart.js 3.7 instead of 1.x which hopefully helps conflicts with other newer plugins.

1.1.1

(Oct 1, 2021) Minor bug fixes.

1.1

Added support for hyperdb and socket connections.

1.0.1

Updated interface to make graphs and results more clear.

1.0

  • Initial release