What we look for
These pages load more than 20 scripts or 100 KB of inline script, counting both script files and code written straight into the page.
Why it matters
Every script has to download and run before the page is fully usable, which slows it most on phones and slow connections.
How to fix
Remove scripts and plugins you no longer use and combine the rest where you can. Load scripts that are not needed straight away with defer, or only on the pages that use them.
Seen in a real crawl
From a crawl of the js-heavy fixture, a test site from Raptor’s fixture suite.
Low
1 page loads a lot of JavaScript
/many-scripts/ 22 scripts (limit 20): /assets/ vendor-0. js, / assets/ vendor-1. js, / assets/ vendor-2. js, / assets/ vendor-3. js, / assets/ vendor-4. js, / assets/ vendor-5. js, / assets/ vendor-6. js (+15 more)
http://127.0.0.1:8004raptor 0.3.0, 17 Oct 2026Where you’ll see it
The id is stable, and every surface uses it, so it’s the thing to search for or hand to an agent.
- Terminal
- When it is one of the five findings under Fix first,
raptor crawlprints the id under it.Check: javascript.
js_ excessive_ scripts - crawl.json and the CSV
- The crawl JSON names the finding by this id, and so do the CSV and
raptor_query."check_
id": "javascript. js_ excessive_ scripts" - The HTML report
- This link opens the finding in the report, and each finding shows its id.
crawl.
html# finding= javascript. js_ excessive_ scripts - MCP
raptor_findingswith thischeck_idreturns the finding in full, with a fix brief ready to paste into a task. If it didn’t fire, it says why.raptor_
findings { "job_ id": ". . . ", "check_ id": "javascript. js_ excessive_ scripts" }