Skip to content
2.5Advanced9 min

JavaScript Rendering and AI Crawlers: The Visibility Divide

Lucas Blochberger··Updated 11 June 2026
Definition

AI crawlers like GPTBot, ClaudeBot and PerplexityBot cannot execute JavaScript. Vercel's analysis of over 500 million GPTBot fetches found zero evidence of JavaScript execution. Client-rendered content is invisible to approximately 70 percent of AI crawlers — server-side rendering is a visibility prerequisite, not a performance choice.

Key Takeaways

  • AI crawlers cannot execute JavaScript — zero evidence in 500M+ GPTBot fetches
  • GPTBot fetched JS files (11.5% of requests) but does not execute them
  • ClaudeBot downloaded JS (23.84%) but does not render
  • Only Googlebot, Google Gemini, and AppleBot use browser-based rendering
  • Client-rendered content is invisible to approximately 70% of AI crawlers
  • SSR is a visibility requirement, not a performance optimization
  • Google has officially marked Dynamic Rendering as deprecated (August 2022)
  • The "9x rendering tax" on crawl budget is well documented

The technical SEO landscape has split into two parallel worlds: Google renders JavaScript, AI crawlers don't.

The Evidence

Vercel's and MERJ's joint analysis of over 500 million GPTBot fetches found zero evidence of JavaScript execution. GPTBot fetches JavaScript files (11.5 percent of requests) and ClaudeBot downloads them (23.84 percent), but neither can execute them. PerplexityBot, Meta-ExternalAgent, CCBot, and Bytespider also lack rendering capability.

OnlyGooglebot(Headless Chromium),Google Gemini(via Googlebot infrastructure), andAppleBotuse browser-based rendering.

The Consequence

Client-side rendered content is invisible to approximately 70 percent of AI crawlers. For Next.js 15, the App Router with Server Components offers an enormous structural advantage — components render on the server with zero client-side JavaScript and deliver complete HTML to every crawler type.

Dynamic Rendering is Dead

Google officially marked Dynamic Rendering as a "workaround, not a long-term solution" in August 2022. By 2025, Google removed the implementation sections entirely and switched to past tense: Dynamic Rendering "was" a workaround.

The Rendering Tax

The oft-cited "9x rendering tax on crawl budget" comes from Onely and Prerender.io. Onely documented delays of up to 313 hours for deep JavaScript pages versus 36 hours for static HTML. The exact multiplier varies, but the direction is clear.

Data & Statistics

Kein grosser KI-Crawler rendert JavaScript (GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Bytespider, Meta-ExternalAgent, PerplexityBot); ChatGPT-Crawler fetchen JS in 11,50 Prozent, Claude in 23,84 Prozent der Requests, fuehren es aber nicht aus

Vercel (mit MERJ), The rise of the AI crawler (2024)

GPTBot generierte 569 Millionen Requests und Claude 370 Millionen Requests pro Monat im Vercel-Netzwerk, zusammen rund 20 Prozent des Googlebot-Volumens von 4,5 Milliarden Requests

Vercel Blog, The rise of the AI crawler (2024)

404-Rate der Crawler: ChatGPT 34,82 Prozent, Claude 34,16 Prozent, Googlebot nur 8,22 Prozent der Fetches

Vercel Blog, The rise of the AI crawler (2024)

Googlebot benoetigte rund neun Mal mehr Zeit, um JavaScript-Seiten zu crawlen als reine HTML-Seiten (313 Stunden gegenueber 36 Stunden); einem JS-injizierten Link folgte er in 52 statt 25 Stunden

Onely, Ziemek Bucko, Rendering Queue: Google Needs 9X More Time To Crawl JS Than HTML (2022)

Median-Unterschied zwischen gerendertem und rohem Wortbestand auf Startseiten: 13,6 Prozent (Mobile), 17,5 Prozent (Desktop), bis zu 32 Prozent am 10. Perzentil auf Desktop

HTTP Archive Web Almanac 2024, SEO-Kapitel (2024)

Medianer JavaScript-Payload: 558 Kilobyte (Mobile), 613 Kilobyte (Desktop); rund 44 Prozent (206 Kilobyte) der ausgelieferten Bytes bleiben beim Laden ungenutzt

HTTP Archive Web Almanac 2024, JavaScript-Kapitel (2024)

48 Prozent der mobilen und 56 Prozent der Desktop-Seiten bestehen alle drei Core Web Vitals; gutes LCP erreichen nur 62 Prozent (Mobile) gegenueber 74 Prozent (Desktop)

HTTP Archive Web Almanac 2025, Performance-Kapitel (2025)

Google haelt in Oesterreich im Mai 2026 einen Suchmaschinen-Marktanteil von 81,87 Prozent, Bing 9,01 Prozent, DuckDuckGo 2,75 Prozent

StatCounter Global Stats, Search Engine Market Share Austria (2026)

In Oesterreich gab es im Januar 2025 rund 8,69 Millionen Internetnutzer bei einer Penetration von 95,3 Prozent

DataReportal, Digital 2025: Austria (2025)

ChatGPT, Perplexity und Claude konnten den Inhalt einer client-seitig gerenderten Seite nicht lesen, da sie auf JavaScript-Rendering angewiesen war

GSQI, Glenn Gabe, AI Search and JavaScript Rendering (2025)

FAQ

Can AI crawlers like GPTBot and ClaudeBot execute JavaScript?
No. Joint analysis by Vercel and MERJ confirms that no major AI crawler renders JavaScript, including GPTBot, ClaudeBot, PerplexityBot, Bytespider and Meta. They sometimes download JavaScript files (ChatGPT in 11.50 percent, Claude in 23.84 percent of requests), but do not execute them and only read the raw HTML.
Why is server-side rendering important for AI visibility?
Because AI crawlers only process the server-delivered HTML. If the main content only appears in the client-side rendered DOM, it is invisible to ChatGPT, Perplexity and Claude. SSR, SSG or ISR deliver the content ready in the HTML, making it readable for all crawlers. In a documented test, ChatGPT, Perplexity and Claude were unable to read a pure CSR page.
Which content must be included in the server-delivered HTML?
The core text content, title and meta description, structured data according to Schema.org as JSON-LD, internal linking as real HTML links, hreflang attributes and the canonical tag. These elements control indexing, language assignment and evaluation by AI systems, and are lost if they are only generated via JavaScript.
Does Googlebot render JavaScript, and is that sufficient for visibility?
Googlebot renders JavaScript, as do Google Gemini and AppleBot. However, this is not sufficient, as AI crawlers do not. Moreover, JavaScript costs time even with Google: crawling takes around nine times longer than with pure HTML (313 versus 36 hours in the experiment), which extends time-to-index.
How do I check if my page is visible to AI crawlers?
Compare the raw HTML with the rendered DOM, for example via the page source or a direct HTML fetch. If the main content is missing in the source, there is a CSR problem. Additionally, Google Rich Results Test, URL Inspection in Search Console, a JavaScript crawl with Screaming Frog and server log analysis of AI bots show what is actually readable.
Should I block or allow AI crawlers via robots.txt?
This is a deliberate consideration. Via robots.txt, GPTBot, ClaudeBot, PerplexityBot and Google-Extended can be controlled specifically. Blocking prevents the use of content in AI systems, but also excludes your own brand from visibility in their responses. Those who want to be cited in ChatGPT or Perplexity should allow the relevant crawlers.
Can cookie banners hide content from crawlers?
Content should not be hidden behind consent. If the main content is only loaded after consent via JavaScript, AI crawlers only see the banner. GDPR-compliant is to deliver non-personal content server-side and limit consent management to tracking and non-essential cookies. This keeps content visible without violating data protection.

How does your website perform?

Get a free, AI-powered SEO report of your website by email – technical SEO, on-page, keywords & competitors. No obligation.

Get a free SEO audit