GlossarySEO
What is client-side rendering, and is it bad for SEO?
Also called: CSR, single-page app, SPA
Definition
Client-side rendering (CSR) means the browser builds the page with JavaScript after downloading a mostly empty HTML shell. Google can usually render it, but it's slower and riskier for SEO than server-rendered HTML.
Client-side rendering (CSR), explained
Classic single-page apps built with Create React App, Vite or Angular serve the same index.html for every route. It contains a root element and script tags. The browser downloads the JavaScript, fetches data and builds the page. Until that finishes, there's nothing to read.
Google's JavaScript SEO guide says Google renders JavaScript with an evergreen Chromium, so CSR pages can be indexed. The risks are in the details. Rendering happens after crawling, and pages can wait in the render queue. Links and content that depend on user actions are missed. Every route returns 200, so missing pages become soft 404s unless you handle them. Metadata set in the browser may be missed by link-preview bots and other crawlers. And crawlers that don't run JavaScript, which includes many AI crawlers, see an empty page.
Performance suffers too. The browser has to download, parse and execute JavaScript before it can show the main content, which pushes Largest Contentful Paint later, especially on mid-range phones.
CSR is fine for logged-in app screens that shouldn't be indexed anyway. For public pages that you want found, like the homepage, pricing, blog, docs and comparisons, render the HTML on the server or at build time. Many teams split the two: a static or server-rendered marketing site and a client-rendered app on a subdomain or path.
Why it matters for founders
If your landing pages are part of your SPA, you're asking crawlers to do extra work to see your pitch. Moving public pages to server or static rendering is one of the most useful technical fixes for a young product.
Example
curl https://yourapp.com/pricing returns only <div id="root"></div>. You move marketing pages to a statically generated site and keep the SPA under /app, where it's noindexed.
Common mistakes
- Public marketing pages rendered only in the browser.
- No
404handling for unknown routes. - Titles and descriptions set with client-side code.
- Judging crawlability by what you see in Chrome.
Sources
Checked
Related terms
- Server-side rendering (SSR)Server-side rendering (SSR) means the server builds a page's full HTML for each request and sends it ready to display. Crawlers and users get content immediately, without waiting for JavaScript.
- JavaScript SEOJavaScript SEO is making sure sites built with JavaScript frameworks can be crawled, rendered and indexed properly: real links, content in the HTML, correct status codes and metadata that doesn't depend on client-side code.
- RenderingRendering is when a search engine runs a page's JavaScript and CSS in a headless browser to see the final content, as a user would. Google renders pages before indexing what it finds.
- Largest Contentful Paint (LCP)Largest Contentful Paint (LCP) is a Core Web Vital measuring how long it takes for the largest image or text block in the viewport to render. Google's target is 2.5 seconds or less for 75% of page loads.