Skip to content
ACME MD

/ Journal

Performance lessons from 2026

Author

headlessd3m0

Published

May 3, 2026

At the start of the year, we made an internal decision to make web performance a cross-cutting axis in all our projects, not an optional extra. Four months later, with several projects already in production, we want to share what we learned.

What we already knew

Established practices still work. Optimizing images, reducing JavaScript, avoiding render-path blocking, using local fonts instead of external services. Nothing new. The difference is that in 2026 browsers are stricter and users less patient than ever.

Core Web Vitals as a starting point

We start every audit with Core Web Vitals, not because they’re perfect, but because they give us a common language with non-technical clients. When an LCP drops from 4 seconds to 1.2, that’s an easy conversation to have.

What surprised us

Three discoveries changed how we work this year:

Fonts are still the bottleneck

We assumed fonts were already a solved problem with font-display: swap and preloads. Turns out they’re not. On Latin American mobile connections, poorly configured fonts still cause perceptible layout shifts even in 2026.

Edge isn’t always the answer

We deployed several projects on edge functions and discovered that for certain patterns — especially APIs with many dependencies — edge introduces additional latency on cold starts. The simple rule “edge is faster” is false.

Modern frameworks are increasingly lightweight

Astro, in particular, surprised us. Complex sites that weighed 280KB of JavaScript in Next.js dropped to less than 30KB in Astro without sacrificing interactivity.

What we’ll do differently

For the rest of the year, our approach will be even more radical: performance budgets per project, continuous monitoring in production, and, when possible, frameworks that ship less JavaScript by default. Speed is no longer a nice-to-have. It’s a product decision.