Why WordPress is Slow and Bloated (And Why You Need to Deal With It)
Why WordPress is Slow and Bloated (And Why You Need to Deal With It)
Despite the astonishing rise in the power and popularity of WordPress over the past decade, the platform has been dogged by persistent complaints about its performance across a number of areas.
Whether it’s in the form of attacks on the platform’s architecture and implementation language of choice, complaints about site load speed or questions of how it performs at scale, there’s never been any shortage of critics ready to pounce on WordPress at the slightest provocation – real or imagined.
In this article, we’ll tackle that subject head-on and look at whether WordPress can really be considered a “slow” or “bloated” Content Management System.
We’ll begin by examining some of the most common areas of concern, move on to considering the very real progress the platform has made, and finish with an outline of areas to look at in terms of optimizing performance.
Let’s start with an honest look at the scale of the problem.
What Do We Mean by Bloated?
“Bloated” is one of those words that’s very easy to sling into a technical conversation without necessarily adding any real value.
As developer Tom McFarlin does a great job of pointing out in Everything is Bloated, Nothing is Good, it’s also an accusation that could be levelled at virtually all modern software.
After making an eloquent case for not ignoring the history and progress of whatever platform happens to be under investigation, his piece concludes with this sensible advice:
“Some things definitely are bloated. Others are just overkill for our own needs. There’s a difference between the two, and we – as developers – need to do a better job at distinguishing between the two.”
That’s largely the position we’ll be taking for the remainder of this article.
To borrow an analogy from Louis C.K., the quality of the microwaved food being served shouldn’t distract us from the fact that we are sitting in a chair in the sky.
The reality is that, after more than 10 years of continuous development by an army of expert developers, WordPress is one of the world’s most successful open source projects and no more bloated or unwieldy than any other platform of comparable size.
Is PHP a Problem?
The fact that WordPress runs on PHP has of course made it the target of a particular flavor of criticism.
While PHP may has its weak points, with a track record of powering Facebook and Tumblr through their initial growth phases and its current position powering over 80% percent of the web, it must be doing something right.
Add in a series of recent improvements in terms of best practice and tooling – along with Facebook’s cutting-edge contributions in the form of HHVM and Hack – and it’s hard to see criticism of PHP’s use in 2015 as anything more than a reflection of personal programmer prejudice rather than any type of legitimate performance concern.
Can WordPress Scale?
As an open source platform, WordPress churns out nearly a quarter of the web. In its commercialized incarnation at WordPress.com, it serves more than 30 billion page views per year and – via WordPress VIP – is responsible for delivering a huge amount of high-profile, high-traffic sites to users worldwide.
The owners of these sites are not paying WordPress VIP’s steep fees out of the goodness of their respective hearts. They’re doing it because the platform is a proven vehicle for delivering business value to some of the largest online properties on earth.
All that said, there are admittedly aspects of WordPress which have attracted legitimate complaints in the past and are ripe for future improvement.
Let’s run through some greatest hits.
Back End Blues
Pick up a blank piece of paper. Hold it in your hand. Turn it around a few times and examine it from all angles if the mood so takes you.
You are looking at a distraction-free interface that can be used to accomplish all manner of tasks.
Now log into the WordPress admin and consider the various sights that lie before you.
Perhaps the kindest way of putting it is to say that it’s not exactly uncluttered.
The information overload users new and old are faced with comes at a price. The ever-increasing amount of functionality shoehorned into this space is starting to have a genuinely negative impact on overall user experience.
A recent piece by Envato summarized the thoughts of a number of leading figures in the WordPress community on the challenge facing the UI team – including this succinct overview from ThemeForest’s Stephen Cronin:
“Other content management systems, such as Ghost, have taken the publishing experience to a new level. WordPress needs to respond and make the admin area simpler and easier to use. Advanced functionality still needs to be available to power users, but it shouldn’t get in the way of the average user. Finding the right balance will be difficult, but I think they [the WordPress team] are up to it.”
Our own CEO James Farmer has also been moved to stress the urgency of improving this aspect of WordPress.
That need for change is of course nowhere more apparent than in the area of the admin, where users spend the majority of their time.
The Post Editor
Compared to the monster that is Microsoft Word, the WordPress post editor is a model of restrained, carefully implemented design choices.
Many people’s hopes of a turnaround in this department were pinned on the Front-end editor plugin, originally scheduled for inclusion in core in 2015. Progress on that project has unfortunately stalled.
The publishing interface is an area content management systems are increasingly judged on and WordPress can’t afford to rest on its laurels too much longer in this regard.
Expect to see it following the lead of its new breed of competitors sooner rather than later. It’s already started happening on the theming/plugin level.
Speaking of which, let’s move on to that potentially problematic area.
The first thing to mention here is that much of the alleged complexity and bloat of WordPress can be avoided by simply taking a reasonable approach to plugins and not relying too heavily on their use.
1.6 million WordPress Superheroes read and trust our blog. Join them and get daily posts delivered to your inbox - free!
Despite WordPress’ sterling efforts in trying to enforce discipline in this regard, third-party themes and plugins have long been one of the leading culprits for sluggish performance, as evidenced by the existence of sites such as WP Bloat.
A factor compounding the problem in the last couple of years has been the trend on the part of developers to muddy the waters and bundle an increasing amount of plugin functionality into the theme layer.
Typically Risky Scenarios
We’ve considered some potentially problematic areas, but it can’t all be bad news, otherwise WordPress would hardly have risen to its current position of dominance in such a short time.
The question arises though: Are there particular types of sites where issues rear their heads more than others?
There are no hard and fast rules in this regard, but the following scenarios tend to run a higher risk of encountering problems.
That didn’t stop the likes of Groupon from beginning with a simple WordPress blog of course, but complex applications are still more likely to require custom development from the outset, and trying to shoehorn their requirements into WordPress can invite trouble.
eCommerce options in WordPress have improved significantly over the years, but selling online is still a tricky proposition.
The tools are there to sell your wares in WordPress, but problems tend to arise where site owners are simply unaware of how much work outside the CMS is actually involved in getting this right.
Automattic’s recent acquisition of WooCommerce could signal some major positive moves in this area however.
As with eCommerce though, it’s easy to underestimate just how much effort is required to make a community site work. The mistake many people make is assuming that WordPress will somehow build their community for them. Sadly, this won’t happen.
“Kitchen Sink” Sites
Developers across the world have learned the hard way to run a mile from project descriptions that involve phrases like “aspects of Facebook, YouTube and eBay functionality”.
The range of plugin solutions available with WordPress often leads people to imagine they can quickly pull together, on their own, the type of site that takes months of planning and a large development team in the real world.
Make sure the outline of your site is realistic within the context of your current resources to begin with, rather than expecting WordPress to be a magic bullet.
Real Progress WordPress Has Made
WordPress has had to grow up in public over the years, but it’s made continual improvements with every release.
Coding standards, security and documentation have been brought into line, and the project’s organization is on an increasingly professional footing. Release schedules are now nicely dialled in and updating has never been simpler.
Let’s start finishing up with a brief review of some standard areas to address with helping to maximize your WordPress experience.
Making the Most of WordPress
Here are some of the main areas to consider when looking to make WordPress work the way you want it to.
Monitoring and Reporting
Before you can start solving any problems you might run into, you simply have to have your monitoring and reporting setup in order.
“It crashed” or “it’s slow” might be valuable indications that something is amiss, but they do nothing to help troubleshoot a problem.
The situation is getting better, but you can’t expect to simply sling all your content into WordPress and have it magically optimized by default. You still need to pay attention to the basics of asset optimization to make sure you’re getting the most bang for your buck.
Caching and CDNs
Theme and Plugin Selection
WordPress has an existing set of theming and plugin guidelines for good reasons. Make sure the ones you implement on your site abide by them to save yourself a lot of maintainability and performance pain down the line.
Server setup and hosting is a massive area on its own, so we won’t go into detail here. Remember that WordPress is merely one link in a chain when it comes to serving up your site, and it’s often a long way from the weakest one.
To put it bluntly, you can’t put lipstick on a pig. If the background against which you are planning and running your site is chaotic and poorly organized, using WordPress will not be able to magically fix that.
Whether it’s in terms of end-user experience, or from the perspective of a site owner, WordPress can – like all platforms of its size and complexity – occasionally frustrate.
If you’re planning a site of any real scale, you’ll need to devote time and resources to planning and optimizing all levels of the stack to make sure that you’re really taking advantage of its full potential.
Its overall speed, security, and performance – along with future improvements such as the REST API – make it more than worth that bit of extra effort.
We’re curious to hear your thoughts on the matter. Has WordPress become too big for its boots? Are you increasingly baffled by the options available? Have you been tempted by other, more focused alternatives? Tell us in the comments below.