Websites

Static-first is the cheapest performance win left

Static generation removes the largest sources of slow pages: server work at request time, client-side content assembly, and render-blocking third-party requests. Most sites that fail Core Web Vitals fail on those three, not on anything exotic.

Drasyo

Updated

1 min read

Ivory ceramic tiles precisely assembled on a brass base, with loose pieces beside them on a cobalt workbench.

The unglamorous causes

Slow pages are rarely slow for interesting reasons. In practice it is a handful of the same things:

  • Content assembled in the browser, so nothing paints until JavaScript runs
  • Fonts fetched from a third-party host, adding a DNS lookup and a connection before any text appears
  • Images without dimensions, so layout shifts as each one arrives
  • A decorative script blocking first paint

Static generation removes the first outright and makes the rest obvious.

Self-host your fonts

A font request to a third-party CDN costs a DNS lookup, a TLS handshake and a round trip before a single character renders. Self-hosting a subset, preloaded, removes all of it. On this site it is four woff2 files and zero external requests.

Let the decoration arrive late

If a page has an ambient effect, load it when the browser is idle and gate it on device capability. A metered connection, a browser without WebGL2, or a reader who has asked for reduced motion should never download it. A phone or a low-core machine is a different case: it should still get the effect, just at a lighter tier — fewer particles, a capped pixel ratio — rather than losing it outright.

The test worth running: disable JavaScript entirely and read the page. If the content is all there and legible, your decoration is genuinely optional. If it is not, the decoration is load-bearing and your metrics will show it.

Article FAQs

Still have questions?The short answers.

Why is my website slow?

Usually for unglamorous reasons: content assembled in the browser so nothing paints until JavaScript runs, fonts fetched from a third-party host, images without dimensions so the layout shifts, and a decorative script blocking first paint. Static generation removes the first outright and makes the rest obvious.

Should a website host its own fonts?

Yes, in most cases. A font fetched from a third-party CDN costs a DNS lookup, a TLS handshake and a round trip before any text renders. Self-hosting a preloaded subset removes all of it; this site loads its fonts as four woff2 files with zero external requests.

Do animations slow down a website?

Disable JavaScript and read the page. If the content is all there and legible, the decoration is genuinely optional. If it is not, the decoration is load-bearing, and your Core Web Vitals will show it.

If you want this done

Websites

A Drasyo build is static-first: pages are generated ahead of time and served as HTML, so they load fast, work without JavaScript, and give crawlers and answer engines something to read on the first request rather than after a fetch.

See the service

Related reading