WordPress 6.4, releasing on November 7th, is packed with over 100 improvements to site performance which promises to make this release one of the most important ones to get right away.
This new release continues the solid upward performance trend which to date has nearly doubled the average core web vitals performance in the two years since the proposal to create a WordPress Performance Team in 2021.
WordPress at the time acknowledged that performance of the core CMS itself was the responsibility of WordPress.
In a short period of time the team launched the Performance Lab plugin and began steadily making itself a part of every change made to WordPress, making sure that the changes don’t introduce bloat or performance bottlenecks.
Their efforts have been incredibly successful, visible in the performance metrics of actual WordPress sites recorded on the HTTPArchive Core Web Vitals Technology Report.
The facts speak for themselves:
Speed Improvements In WordPress Are A Priority
A relatively recent discussion at WordPress.org illustrates that performance is a top priority for virtually every component of WordPress under development.
For example, the default theme (TwentyTwentyFour) that is bundled in the next version of WordPress (6.4), was discovered to perform 70% worse than the previous theme (TwentyTwentyThree).
They benchmarked the home page and a single page between the previous default theme, TwentyTwentyThree (TT3) and TwentyTwentyFour (TT4).
WordPress tested for Largest Contentful Paint (LCP), a Core Web Vitals metric that measures how long it takes to load a webpage and when the user can see the largest block of text or image on the page.
They also used Time to First Byte (TTFB) and LCP together to measures how fast the site is to deliver the first “byte” of data to the browser and how long it takes for the browser to render the markup. This test reveals inefficiencies in the markup.
Here is the summary of the TwentyTwentyFour (TT4) performance testing:
“For the home page:
- Overall load time (LCP) is 58.8% slower.
- Client-side performance (LCP-TTFB) is 93.5% slower.
- Server-Timing (wp-total) is 71.8% slower.
For the singular post:
- Overall load time (LCP) is 3.9% slower.
- Client-side performance (LCP-TTFB) is 40.1% faster.
- Server-Timing (wp-total) is 42.3% slower.”
The reason TT4 was slower is because TT3 was more stripped down and made to be extended.
Nevertheless, leaving out the additions to TT4 was not an option.
One developer summarized the problem like this:
“I think the benchmark data is very interesting.
The two themes we are comparing don’t play in the same league.
TT3 was streamlined and made to be extended, while TT4 is full-featured and tries to make extensive use of the site editor tools.
This doesn’t mean that the data extracted is not valid.
In fact, it definitely shows us what an actual use case versus a base theme looks like.
As you mentioned, TT4 is not adding any features in itself; it’s merely using patterns and adding a few block styles, so anything we find here to fix is liable to benefit every single block theme that’s out there, not just TT4, which I think it’s fantastic.”
At one point during the performance work, the WordPress core contributors managed to obtain a 7.67% faster loading time with the new default theme, better than the previous theme.
It’s important to zoom out and put this project into perspective: TwentyTwentyFour (TT4)4 contains important functionality that TT3 does not.
So making TT4 perform absolutely better than TT3 was probably never going to happen because one default theme is more complex than the other.
Nevertheless, they were able to narrow the home page performance difference from 71.8% slower to only 10% slower.
The single page performance went from 42.3% slower to only 11.7% slower.
The performance analysis ended with this statement:
“I am very excited to report that most (if not all) of the server-side performance concerns have been addressed, via additional general performance fixes that landed in core…
What the WordPress developers did next was search for a solution so that they could ship a better default theme that included important functionality but still performed well.
Given how much richer the content and layout of TT4 is compared to TT3, this is a major accomplishment, and there is no need to worry about the remaining performance difference due to that.”
Over 100 Performance Improvements
WordPress 6.4 contains over 100 performance improvements.
An announcement for a test version of 6.4 states:
“WordPress 6.4 will include more than 100 performance-related updates, including improvements to template loading performance for Block Themes and Classic Themes, usage of the new script loading strategies “defer” and “async” in core, blocks, and themes, and new functions to optimize the use of autoloaded options.”
The following is an overview of the performance improvements to look forward to when WP 6.4 is released in early November.
Script Loading Strategies To Improve Performance
An overview of new script loading changes to WordPress 6.4 reveals updates to the use of defer and async attributes in “frontend scripts in core and bundled themes” which will speed up all WordPress websites.
They also changed how scripts with the “defer” attribute are loaded. The defer attribute tells the browser not to execute a script until the browser has finished downloading the entire webpage is loaded, at which point the script can then start to run.
What they did was to move scripts with the defer attribute that were in the footer area up to the head section, which speeds up how fast they are executed.
WordPress 6.4 No Longer Creates Attachment Pages
This is an important change to WordPress that relates to SEO as well as performance, an improvement suggested by founder of Yoast, Joost de Valk (@jdevalk).
Every previous version of WordPress created a standalone page for any media that was uploaded.
So if you uploaded an image for a webpage, WordPress would also create a standalone webpage for that image, all by itself.
Yoast SEO has a feature that turns that off by default which stops WordPress from creating thousands of thin content pages consisting of images.
The problem was described like this:
“WordPress creates attachment pages by default for every attachment uploaded.
On the *vast* majority of sites, these attachment pages are useless.
They do however exist, and get crawled, and sometimes even rank in search results, leading to bad results for users and site owners.
I want to propose we get rid of them.”
This behavior is fixed in WordPress version 6.4.
Improvements to Template Loading
These are changes to how templates are loaded and relate to the problems discovered with the TwentyTwentyFour default theme, which they solved by:
- Introducing new caching
- Removal of unnecessary checks for whether a theme file exists
- Removed repeated file lookups related to themes (makes WordPress faster)
- Added modern performance improvements to sites still using older themes so that they benefit from lazy loading, async decoding and fetch priority
Image Loading Optimization for WordPress 6.4
This is an improvement to how images and iframes are loaded, specifically with reference to loading attributes like “lazy loading” and “fetchpriority” which optimize how images and iframes are loading, increasing webpage performance.
New Autoload Options Functions
WordPress 6.4 will ship with new options functions that allow plugin developers to control which options are automatically loaded.
This will speed up WordPress sites because it will reduce unnecessarily loading options which in turn slows server performance.
Prevent Redundant Style Codes
This is a change to how styles are loaded. Styles are code that tell the browser what a website should look like in turns of colors, spacing, font sizes, etc.
This improvement offers third party developers the ability to manage how styles are loaded in order to prevent redundant code from loading.
Reducing redundant code, especially by third party developers, is a huge win for performance.
Object Caching Improvements
WordPress 6.4 includes performance enhancements to Object Caching.
The Object Cache is where data used for creating webpages are stored so that the website doesn’t have to repeatedly fetch resources from the database.
It’s like if a cook needs a salt shaker, they put the salt on a counter within reach instead of having to walk to the cabinet, get the salt, use it and then return the salt back to the cabinet.
The official WordPress announcement for this improvement explains:
“In WordPress 6.4, the Performance team has introduced several enhancements centered around object caching, leading to better handling of filters, reduced database queries, and improved overall system efficiency.”
Improved overall system efficiency sounds like a recipe for success!
WordPress 6.4 Continues Positive Performance Trend
The takeaway here is that performance is a key ingredient in creating the WordPress core. The effects of those improvements are reflected not just in the core CMS but also across themes and plugins, with some improvements applying to sites using older themes and WordPress versions.
Those improvements are reflected in the data at HTTPArchive which show a steady upwards track record of improvement that continues with the release of WordPress 6.4, currently scheduled for November 7, 2023.