15 June 2020
There's basically three different ways to deliver a website these days.
I'm building a static hosting service for designers and I wanted to it to load pages fast; faster than WordPress and faster than Squarespace. But I wanted to see if that was a realistic expectation. I decided to run some tests on these different methods.
With some Googling and searching around on Censys I was able to put together a sample group of sites, segmented by service. Then it was just a matter of running them through Pingdom's Speed Test service one by one and compiling the results. Here's what I found.
I'll be honest, I expected these to perform the worst. Hosted, templated sites always feel slow to me. But the results weren't bad. The average page load for the sites I surveyed was 1467 milliseconds. But where the hosted services really shone was in consistency. When you run a standard deviation calculation on the page load times, the hosted sites only showed an average deviation 485 milliseconds. This was for all sorts of different content, image heavy, text heavy, etc
👉 Conclusion: Hosted services are decent on page load times and they are most consistent. I.E. Due to their constraints, they're the hardest to screw up royally.
I've built a ton of Wordpress sites in my past, I've built a smaller number of TextPattern sites and I think I did one ExpressionEngine site about ten years ago. I include TextPattern and ExpressionEngine here because architecturally they're similar to WordPress and I wanted more data as a baseline. I was expecting this group of sites to load the slowest and this time I was right.
Dynamic sites took an average of 2,343 milliseconds to load. WordPress was the highest, taking an average of 3,081 seconds to load. And standard deviation was much higher for dynamic sites too:
WordPress had a standard deviation of 1,780 milliseconds, the highest out of any service that I surveyed.
👉 Conclusion: Despite their popularity, dynamic sites are the slowest and most dependent on individual configuration (I.E. hosting provider, plugins, caching, etc.). This is partly due to their complex architecture of interpreted language and database lookups that happens on every single page load. Once you mix in a large amount of unmoderated plugins of varying quality, it becomes hard to prevent sites slowing to a crawl. If speed is a major consideration for your site, look elsewhere or proceed with caution.
Here's the part that I was excited about. Compared to Dynamic sites, static sites are things of beauty. All of the work happens locally or on a build machine so by the time it gets to a server, the only thing it has to do is serve up an HTML page--no database lookups, no language interpretation, no template compilation. Served over a CDN, this should be blazing fast. And when I tested it, it was. Sort of...
(Because static sites don't come with much of a fingerprint to show who the'yre hosted with, it was tricky to even find sites as samples to survey. I used Netlify's site of the week and then some searching on Censys to find samples for these three services.)
Surge.sh and Zeit Now ended up in a virtual tie for the fastest out of all the static services with Surge narrowly beating Zeit. Netlify came in a little slower on page load times then I expected (even getting beat by Squarespace). The standard deviation results were interesting:
The static sites beat dynamic again but lost out the hosted options by a significant margin.
👉 Conclusion: Static sites are the fastest way to serve a site but it's not a magic bullet. You can lose that advantage if you don't build your HTML to take advantage of static hosting. If speed is your main consideration, make sure that you follow other best practices for optimizing page load in addition to serving a static site.
And the winners are...
And the losers:
If you love websites you should love and hate WordPress. I love WordPress because it's made building websites achievable for millions of users. I love WordPress because it treats its users with respect and doesn't trick them into using a product only to steal their data. In many ways it's a wonderful product. But I hate WordPress because it's the wrong architecture for so many of the sites it runs and, because of this, these sites run unbearably slow. I would venture that millions of WordPress sites (maybe even the majority of WordPress sites), should be rebuilt as static sites.
That's why I'm so excited about services like Netlify, Zeit, and Surge. That's why I'm building my own static hosting service. I want more people to have websites but I want them to be fast websites. The future doesn't belong to the template factories like Squarespace & co, it shouldn't. Things are looking very bright for static sites but we need to make it more accessible to the developers who are using currently using WordPress to build their sites.
Disclaimer: Do not substitute one man's results for a legitimate scientific study. There are lots of factors that can affect page load time other than what method / framework you're using. Any framework can be made to load fast and the best framework can load slowly.
🤓 If you want to follow along with me as I build a static web host for designers, sign up for the Wunderbucket beta. Let me know that you came from this article and I'll be sure to put you to the front of the line.