# Rendering

Rendering is Google’s execution of your JavaScript and CSS to see what a visitor sees. It happens after the HTML crawl in a queue. If key content only appears after scripts run, indexing can lag or miss it.

Updated 2026-09-14 · Source: https://porteur.ai/glossary/rendering

## What rendering means in Google Search

Google crawls HTML first, then renders with an evergreen Chromium. That second step executes your JavaScript and applies CSS. Only then can Google read content that scripts inject.

Rendering sits in a queue. Pages that depend on client scripts may be indexed later. Pure HTML pages can be indexed from the crawl alone.

- Server side rendering and static generation put the content in the HTML, so Google can index it from the crawl.
- Client side rendering waits for JavaScript, so your copy and links land in the rendering queue.

## Why the rendering queue matters on a small site

If your homepage and /pricing rely on scripts, they may rank slower after launch. A blog post that is HTML-first can appear faster.

Do not hide titles, product copy or internal links behind hydration. Put the headline, intro and main links in the HTML. Enhance after that with JavaScript.

> Rule: ship the essential content and links in the initial HTML. Use JavaScript for state, not for the only copy on the page.

## What Google and answer engines do not see

- Content that appears only after a click, a scroll event or a fragment like /#details is not seen.
- Anything loaded behind a consent wall without an HTML fallback is not seen.
- The answering AI crawlers, OAI-SearchBot, PerplexityBot and ClaudeBot, do not render JavaScript, so they only read your HTML.

> Warning: do not put your primary copy in tab panes that need a click to reveal. Place the text in the DOM and visible without interaction.

## How to test your rendering

1. **Fetch a key page in the URL Inspection tool** Paste /guides/getting-started. Open the Tested Page view. Read the rendered HTML and check the screenshot for missing sections.
2. **Search the rendered HTML** Find your H1, product copy and internal links. If they are absent there, they were not in the crawlable HTML either.
3. **Disable JavaScript in a browser** Load yourproduct.com with scripts blocked. If the page is empty or navigation disappears, you have a rendering dependency.
4. **Check for interaction gates** Remove query strings and fragments, then reload. Ensure core content is visible without scrolling or clicking.

A fixed /pricing shows the plan names and prices in the HTML, and the screenshot in Inspection matches what you expect.

## What to change on your site

- Render critical content server side or statically: titles, intro, product copy, pricing, CTAs and internal links.
- Avoid client only routers for links you want indexed. Use normal anchor tags with hrefs that resolve without JavaScript.
- Preload data for above the fold content during build or on the server. Do not wait for client fetch to paint the only text.
- Do not hide copy behind tabs, accordions or carousels that require clicks. Make one version visible by default in the HTML.
- Keep third party scripts from blocking. Load them late. Your own content should not wait behind analytics or chat widgets.

If you use a framework, enable its server rendering or static export for marketing pages. Leave app dashboards as client side if they are behind login.

## Questions

### Is server side rendering better for SEO?

It is better for any content you want indexed fast. Putting the words and links in the HTML lets Google index from the crawl, without waiting for the rendering queue. You can still hydrate for interactivity after paint.

### Why does URL Inspection show my content, but search still does not?

Rendered content can be indexed later. The page may sit in the rendering queue before indexing updates. Also check that your copy is visible without clicks, and that internal links point to it.

### Do AI crawlers render JavaScript?

No. OAI-SearchBot, PerplexityBot and ClaudeBot do not execute scripts. They read your HTML only, so server side rendering and static pages help them cite you.

### What is a rendering example?

On /pricing, client side rendering fetches plans and injects them after load. With server side rendering or static generation, the plans are in the HTML from the start. Google can index those plan names on the first crawl.

### How do I see what Google rendered?

Use the URL Inspection tool. It shows the rendered HTML and a screenshot for the tested page. Compare that output to your source HTML to spot gaps.

## Read next

- [JavaScript SEO](https://porteur.ai/glossary/javascript-seo): What JavaScript SEO means, how Googlebot renders, what breaks, how to fix links and content, and how to choose SSR or SSG so pages index fast.
- [How to use the URL Inspection tool in Search Console](https://porteur.ai/guides/url-inspection-tool): Read each panel, run Test live URL, and know when to request indexing. Fix new pages, dropped pages, and canonicals Google ignores.
- [Render-blocking resources: what blocks the first paint and how to unblock it](https://porteur.ai/guides/render-blocking-resources): Stop CSS and synchronous scripts from blocking first paint. Read the Lighthouse audit and fix in order: defer, inline critical CSS, split CSS, and handle fonts.
- [Crawl budget](https://porteur.ai/glossary/crawl-budget): Crawl budget is how much Googlebot crawls your site. It matters on sites with thousands of URLs. Here is how to check it and avoid wasting it.
- [Indexation](https://porteur.ai/glossary/indexation): Indexation means a page is stored in Google’s index and can appear in search. Here is how to check status, read Page indexing, and fix what blocks it.
- [Technical SEO checklist for a small site](https://porteur.ai/guides/technical-seo-checklist): Run these 20 technical SEO checks, in order. Each shows how to check it free and what fixed looks like for a site under 1,000 pages.
- [JavaScript rendering: what Google sees, what the AI crawlers do not](https://porteur.ai/guides/javascript-rendering-and-seo): Google renders JavaScript in a second pass and the AI crawlers do not render it at all. Here is what breaks, how to test it, and what to change.

Drop your homepage URL to see if your key pages rely on client rendering and which rivals already ship the copy in HTML, in about thirty seconds, free. Free check: https://porteur.ai/
