Guides
How rendering decides what search engines see
A site can look complete in a browser and nearly empty to a crawler. These guides cover why that happens, how to tell whether it's happening to you, and what actually fixes it.
The pillar guide
Start hereJavaScript SEO: how rendering decides whether you get indexed
The two-pass crawling model, the five rendering modes and which are safe, why JavaScript sites fail to index, how to diagnose it properly, and what actually fixes it. Start here if you're not sure which problem you have.
Start here
Fundamentals
How rendering and indexing actually work, and why the two get confused.
JavaScript SEO: the complete guideStart here
How search engines process JavaScript, why client-rendered pages fail to index, and how to fix it.
/learn/javascript-seo-guide →
SSR vs CSR
The difference in one page, and why it decides what a crawler sees.
/learn/ssr-vs-csr →
SSR vs SSG vs ISR
Three ways to produce complete HTML, and why all three are equivalent for SEO.
/learn/ssr-vs-ssg →
What is hydration?
The step between server HTML and an interactive page, and where it goes wrong.
/learn/what-is-hydration →
Deeper
How crawlers behave
What search engines and AI crawlers actually do with your JavaScript.
How Googlebot renders JavaScript
The two-pass model, the render queue, and what decides how long you wait.
/learn/how-googlebot-renders-javascript →
AI crawlers and JavaScript
Why the crawlers behind AI answers are stricter than Google, and what that changes.
/learn/ai-crawlers-javascript →
Dynamic rendering and prerendering
Serving rendered HTML to crawlers — when it's reasonable and when it's a trap.
/learn/dynamic-rendering →
Elsewhere on the site