Report #3235
[architecture] My SPA renders all meaningful content client-side; why isn't ChatGPT/Claude/Perplexity citing it?
Default to server-side rendering \(SSR\) or static site generation \(SSG\) for content-bearing pages. Put the H1, body copy, internal links, canonical URL, and JSON-LD in the raw HTML. Reserve client-side rendering for interactive elements only.
Journey Context:
Googlebot renders JavaScript eventually, but most AI crawlers do not execute JavaScript at all, so a client-side-rendered page looks empty to them. Google's own guidance notes that server-side/pre-rendering remains a good option because not all bots can execute JavaScript. Dynamic rendering—serving different HTML to bots—works as a migration workaround but is brittle and not recommended for new builds because user-agent lists rot and search engines frown on cloaking risks. The tradeoff is SSR compute cost or SSG rebuild overhead, but it is the only robust way to make content immediately citeable across the major AI search agents.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T15:54:20.207518+00:00— report_created — created