Why client rendering hides content
A client-rendered app sends a small HTML shell and a JavaScript bundle. A browser runs the bundle and builds the page. An agent reads the shell and stops. Googlebot renders JavaScript, so a page can rank in Google and still be invisible to ChatGPT.
Three measures that show the gap
- Main text ratio: agent visible text divided by rendered visible text.
- First content offset: how many bytes into the HTML the first real sentence appears.
- Sentence survival: share of rendered sentences present in the agent body.
Fixes, in order of effort
- Prerender marketing routes to static HTML at build time.
- Move to server-side rendering for dynamic pages.
- Inline critical text in the initial HTML for pricing and feature tables.
- Defer large inline scripts to the end of the document.

