client-side rendering
Also called: CSR, client side rendering
Client-side rendering (CSR) is a technique where the server sends a near-empty HTML shell plus JavaScript, and the browser builds the visible page content in the DOM after load. Google can index CSR pages, but only after a separate, deferred rendering phase that runs the JavaScript in headless Chromium.
With CSR, the raw HTML Googlebot first downloads is often just a shell like <div id="root"></div>. Nothing meaningful is in that response until scripts run.
How Googlebot handles CSR
Google processes JavaScript in three phases: crawling, rendering, and indexing. After crawling, a CSR page waits in a render queue before headless Chromium executes its JavaScript and produces the HTML that actually gets indexed. Google notes a page “may stay on this queue for a few seconds, but it can take longer than that.” Anything that only appears after that render is invisible to any step reading the raw HTML.
web.dev defines CSR as “rendering an app in a browser, using JavaScript to modify the DOM,” and notes its main downside is that growing JavaScript bundles can hurt page performance, since content only appears after the script downloads and executes. Crawlers “can understand JavaScript, but there are often limitations to how they render.”
Common CSR risks for SEO: title tags and meta descriptions injected by JS can be missed or set late; internal links built client-side may go undiscovered if they are not real <a href> elements; and many AI and social crawlers that do not run JavaScript see only the empty shell. Google’s own guidance still recommends server-side or pre-rendering because it makes your website faster for users and crawlers, and not all bots can run JavaScript. Modern frameworks (Next.js, Nuxt, Astro) let you keep client interactivity while serving real HTML up front.
How it affects your traffic
CSR is one of the most common reasons a page indexes thin or not at all. If your main content, internal links, or meta tags only exist after JavaScript runs, Googlebot may index a delayed or partial version, and non-Google AI crawlers that skip JavaScript see nothing. A technical SEO audit catches this by comparing raw HTML against rendered HTML, so you learn whether search engines are indexing your real content or an empty shell. Fixing the render strategy (server-side rendering, pre-rendering, or proper hydration) often recovers impressions and rankings that were quietly lost behind a JavaScript wall.
Get Technical SEO that moves the needle
We turn terms like this into ranked pages and qualified pipeline. Start with a free Initial SEO Strategy.