What is render-blocking JavaScript?

A render-blocking script is one the browser must download and run before it can draw anything, so the visitor waits at a blank page:

  • Scripts in the head block by default unless marked otherwise.
  • defer waits until the page is parsed - the right choice for most scripts.
  • async runs as soon as it arrives - suitable for genuinely independent scripts such as analytics.
  • Third-party tags are the usual culprits - chat widgets, trackers and embeds added over the years.

Removing a script you no longer use beats optimising how it loads.