Speed is the feature most business owners underrate and most developers underdeliver on. A fast website feels professional before the visitor reads a single word. A slow one feels broken, no matter how nice the design.

This post explains what actually makes a website fast in 2026 — not the folklore, the measurable stuff.

What Google measures

Google's Core Web Vitals are three metrics that directly influence search rankings:

  • Largest Contentful Paint (LCP) — how long it takes for the biggest visible element (usually a hero image or headline) to appear. Target: under 2.5 seconds.
  • Interaction to Next Paint (INP) — how responsive the page feels when you tap or click. Target: under 200 ms.
  • Cumulative Layout Shift (CLS) — how much content jumps around while loading. Target: under 0.1.

These are not arbitrary. They correspond to the three moments a user forms an impression of your site: "did something appear", "does it respond", "is it stable". Fail any of them and your bounce rate climbs.

I wrote a plain-English version of this for non-developers: Core Web Vitals Explained for Business Owners.

The four things that actually matter

After building dozens of sites and profiling many more, I find that performance almost always comes down to four levers:

1. Images

Images are the single biggest payload on most websites. An unoptimized hero photo can be 3 MB by itself — more than the rest of the page combined.

What I do on every project:

  • Convert every photo to AVIF with a WebP fallback.
  • Serve responsive sizes via srcset so a phone never downloads the desktop version.
  • Lazy-load anything below the fold.
  • Strip EXIF metadata and color profiles that double file size for no benefit.

A correctly-processed hero image is usually 40–120 KB instead of 2–3 MB. That is a 20× improvement on one file.

2. Fonts

Custom fonts are second on the list. A typical site loads three to five font files at 80 KB each, and then waits for them before painting any text. That is a guaranteed LCP problem.

The fix: pick one typeface. Preload the primary weight. Use font-display: swap so text appears immediately in a system font and swaps in when the custom font is ready. On this portfolio I ship a single Satoshi variable file and preload it — total font weight under 50 KB.

3. JavaScript bundles

The single biggest lie of the last decade of web development is "it's fine, users have fast phones now." Half the world is on mid-range Android devices where parsing 500 KB of JavaScript takes three seconds before a single line runs.

The solutions are not complicated:

  • Route-based code splitting so each page loads only its own code.
  • Dynamic imports for heavy libraries (charts, 3D, rich editors) that only some pages need.
  • Tree-shaking so unused exports are dropped.
  • No analytics or tag managers in the critical path — load them after the page is interactive.

This is where custom builds win against templates. Templates ship all their code on every route because they cannot predict what you will use. I wrote more about that trade-off in Why I Build Custom Websites Instead of Using Templates.

4. Hosting and caching

The last 500 ms of most slow sites comes from the server itself. Cheap shared hosting, no CDN, no cache headers. The browser asks for a file, the server takes 800 ms to answer, and nothing you do on the front end can hide that.

I deploy client projects on Vercel or Cloudflare Pages. Both push static assets to a global edge network so the first byte arrives in under 100 ms from anywhere. HTML files get no-cache headers so content updates are instant; JS and CSS files get immutable headers with content-hashed filenames so they are cached forever. This combination is almost free and it makes the biggest end-user difference of anything on this list.

Why it is worth the effort

Speed is not a vanity metric. It correlates directly with money:

  • Walmart found every 100 ms improvement in load time increased revenue by 1%.
  • Pinterest cut perceived wait times by 40% and saw a 15% increase in SEO traffic and sign-ups.
  • Google's own data shows bounce rate doubles when load time goes from 1 second to 3 seconds.

You do not need a PhD to see the pattern. Faster sites make more money. Every project I deliver is tested against Google PageSpeed Insights and Lighthouse before it ships — not as a checkbox, but because those scores translate directly into customer behavior.

Work with me

If your current site feels slow and you are not sure why, I run free performance audits for businesses that are considering a rebuild. Email info@tonibarisic.com or visit tonibarisic.com.