In this guide: Website speed terms explained: caching, minification, combining files, lazy loading, defer and async, preload and prefetch — what they mean and when to use…
Open any caching or performance plugin and you’ll see a list of settings: minify, combine, defer, async, preload, lazy load. Turning everything on might speed up your site — or break it. Understanding what each term means helps you choose the right settings.
Caching means storing a copy of something so it can be delivered faster next time.
Cache-Control headers.Watch out for: stale content after updates (purge the cache), and dynamic pages like carts that must not be cached for everyone.
Minification removes unnecessary characters from code — spaces, line breaks, comments — without changing how it works.
/* Before */
.button {
color: #ffffff;
padding: 12px;
}
/* After */
.button{color:#fff;padding:12px}
It reduces file size modestly. Generally safe, though occasionally minifying JavaScript breaks poorly written scripts.
Combining (concatenation) merges multiple CSS or JS files into one. This mattered a lot with older HTTP/1.1. With HTTP/2 and HTTP/3, browsers can download many files at once efficiently, so combining is less important and can even hurt caching efficiency. Test before enabling.
Removing unused CSS goes further: it strips CSS rules the page doesn’t use. Powerful for heavy themes and page builders, but test carefully so interactive elements still look right.
Lazy loading delays loading resources until they’re needed — typically images, videos, and iframes that appear further down the page.
loading="lazy".Related: video facades show a static thumbnail and load the full video player only when clicked.
By default, when a browser encounters a <script> tag in the HTML, it stops building the page to download and run the script. This is render-blocking.
async: downloads the script in the background and runs it as soon as it’s ready — possibly before the HTML is finished. Order isn’t guaranteed. Good for independent scripts like analytics.defer: downloads in the background and runs after the HTML is parsed, in order. Good for most site scripts.Critical CSS: extracts the styles needed for above-the-fold content and inlines them in the HTML, then loads the rest of the CSS without blocking rendering.
These are resource hints that tell the browser what to fetch early.
Preload: “This file is needed very soon on this page — fetch it now.” Use for critical resources like the hero image or main web font.
html
<link rel="preload" href="/fonts/inter.woff2" as="font" type="font/woff2" crossorigin>
Preconnect: “Set up a connection to this domain early.” Useful for important third-party domains (like a font CDN).
Don’t preload too much — preloading everything means nothing is prioritized.
A safe starting configuration for most WordPress sites:
Enable settings one at a time and test after each. See How to Speed Up WordPress: 20 Proven Tips.
Further reading: OWASP Top 10 web security risks
We may earn a commission on purchases made through these links, at no extra cost to you.
Don’t miss the chance to participate in the biggest giveaway of this year.