JavaScript SEO
A site can pass every traditional SEO check and still rank for nothing, because the words that matter never reach the index. That is the JavaScript SEO problem: when content arrives only after a script runs, a search engine has to crawl the page, render the JavaScript, and only then index what appears. Miss a step and the page is effectively blank to search.
This cluster covers that pipeline end to end, from how Googlebot crawls and renders scripts to how to audit and debug indexing. It expands on the original SEO for single page apps tutorial, which remains the best high-level starting point.
Start with the SPA SEO overview
If you are new to the topic, read the overview first. It frames the whole problem and the trade-offs between rendering strategies, and the guides here go deeper on each piece.
- SEO for Single Page Apps: the high-level overview and rendering trade-offs.
Guides in this cluster
All ten guides below are live, arranged in suggested reading order, from how Googlebot crawls and renders scripts through auditing, debugging, and client-side SEO as a whole.
- How Google Crawls JavaScript: the crawl, render, index pipeline in detail. Available now
- JavaScript Rendering and Indexing: what gets indexed and when. Available now
- Rendering for Search Engines: SSR, prerendering, and dynamic rendering. Available now
- Framework SEO: SEO patterns across frontend frameworks. Available now
- Crawlability: links, robots, and resource access. Available now
- JavaScript SEO Audits: a repeatable checklist. Available now
- Googlebot Rendering: how the Web Rendering Service works. Available now
- SPA Indexing: getting client-rendered routes indexed. Available now
- Rendering Debugging: diagnosing what Google sees. Available now
- Client-side SEO: making client rendering search-friendly. Available now
How crawling, rendering, and indexing fit together
The three stages are separate, and that separation is the whole story. Crawling fetches the HTML, rendering runs the JavaScript to reveal the rest, and indexing stores what the render produced. Because rendering can lag behind crawling, content that needs JavaScript can be indexed late, or not at all if the render fails.
How to use this cluster
Read the crawling guide first, then test one of your own URLs in Search Console's URL Inspection to see the rendered HTML. Comparing what you wrote to what Google rendered is the fastest way to find a JavaScript SEO problem, and the rest of the guides build on that habit.
Frequently Asked Questions
What is JavaScript SEO?
JavaScript SEO is the practice of making content that depends on JavaScript fully crawlable, renderable, and indexable by search engines, so a client-rendered app ranks as well as a server-rendered page.
Can Google index JavaScript-rendered content?
Yes. Googlebot runs an evergreen, Chromium-based renderer that executes JavaScript. The catch is that rendering can be deferred and has limits, so critical content should not depend on user interaction or blocked resources.
Is client-side rendering bad for SEO?
It is riskier, not automatically bad. Pure client-side rendering relies on Google rendering your JavaScript successfully and promptly. Server-side rendering or prerendering removes that dependency for important pages.
How is this different from the SPA SEO guide?
The SEO for single page apps tutorial is the overview. This cluster breaks the topic into focused guides on crawling, rendering, indexing, and auditing JavaScript.
Read next: How Google Crawls JavaScript, the first stage of the pipeline.
Related clusters
JavaScript SEO sits alongside these related clusters. Continue exploring:
Building the app behind the SEO?
These rendering concepts pair with the frontend itself. See how a single page app is built in the complete Backbone guide.
Explore the Backbone Guide →