Google renders JavaScript, but on a delay and with limits. Content that only exists after hydration may be indexed late, partially, or not at all. This skill compares raw HTML against rendered DOM to find exactly what is missing.
javascript-rendering-check.md
---
name: javascript-rendering-check
description: Use when a site renders content client-side and you need to confirm search engines actually see it, especially after a framework change or migration.
---
# JavaScript rendering check
Google renders JavaScript, but on a delay and with limits. Content that only exists after hydration may be indexed late, partially, or not at all. This skill compares raw HTML against rendered DOM to find exactly what is missing.
## What you need first
- The URL of one page per template
- Access to view-source and a rendering tool
## Method
1. Fetch the raw HTML with JavaScript disabled and record what is present: title, meta description, canonical, headings, body copy, links.
2. Render the same URL and diff the two. Anything that only appears after rendering is at risk.
3. Check internal links specifically - links injected by JavaScript, or triggered by onclick rather than href, may never be followed.
4. Confirm the canonical and meta robots exist in raw HTML. A canonical injected client-side is frequently ignored.
5. Test with Search Console URL Inspection on the live URL and read the rendered HTML it reports, which is the authoritative view.
6. For anything critical still missing, move it server-side rather than trying to make the client-side version render faster.
## What this produces
A per-template diff of raw versus rendered content, with each at-risk element marked as move-server-side or acceptable.
## Where this goes wrong
- Trusting a third-party renderer over Search Console URL Inspection
- Assuming that because a page ranks, its JavaScript content is being read
- Leaving canonicals and robots directives to client-side injection
---
From the QuQi skill library - https://www.quqi.io/skills/javascript-rendering-check
Free to download · no account, no email
A per-template diff of raw versus rendered content, with each at-risk element marked as move-server-side or acceptable.