WordPress Hosting Performance Benchmarks 2020

WordPress Hosting Performance Benchmarks (2020)

Results

<$25/Month Tier$25-50/Month Tier$51-100/Month Tier$101-200/Month Tier$201-500/Month Tier$500+/Month (Enterprise) Tier

Introduction

WordPress Hosting Performance Benchmarks is designed to create a consistent set of benchmarks showing which web hosting companies offer best in class performance. The focus of these tests is performance, not support, not features, not any other dimension. I've been testing performance for seven years now and have done some historical analysis including Does Price = Better Performance in WordPress hosting? The short answer is, generally yes, and over the years WordPress hosting has become faster. I'd like to think these benchmarks play a small role in pushing companies to perform better. These benchmarks should be looked at in combination with other sources of information when making any hosting decision. Review Signal's web hosting reviews has insights for some of the companies with regards to aspects beyond performance. That said, for the performance conscious, these benchmarks should be a good guide.

These benchmarks have now moved to WPHostingBenchmarks.com.

Previous years testing can be found at the following links: original, 20142015, 20162018, and 2019.

Companies Tested

1&1 IONOS [Reviews]
34SP.com
A2 Hosting [Reviews]
ChemiCloud
Cloudways [Reviews]
DreamHost [Reviews]
Flywheel [Reviews]
GoDaddy [Reviews]
GreenGeeks
GridPane
HighAvailability (formerly Incendia Web Works)
InMotion Hosting
Jelastic *
Krystal Hosting
LightningBase
NameCheap
Nestify
Onyx
Pantheon [Reviews]
Pressable
Presslabs
Raidboxes
Seravo
Servebolt
SiteGround [Reviews]
TVC.Net
Wetopi
WordPress.com Business
WordPress.com VIP
WPCycle
WPOven.com
WPX Hosting

Companies that didn't participate this round but did on previous rounds: WebHostingBuzzWPProntoA Small Orange [Reviews],  WebSynthesis [Reviews], Hosting Agency, ConetixMediaTemple [Reviews], Pagely [Reviews], Pressidium, Pressjitsu, WP.land, AMIMOTO, BlueHost [Reviews], Hosting.io, IOZoomNexcess, Pressed.netWP Engine [Reviews], FastComet, Kickassd, Kinsta, KnownHost [Reviews], LiquidWeb [Reviews], Savvii, VersionPress

Some companies dropped out this year, but overall we added net three more companies to the 2020 tests (29 companies with 31 brands).

For an old full visualization of companies that have participated in previous years and their performance please see this table. (Updated 2018 data)

Why are some companies missing? If they aren't listed, they didn't opt in to participate. Chances are if it's a well known company they declined to participate, if it's a smaller one, they may not have known about this test and I may not have been aware of them to reach out. You can ask any company to participate and hopefully consumer interest pushes them towards it. Web hosting companies can signup for our Web Hosting Company Mailing List to keep track.

Every plan was donated by the company for testing purposes with the strict stipulation that it would be the same as if any normal user signed up. There is a notes section at the bottom that details the minutiae of changes made to plans at the end of this post. Nearly every single company had security issues that I had to get around, so they worked to make sure my testing went through properly. Load testing often looks like an attack and it's the only way I can do these tests.

The Products

Below you will see the price brackets and which companies participated. Specific details will be included on each bracket's write up.

participating companies

Methodology

The goal of this research is testing the performance of specialized WordPress hosting. The two measures to determine performance are peak performance and consistency. Peak performance is measured using load testing services which emulate large numbers of users visiting a website and watching how well the hosting responds under these stressful conditions. Consistency is measured using uptime monitoring to make sure that the servers remain available for a longer duration of time.

There are some non-impacting measurements taken as well that are recorded to help inform more advanced users and potentially be used to create a benchmark at a later time. Geographic response times from multiple (12) locations using WebPageTest. The WPPerformanceTester performs PHP Benchmarks and WP benchmarks to see how fast the underlying server performs for different kinds of operations. SSL test was added to all price tiers this year. These measures don’t impact the Top-Tier WordPress Hosting status we give, nor the Honorable Mention status.

Uptime monitoring lasted a minimum of three months this year.

The hosting packages are as close to default as possible. In some circumstances where turning on performance enhancements is very simple, e.g. clicking an option to turn on caching, this will be done. Otherwise everything is as-is for new customers upon sign up to avoid as much as possible the extra benefit of companies knowing they are being tested.

The exception to this rule is the Enterprise tier ($500/month+). This exception for the Enterprise tier is because at a certain level, a higher degree of service is expected. Customers spending large sums of money are generally on-boarded and optimized by hosting companies. As such, all companies competing in the Enterprise tier are allowed to optimize the package as much as possible to maximize the performance of the site.

This methodology isn’t perfect. One of the most common complaints companies participating have is that it doesn’t encapsulate their service well because they do ‘something special’ for every client. This may be true, but it’s hard to allow this behavior because the difference between ‘every’ client and ‘this specific test’ isn’t measurable. It also relies on good faith from the companies because load testing servers requires permission to do at a meaningful scale. These type of tests often trigger security measures and can impact existing clients. Working with the companies being tested is often a necessity to do these tests properly. Packages are compared to what was submitted and checking for cheating is done regularly. The comparison is designed to be as apples-to-apples as possible.

All testing was done on WordPress 5 with Classic Editor.

Full Dummy site (downloaded) with instructions is available at http://wordpresshostingbenchmarks.reviewsignal.com/.

Test Configurations

All tests were performed on an identical WordPress dummy website with the same plugins except in cases where hosts added extra plugins or code.

LoadStorm

The process for LoadStorm will be a scaling user test based on the pricing tier. The simulated users will hit the homepage, hit the login page, login, hit a few pages and posts. The test duration was 30 minutes and scaled from 500 to start to n,000 users over 20 minutes and sustained peak load for 10 minutes.

Price Tier # Users
<25 2000
25-50 2000
51-100 3000
101-200 4000
201-500 5000
Enterprise 10000

LoadImpact

LoadImpact ran a simple Lua script that requested the frontpage of the test site. It scaled from 1 to n,000 users based on the price tier over a 15 minute duration. It was designed to emulate the old Blitz.io test of simply hammering the cache.

Price Tier # Users
<25 1000
25-50 1000
51-100 2000
101-200 3000
201-500 4000
Enterprise 5000

Script:

http.page_start("Page 1 Blitz")

responses = http.request_batch({

{"GET", "<url>", auto_decompress=true, response_body_bytes=1024}

})

if responses[1].status_code == 200 then else log.debug("Status Code: " .. responses[1].status_code) end

result.custom_metric("StatusCode", responses[1].status_code)

result.custom_metric("TTFB-FirstRequest", responses[1].time_to_first_byte)

http.page_end("Page 1 Blitz")

client.sleep(1)

WebPageTest.org

Tests will be run from 12 locations. Dulles, Denver, LA, London, Frankfurt, Rose Hill (Mauritius), Singapore, Mumbai, Japan, Sydney, Brazil and Israel using EC2 instances where possible.

Uptime Monitoring

Uptime was monitored for at least three months for the homepage of the site. UptimeRobot and StatusCake were used to monitor uptime at 1 minute and 5 minute intervals respectively.

WPPerformanceTester

This plugin will run its performance test. Plugin is available at WordPress.org.

Qualsys SSL Report Grade

The tool is available at https://www.ssllabs.com/ssltest/. Every single B grade this year was for the following reason according to Qualsys: "This server supports TLS 1.0 and TLS 1.1. Grade capped to B."

Ratings

There are two levels of recognition awarded to companies that participate in the tests. There is no ‘best’ declared, it’s simply tiered, it’s hard to come up with an objective ranking system because of the complex nature of hosting. These tests also don’t take into account outside factors such as reviews, support, and features. It is simply testing performance as described in the methodology.

Top Tier WordPress Hosting

This is awarded to companies who maintain 99.9% uptime throughout the entire testing and show little to no performance degradation during load testing, primarily focused on error rate and response times.

Honorable Mention

Honorable mentions are given to companies that came close to Top Tier status but for one reason or another fell just slightly short. This could be struggling slightly on a load test or having some minor uptime issues.

Major Changes

  • Added additional testing location (Israel) on WebPageTest increasing locations from 11 to 12.
  • Self-hosted an uptime monitor as a third (backup) to compare against, if discrepancies existed between UptimeRobot and StatusCake, using PHP Server Monitor.

Costs and Price Tiers

These tests are expensive to run and I refused to accept any hosting sponsorships. There is a participation fee involved to cover the costs. Every company pays the same amount based on the price tier of the product entered into the testing.

There is a re-testing fee if the load tests require more than two attempts for whatever reason. Load testing is the primary cost involved with testing, and if a company fails twice for a legitimate reason (almost exclusively security related), then re-testing is allowed to accommodate dealing with security measures with the associated fee based on tier.

All fees paid will be documented publicly for posterity.

The table below lists all six price tiers, the testing fee associated with each tier and the re-testing fee associated with failed load tests. All plans are listed in their retail price range, no first-month/first-year/first-billing period/sale prices will be used in figuring out which tier a plan belongs in.

Pricing Tier Price Re-Testing Fee
<$25/month $100 $50
$25-50/month $100 $50
$51-100/month $150 $75
$101-200/month $200 $100
$201-500/month $250 $125
Enterprise ($500/month) $500 $250

Testing Fee Disclosures

All companies paid the same fee based on the pricing tier they competed in. The following companies were re-tested and the number of tests and associated fees are documented below.

Company Extra Tests Total ($)
34SP 1(<25) 50
Chemicloud 1(<25) 50
GreenGeeks 1(<25) 50
GoDaddy 1(<25) 50
HighAvailability 1(<25), 2(50), 2(100) 300
Jelastic 1(Enterprise) 250
LightningBase 1(<25) 50
Pantheon 1(Enterprise) 250
Pressable 1(50) 50
SiteGround  2(<25), 2(50) 200
TVC 4(<25) 200
WPCycle 1(<25) 50

 

Notes - Changes made to Hosting Plans

Almost every company had to disable security measures of some sort.

Many companies had caching turned on from either a click, welcome email instructions or other obvious way that was presented clearly to new users. Some of the instructions might be inside wp-admin, others had features in the control panel to turn on caching/performance optimizing. If it wasn't made explicitly obvious it did not count as default.

Special note about Jelastic

I almost didn't let Jelastic participate because their billing model makes it difficult to do apples-to-apples comparisons. However, they came up with predefined packages which fit the price tiers in this testing. All Jelastic tests were done with their partner, Scaleforce. They also provided the following statement:

"Jelastic is offered across a distributed network of hosting partners worldwide (https://jelastic.cloud/), thus the infrastructure performance and price for resources vary based on the chosen service provider. WordPress can be installed as packages with fixed price or using dynamic resource allocation with Jelastic standard pay-per-use approach (https://jelastic.com/pay-as-you-use-cloud-pricing/)."

See The Results

<$25/Month Tier$25-50/Month Tier$51-100/Month Tier$101-200/Month Tier$201-500/Month Tier$500+/Month (Enterprise) Tier
The following two tabs change content below.
avatar
Kevin Ohashi is the geek-in-charge at Review Signal. He is passionate about making data meaningful for consumers. Kevin is based in Washington, DC.
Loading...

Interested in seeing which web hosting companies people love (and hate!)? Click here and find out how your web host stacks up.