Not all chapters of this year’s Web Almanac have been released yet, but several interesting developments can already be concluded from the published articles. Unsurprisingly, my personal highlights are from the chapters about performance and sustainability.
Performance
Within the realm of Core Web Vitals, the FID metric was replaced by INP earlier this year. This is a positive step forward, as it not only evaluates the initial interaction with a website but instead considers the one with the slowest (visual) response. In recent years, certain anti-patterns emerged that manipulated scores for the former metric. This does not improve UX; on the contrary, subsequent interactions often become slower because the delayed JS code blocks the browser’s main thread.
To clarify, I am a strong proponent of loading third-party scripts only after users have consented to cookies. However, this is due to the necessity of maintaining compliance with data protection regulations.
There is an apparent positive trend regarding Core Web Vitals. Had INP been a metric back in 2022, only 31% of websites would have had exclusively good Core Web Vitals; by 2024, this figure has risen to 43%.
A similar trend is evident within the individual metrics:
- LCP from 51% to 59% within the “good” range.
- INP from 55% to 74% in the “good” range.
- CLS from 74% to 79% within the “good” range.
Determining the precise reasons for these significant improvements is challenging based on the available data. Here are some facts and hypotheses:
- ✔️ The bfcache is seeing slightly more adoption, positively impacting LCP, INP, and CLS scores.
- ✔️ More images now include explicit dimension attributes, improving CLS scores.
- ✔️ Lazy-loading of LCP images has decreased slightly.
- ❌ Surprisingly, fewer LCP images are detected by browsers’ preload scanners, mostly due to increased reliance on JS-generated HTML.
- ❌ LCP images have grown larger, despite the rising adoption of modern image formats.
- ✔️ Optimisations in frameworks such as React and Next.js have improved INP scores.
- ✔️ Major CMS and e-commerce platforms now employ dedicated performance teams, driving above-average improvements.
- ✔️ The brotli compression algorithm has gained traction, increasingly replacing the less efficient gzip. Newer algorithms are also expected to gain adoption.
- ✔️ CDNs are seeing wider use.
The developments highlighted above are mostly positive, but they do not fully account for the observed performance improvements in my opinion. The global mobile network infrastructure is unlikely a contributing factor, as Time-to-First-Byte metrics have remained virtually unchanged (at least at the 75th percentile). Another plausible explanation could simply be that end-user devices have improved over the past two years.
Looking forward, I’d be interested in the following stats/graphs:
- Regional differences in Core Web Vitals.
- Adoption of more browser optimisations such as the Fetch Priority API and the Speculation Rules API. Update: The newly published HTTP chapter shows a very positive trend regarding the usage of the Fetch Priority API: 26% of all pages already utilise this fairly new feature.
- The full distribution of all Core Web Vitals metrics instead of only the 75th Percentiles.
Maybe I’ll be able to extract the according data out of the httparchive and CrUX BigQuery DBs without going broke.
Sustainability
The bad news from this report is that websites are generating more carbon emission than they did two years ago. While text-based files are now better compressed, the majority of data transfer is attributed to images. Although more images are being transmitted in modern formats, a counterproductive trend toward larger image sizes has been observed. Additionally, JavaScript files are contributing increasingly to websites’ carbon footprints.
On a more positive note, there is growing awareness of sustainability in web development. Last year, the W3C released guidelines for sustainable web development. These comprehensive guidelines encompass six sustainability criteria, addressing not only environmental factors but also other aspects like privacy, accessibility, and security.
Governments are also taking action. The EU, Germany, France, the USA, and India have introduced regulations aimed at ensuring more sustainable resource management in the digital sphere.
The authors of the report also express justified concerns about the increasing reliance on AI, which I share. From an environmental perspective, AI poses several critical challenges:
- AI-powered web search is significantly more carbon-intensive than traditional search engines.
- AI systems are exceptionally data-hungry, with numerous bots crawling the web to harvest content. This content is then stored in data centers to train LLMs.
- AI-generated content inflates the volume of web data without necessarily adding substantive value.
Other Observations
There are several additional noteworthy trends from my perspective:
- ✔️❌Fonts are now more often self-hosted, which offers privacy benefits and potential performance improvements if best practices are followed. However, this does not seem to be the case, from an ecological standpoint. Self-hosted WOFF2 fonts are, on the median, twice as large when self-hosted. This is likely due to the lack of subsettings.
- ✔️The most efficient font format, WOFF2, has gained significant market share, contributing to reduced data volume.
- ❌11% of HTML documents are still sent without compression. There is considerable room for improvement here.
- ❌The usage of the Cache-Control header remains suboptimal.
- ✔️User preferences, such as dark mode and reduced animations, are increasingly being respected, which enhances both sustainability and accessibility.
- ❌Third-party domains are being utilised more than ever, with Google domains far outpacing others. This is not a promising sign for user privacy.
- ✔️❌The European Accessibility Act will come into effect in mid-2025, impacting numerous websites and driving improvements in accessibility. Although no significant advancements are yet evident in the report’s corresponding data, third-party accessibility providers not reflected in these statistics are gaining traction. Whether these third-party providers increase accessibility is controversial.
- ❌Preload hints are used less often than 2022. Furthermore, 25% of pages that use preload hints have at least one preloaded resource, that will not be used on the page.
Outlook
I eagerly await the upcoming chapters, particularly those covering JavaScript, media, privacy, and page weight, which promise to offer further interesting insights. I’ll probably update this post then.
- For example, some sites delayed loading JS resources until after the initial interaction, effectively after the FID score had been calculated. A notable example is the WordPress caching plugin WP Rocket.
- When loading from third-party servers, personal data (e.g., timestamps + IP addresses and referrers) is shared with those servers. This should only occur with user consent unless the resources are essential for the website’s functionality.
-
For example,
unload
handlers, which prevent the bfcache on desktop, are now used less frequently. Similarly,Cache-Control: no-store
is less prevalent. Both trends increase bfcache adoption. Furthermore, since Chrome 116 (August 2024), Chrome slowly started to roll out bfcache support for pages with ano-store
header; this rollout should further boost adoption over time. However, this particular dataset does not yet reflect this change. - Shopify has long emerged as a leader in performance optimisation, while WordPress has recently established a performance team yielding notable results.
- Although brotli achieves better compression than gzip, its higher computational cost makes it less practical for dynamically compressed content. This has led Cloudflare to transition to Zstandard, an algorithm developed by Facebook that compresses more efficiently than gzip while not being as expensive computationally as brotli.
- I’d expect some cumulations just below the Core Web Vitals threshholds, because pages often get optimised only until they show “good” Core Web Vitals results.
- The increased use of brotli involves higher computational demands — a double-edged sword in terms of carbon emission.
- Providers like Eye-Able are experiencing strong growth. Such solutions are criticised, because they suggest that installing their product will solve all accessibility concerns und make websites compliant with the new regulations. But that’s often not the case.
- https://almanac.httparchive.org/en/2024/performance (last opened: 07.01.2025)
- https://web.dev/articles/vitals?hl=en#core-web-vitals (last opened: 07.01.2025)
- https://web.dev/articles/fid?hl=en (last opened: 07.01.2025)
- https://web.dev/articles/inp?hl=en (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#core-web-vitals (last opened: 07.01.2025)
- https://web.dev/articles/lcp?hl=en (last opened: 07.01.2025)
- https://web.dev/articles/cls?hl=en (last opened: 07.01.2025)
- https://web.dev/articles/bfcache?hl=en (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#explicit-dimensions (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#lcp-lazy-loading (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#fig-13 (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2022/performance#fig-12 (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#lcp-size (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2022/performance#lcp-size (last opened: 07.01.2025)
- https://vercel.com/blog/improving-interaction-to-next-paint-with-react-18-and-suspense (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/cdn#compression (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/cdn#fig-2 (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#time-to-first-byte-ttfb (last opened: 07.01.2025)
- https://web.dev/articles/fetch-priority?hl=en (last opened: 07.01.2025)
- https://developer.chrome.com/docs/web-platform/prerender-pages (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/http (last opened: 07.01.2025)
- https://har.fyi/guides/getting-started/ (last opened: 07.01.2025)
- https://developer.chrome.com/docs/crux/guides/bigquery (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/sustainability (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/sustainability#carbon-emissions (last opened: 07.01.2025)
- https://w3c.github.io/sustyweb/ (last opened: 07.01.2025)
- https://w3c.github.io/sustyweb/policies.html#laws-and-policies (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/fonts#hosting-and-services (last opened: 07.01.2025)
- https://www.kojordan.com/blog/web-fonts-drawbacks/ (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/fonts#file-formats (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/markup#compression (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/sustainability#caching (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/accessibility#fig-8 (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/third-parties#fig-6 (last opened: 07.01.2025)
- https://en.wikipedia.org/wiki/European_Accessibility_Act (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/accessibility#conclusion (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/http#resource-hints (last opened: 07.01.2025)
- https://wp-rocket.me/blog/wp-rocket-3-7/#section-2 (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/performance#backforward-cache-bfcache (last opened: 07.01.2025)
- https://performance.shopify.com/ (last opened: 07.01.2025)
- https://almanac.httparchive.org/en/2024/cms#latest-performance-improvements-in-wordpress (last opened: 07.01.2025)
- https://blog.cloudflare.com/new-standards/#introducing-zstandard-compression (last opened: 07.01.2025)
- https://eye-able.com/press/eye-able-raises-20-million-euro-funding-round#:~:text=First%20record%2Dbreaking%20growth (last opened: 07.01.2025)
- https://overlayfactsheet.com/en/ (last opened: 07.01.2025)