Category: Web Performance
2026
-
Web-Perf Wednesday 008 – Good INP Rates Keep Falling -
Web-Perf Wednesday 007 – Chrome Makes Busy Workers Measurable -
Web-Perf Wednesday 006 – Faster Browser Releases Change Your RUM Population -
Unattributed Navigation Overhead (UNO) Is Underrated -
Web-Perf Wednesday 005 – RUM Needs More Than a Percentile -
Introducing LUX Sidecar: Your SpeedCurve Companion -
When Safari’s ‘Ignore Cache’ Ignored Cache-Control -
Web-Perf Wednesday 004 – A Quiet Week Is Time to Investigate -
Web-Perf Wednesday 003 – Native SPA Metrics Have Arrived -
Web-Perf Wednesday 002 – The Metrics Don’t Tell the Whole Story -
Measuring Component Performance with the Container Timing API -
Low- and Mid-Tier Mobile for the Real World (2026) -
Web-Perf Wednesday 001 – SPAs Are Finally Becoming Measurable -
Front-End’s Missing Metric: The TBT Window -
Meet Your Users Where They Are with Obs.js -
Better Browser Caching with No-Vary-Search -
What Is CSS Containment and How Can I Use It? -
When All You Can Do Is All or Nothing, Do Nothing
2025
-
Obs.js: Context-Aware Web Performance for Everyone -
Low- and Mid-Tier Mobile for the Real World (2025) -
The Fastest Site in the Tour de France -
Making Sense of the Performance Extensibility API -
Why Do We Have a Cache-Control Request Header?
2024
-
A Layered Approach to Speculation Rules -
Designing (and Evolving) a New Web Performance Score -
Core Web Vitals Colours -
Optimising for High Latency Environments -
Cache Grab: How Much Are You Leaving on the Table? -
blocking=render: Why would you do that?!
2023
-
Correctly Configure (Pre) Connections -
The Three Cs: 🤝 Concatenate, 🗜️ Compress, 🗳️ Cache -
What Is the Maximum max-age? -
How to Clear Cache and Cookies on a Customer’s Device -
The Ultimate Low-Quality Image Placeholder Technique -
Core Web Vitals for Search Engine Optimisation: What Do We Need to Know? -
The HTTP/1-liness of HTTP/2 -
In Defence of DOMContentLoaded -
Site-Speed Topography Remapped -
Why Not document.write()?
2022
-
Speeding Up Async Snippets -
Critical CSS? Not So Fast! -
Measure What You Impact, Not What You Influence -
Optimising Largest Contentful Paint
2021
2020
-
Site-Speed Topography -
Speed Up Google Fonts -
Real-World Effectiveness of Brotli -
Performance Budgets, Pragmatically
2019
-
Lazy Pre-Browsing with Prefetch -
Making Cloud.typography Fast(er) -
Time to First Byte: What It Is and How to Improve It -
Self-Host Your Static Assets -
Cache-Control for Civilians -
Bandwidth or Latency: When to Optimise for Which
2018
-
What If? -
CSS and Network Performance -
The Three Types of Performance Testing -
Image Inconsistencies: How and When Browsers Download Images -
Identifying, Auditing, and Discussing Third Parties -
Measuring the Hard-to-Measure -
Finding Dead CSS
2017
-
The Fallacies of Distributed Computing (Applied to Front-End Performance) -
Performance and Resilience: Stress-Testing Third Parties -
Base64 Encoding & Performance, Part 2: Gathering Data -
Base64 Encoding & Performance, Part 1: What’s Up with Base64? -
Moving CSS Wizardry onto HTTPS and HTTP/2 -
Choosing the Correct Average


