Scripts that block the page from rendering
A script in the page head without async or defer makes the browser wait before it shows anything.
Checked on: every page the audit scans · Zolvio’s check: “Render-blocking scripts”
Why it costs you sales
A script in the page’s head that isn’t marked async or defer stops the browser from drawing the page until that script has downloaded and run. Shoppers look at a blank or half-drawn page while it loads.
How Zolvio detects it
Zolvio reads the head of the page exactly as your server sent it, and lists the external scripts the browser has to download and run before it can show anything: scripts with no async and no defer that aren’t modules. A script written into the page itself (a data: or blob: address) downloads nothing and doesn’t count. Shopify’s own scripts and cookie-consent managers, which have to run first, are left out because you can’t defer them. One such script from your theme or an app is enough to flag the page, and the finding lists them (up to ten).
This is a direct measurement, so it’s reported on every plan, including Free and audits with AI turned off. With AI review on, the AI agent also checks it against the audit’s evidence before it reaches your issue list.
How to fix it
- Open layout/theme.liquid in the code editor (Online Store → Themes → Edit code) and find the scripts the finding lists.
- Add defer to scripts that don’t need to run before the page shows; deferred scripts keep their order, so scripts that depend on each other still run in sequence.
- If a listed script comes from an app, check the app’s settings, or remove apps you no longer use.
- Test the cart, the checkout button and app widgets afterwards, and leave a script as it was if deferring it breaks something.
In Zolvio: on paid plans with AI turned on, the guided fix writes these steps for your own store and theme: where to click in Shopify admin or the theme editor, or which file to open, the line to find and the code to add. Each file opens in Shopify’s code editor. Zolvio never edits your theme: you make the change, then Verify fix checks your published theme for code changes (or you mark it fixed), and later audits confirm the problem is gone.
Common questions
Why does “Scripts that block the page from rendering” cost a Shopify store sales?
A script in the page’s head that isn’t marked async or defer stops the browser from drawing the page until that script has downloaded and run. Shoppers look at a blank or half-drawn page while it loads.
How does Zolvio detect “Scripts that block the page from rendering”?
Zolvio reads the head of the page exactly as your server sent it, and lists the external scripts the browser has to download and run before it can show anything: scripts with no async and no defer that aren’t modules. A script written into the page itself (a data: or blob: address) downloads nothing and doesn’t count. Shopify’s own scripts and cookie-consent managers, which have to run first, are left out because you can’t defer them. One such script from your theme or an app is enough to flag the page, and the finding lists them (up to ten).
How do I fix “Scripts that block the page from rendering” on Shopify?
Open layout/theme.liquid in the code editor (Online Store → Themes → Edit code) and find the scripts the finding lists. Add defer to scripts that don’t need to run before the page shows; deferred scripts keep their order, so scripts that depend on each other still run in sequence. If a listed script comes from an app, check the app’s settings, or remove apps you no longer use. Test the cart, the checkout button and app widgets afterwards, and leave a script as it was if deferring it breaks something.
Related
- CriticalSpeedSlow page load
- MediumSpeedJavaScript files too large for phones
- HighSpeedImages much larger than they’re shown
- HighSpeedToo many requests to third-party services
Documentation
- How audits work — What an audit scans and how findings become issues.
- Guided fixes — Step-by-step fixes written for your theme, with links into the code editor.
- Workflows — Go from an issue to its heatmap and recordings before you change anything.