-
Performance
Fix my render-blocking resources
Stop CSS and JavaScript from blocking first paint: defer, async, inline the critical path, and load the rest late.
Free Prompt
My pages don't paint until a pile of CSS and JavaScript finishes loading, and I want first paint to stop waiting on things it doesn't need.
Analyze how my pages load their resources and fix the blocking patterns:
1. JavaScript in the head without defer or async: move it, defer it, or make it async where execution order allows. Nothing should block parsing that isn't required to render the first screen.
2. CSS: identify the styles needed for above-the-fold content and inline those (critical CSS), loading the full stylesheet non-blockingly. If my framework or build tool has a critical CSS feature or plugin, use it; if the extraction is fragile or high-effort for my setup, tell me the tradeoff and do the simpler wins instead.
3. Third-party scripts: every script tag from an external service must be async or deferred unless it genuinely cannot be. Tag managers, analytics, chat widgets, and fonts are the usual offenders.
4. Preload the resources the first screen actually needs (hero image, primary font) and remove any preloads pointing at things that aren't immediately used.
Verify with before/after measurement: Lighthouse or page profiling showing first contentful paint and total blocking time.
Don't break the page to save milliseconds. If a script has ordering dependencies I can't see, test before and after rather than assuming.
What This Does / How This Helps
This unblocks your first paint: deferred scripts, critical CSS inlined, third-party tags made async, and preloads pointed at what the first screen actually needs. Render-blocking resources are why a page 'loads fast' on paper but shows a white screen for two seconds. Browsers won't paint anything until blocking CSS and JS finish, and vibe-coded templates pile both into the head by default. The gains here are the ones users feel most directly: the page appears, then the extras arrive.
Want to skip doing this by hand?
Fortivibe audits your app for all of the areas these prompts cover (and more).