Static document head contains three or more synchronous external scripts
ShipReady found at least three eligible external script tags in the static document-head region without async or defer.
Why it matters
A static loading pattern can be reviewed before browser-specific performance testing.
How ShipReady detects it
What it inspects
ShipReady reads non-truncated fetched HTML and examines static script tags before the closing head marker.
What triggers a finding
It triggers when at least three tags have src, lack async and defer, and do not use recognized non-blocking types such as module, JSON-LD, importmap, or speculationrules.
What the evidence shows
The evidence proves the reported count of static script-tag patterns.
Limits of this check
Inline scripts, scripts outside the parsed head region, async/defer scripts, and recognized non-blocking types are excluded; truncated pages produce no finding.
ShipReady does not fetch or execute scripts, model browser parsing, measure first paint, or determine whether every script delays a visitor.
How to fix it
Review the observed evidence
Review each script’s ordering and loading requirements before changing attributes.
How to verify the change
Verify the intended behavior
Test deployed features that rely on the changed script loading.
Expected: Necessary scripts still work with the intended loading strategy.