Skip to main content
.com domains from $2.99 — free WHOIS privacy on every name

Render path · Intermediate · 30 minutes of bisecting

How to minify css and javascript — Bytes Are the Small Half. Measure the Render-Blocking Time

You have three optimisation toggles in front of you and no way to tell which one broke the menu, because you turned all three on at once.

The short answer

Minification is worth single-digit percentages of file weight and almost nothing in perceived speed; the milliseconds live in render-blocking time, so measure that first. Lighthouse's Eliminate render-blocking resources audit puts a figure in milliseconds against each stylesheet and script, and that figure — not the file size — tells you which layer of optimisation to reach for.

The rest of this page is the discipline that keeps aggressive optimisation from costing you a working site: how to read the Coverage panel, why one flag at a time is the only workable rhythm, what the browser console tells you the moment something breaks, and how to exclude a single offending file instead of abandoning the whole layer.

By the HostingFast team · Reviewed 24 August 2026

Intermediate

Level assumed

30 minutes

Bench time

5

Stages to work through

24/7

Cover, round the clock

Assumed here: you can open the browser console and read a Lighthouse report. Not assumed: that you enjoy bisecting a broken theme at eleven at night, which is precisely what turning on minify, combine and defer together guarantees.

Work with two numbers in front of you. The first is the render-blocking figure in milliseconds from Lighthouse. The second is the unused-bytes percentage from the DevTools Coverage panel. Minification moves neither of them much, which is the point of measuring before you start.

What minification is actually worth, in milliseconds

Stripping whitespace and comments typically takes a few per cent off a stylesheet and slightly more off a script, and gzip or Brotli on the server has already claimed most of that saving before the file leaves the disk. Enable it, because it is free and safe, then stop expecting it to change a score.

The figure worth chasing sits in Lighthouse under render-blocking resources, expressed as potential savings in milliseconds. A single stylesheet in the head can hold first paint for hundreds of milliseconds regardless of how tidy its contents are, and no amount of minifying changes when the browser is allowed to paint.

Read the Coverage panel before deleting anything

Open DevTools, Command Menu, Show Coverage, then reload. You get every stylesheet and script with a used/unused split. A theme shipping one bundled stylesheet where ninety per cent goes unused on the homepage is a far bigger finding than any minifier will produce, and it points at conditional loading rather than compression.

That reading is also how you decide about critical CSS. If the above-the-fold rules are a small fraction of a large file, inlining them and deferring the remainder converts a blocking request into a non-blocking one — which is a real change in when paint happens rather than a change in how many bytes arrive.

One flag, one test, console open

Change a single option in LiteSpeed Cache, purge, then walk the site with the console visible: menus, sliders, tabs, the checkout. When aggressive optimisation breaks something it breaks on script order, and the console names the file and the line. With three flags flipped at once that message tells you nothing useful about which flag caused it.

Keep a note of the order you enabled things in. Minify first, because it is the safest. Defer next, because it is the most valuable. Combine last and only if you can measure a gain, since HTTP/2 multiplexing removed most of the reason it ever existed.

Exclude the one file, keep the layer

When a script breaks under deferral, add that single handle to the exclusion list rather than switching the whole feature off. You keep the gain from the other forty files and lose only the one that had a genuine ordering dependency. Every serious optimisation plugin has an exclusion field for exactly this reason.

Rehearse the risky combinations on a staging clone first — they come with the plans — and keep the daily backup in reach. Our servers run LiteSpeed with the cache engine compiled in rather than emulated in PHP, so the caching half of this work is already done before you touch a single optimisation toggle.

A performance-test needle sweeping hard to the right

Why the server half is already finished here

LiteSpeed is compiled into the web server rather than bolted on by plugin, so cached HTML never enters PHP at all. That is the layer most guides tell you to install; here it is the default, which leaves you free to spend the afternoon on the render path instead.

The rate you sign up at is the rate you renew at, so year two costs exactly what year one did.

  • Cache served by the web server, not emulated in PHP
  • Staging clones for bisecting a broken toggle safely
  • Per-site PHP version switching from the panel
  • Engineers who read a console trace with you at any hour

Why HostingFast

Standard on every plan

Ranked by milliseconds

Every optimisation on this page is ordered by what it does to render-blocking time, not by how much file weight it removes.

The bisect is built in

One flag, one walk-through, console open. The method is the deliverable; it is what makes a broken menu a two-minute diagnosis.

Coverage before compression

You measure unused bytes first, because conditional loading beats minifying a file that should not have loaded at all.

Surgical exclusions

A broken script costs you one exclusion line, not the whole optimisation layer and the gain it was producing.

HTTP/2 accounted for

Combining files is treated as a claim to test rather than received wisdom, because multiplexing changed the arithmetic.

Rehearsal space

The aggressive settings get tried on a staging clone with a daily backup behind it, which is why this stays a 30-minute job.

Quick Start

From order to online

  1. 1

    Get the render-blocking figure

    Run Lighthouse and note the potential saving in milliseconds against each blocking stylesheet and script. That list is your work queue, in priority order, before any toggle moves.

  2. 2

    Read Coverage for unused bytes

    Show Coverage, reload, and note the used/unused split per file. A bundle that is ninety per cent unused wants conditional loading, not compression.

  3. 3

    Turn on minification and leave it

    The safe baseline: whitespace and comments stripped on the way out. Expect single digits, verify nothing broke, and move on to the layer that matters.

  4. 4

    Defer, one handle at a time

    Move scripts off the critical path individually, walking the site with the console open after each. This is where the measurable milliseconds actually come from.

  5. 5

    Test combining, do not assume it

    Benchmark combined against separate on the same throttling profile. Under HTTP/2 it frequently loses, and the only way to know for your bundle is the measurement.

Built In

Loaded onto every plan

  • LiteSpeed caching compiled into the server, not bolted on by plugin
  • Per-site PHP version switching from the control panel
  • Staging environments for rehearsing a change before it ships
  • NVMe SSD storage on every tier, including the entry plan
  • SSH, Git and Composer on the developer-focused plans
  • Daily backups on every plan, with restores you run yourself from the panel
  • cPanel — the control panel most of the industry already runs
  • Built-in WebP image conversion at no extra cost
  • A renewal price identical to the one you signed up at
  • Human support on duty every hour of every day

Frequently Asked

What people ask us most often

How do I measure render-blocking time instead of guessing at it?

Lighthouse's Eliminate render-blocking resources audit lists each blocking file with a potential saving in milliseconds, and the DevTools Performance panel shows the same story as a gap before first paint. Both are per-page, so measure the template that gets the traffic rather than the homepage out of habit.

Which DevTools panel shows how much of my CSS is unused?

Coverage — open the Command Menu, run Show Coverage, then reload the page. It reports every stylesheet and script with a used/unused byte split, live as you interact. It is the quickest way to prove that a theme's single bundled stylesheet is the problem rather than the minifier's settings.

Does combining files still help now that HTTP/2 is everywhere?

Often not. Multiplexing removed the per-request penalty that made concatenation a win under HTTP/1.1, and one large combined file can delay first paint and defeat granular caching. Treat it as a hypothesis: benchmark combined against separate under identical throttling and keep whichever wins on your bundle.

What is the fastest rollback when a deferred script kills the menu?

Read the console error, note the file it names, and add that one handle to the plugin's exclusion list — seconds of work, and the rest of the optimisation stays in place. If the site is unusable, purge the cache and switch the single offending option back off; nothing here writes an irreversible change to the theme.

Keep reading

  • How to Create a MySQL Database

    Create the database, the user and the grant an installer expects, and check the connection before the installer complains — beginner, roughly 5 minutes.

  • How to Change Your PHP Version

    Move a site onto a newer PHP release and measure the difference in response time rather than assuming it — beginner, roughly 10 minutes.

  • DNS (Domain Name System) (Glossary)

    The lookup layer that turns a name into an address, with the practical consequence for anyone timing a first byte.

  • Drupal Hosting

    Drupal with Composer, Drush and per-site PHP control available from the panel.

  • CMS Hosting

    Hardened, cache-first hosting for WordPress, Joomla, Drupal and the rest of the major CMS field.

Changing hosts? Run through our checklist first.

A straightforward sequence for a switch your visitors never feel: which files move first, how to shift email across without losing a single message, the right moment to repoint DNS, and the two mistakes behind almost all the downtime we get asked to rescue.

You'll get the checklist email, then occasional pointers on keeping a site running fast. Unsubscribe the moment you want out — the privacy policy covers the rest.

Stop optimising around a slow server.

LiteSpeed compiled in, NVMe underneath, staging clones for the risky toggles, and engineers on shift at any hour.

View Drupal Hosting plans