Kula Digital

Can AI crawlers read JavaScript sites? We read the docs

Google documents that its Search crawler renders JavaScript. Anthropic documents that its fetch tool does not. We counted 18 named fetch paths across four platforms: one documented yes, one documented no, and sixteen silences.

A

Adith Krishnan

Co-Founder & COO, Kula Digital

Published
2026-08-13
Read time
8 min read
Updated
2026-08-13
Category
GEO
TL;DRThe short version

Google documents that its Search crawler renders JavaScript. Anthropic documents that its fetch path does not. OpenAI and Perplexity say nothing either way. So a page whose content only appears after JavaScript runs is readable by one of the four platforms we checked, and a gamble on the rest.

We read the crawler documentation of four AI platforms on 13 August 2026 and counted the named fetch paths. Eighteen. One is documented as executing JavaScript, one is documented as not supporting JavaScript-rendered pages, and the other sixteen say nothing about it either way.

That silence is the finding. It is not proof that those crawlers cannot render a page, and we are not claiming it is. It does mean that if your content only exists after JavaScript runs, you are betting on behaviour nobody has published.

PlatformNamed fetch paths in its docsRendering documented
Google11 common crawlersYes, for Googlebot and Search only, not the other 10
OpenAI4 user agentsNot stated
Perplexity2 user agentsNot stated
Anthropic1 web fetch toolStated as not supported
Named crawler and fetcher paths on each platform's own documentation. Four platforms, 18 paths, read 13 August 2026. We treated rendering as documented only where the platform's own words say the agent executes JavaScript or renders the page. Absence of a statement is recorded as not stated, and is not evidence that the crawler does not render.

Which AI crawlers say they execute JavaScript?

Google is the only one of the four that answers plainly. Its JavaScript SEO documentation states that Google Search runs JavaScript with an evergreen version of Chromium, and that a headless Chromium renders the page once resources allow.

  • Google: documented, though the statement sits on its JavaScript page rather than on any crawler reference page
  • OpenAI: four named agents, OAI-SearchBot, OAI-AdsBot, GPTBot and ChatGPT-User, with no rendering statement
  • Perplexity: two named agents, PerplexityBot and Perplexity-User, with no rendering statement
  • Anthropic: one documented fetch path, stated as not supporting JavaScript-rendered sites

The OpenAI crawlers page describes what each of its four agents is for, which robots.txt token controls it, and where to find its IP ranges. Rendering is not mentioned.

The same holds for the two agents on the Perplexity crawlers page. Both are described by purpose, user agent string and published IP ranges, and rendering does not come up.

Why a Chrome version in the user agent proves nothing

OAI-SearchBot advertises itself with a Chrome version inside its user agent string. So does Googlebot. A user agent string is a label a client chooses to send, not a capability statement, and reading one as evidence of rendering is the most common mistake we see on this question.

"Server-side or pre-rendering is still a great idea because it makes your website faster for users and crawlers, and not all bots can run JavaScript."

Google Search Central, Understand the JavaScript SEO basics

That is Google, in its own JavaScript documentation, telling you not to assume. If the company that does render is warning you that others may not, the safe read is to serve the content in HTML. We covered the related control gap in our note on what LLM SEO actually rests on.

What Google actually documents about rendering

Google publishes 11 common crawlers on its crawler reference page, and a separate technical properties page covering protocols, encodings, file size limits, crawl rate and HTTP caching. Neither page states rendering behaviour for any agent. You have to leave the crawler documentation entirely to find it.

Where we looked in Google's docsRendering stated
Common crawlers reference, 11 entriesNo
Crawler technical properties overviewNo
Googlebot pageOnly indirectly, via resource fetching
JavaScript SEO basicsYes, explicitly
Four Google documentation pages read in full on 13 August 2026. Rendering is stated on one of the four, and it is not one of the two crawler reference pages.

The Googlebot page adds a limit worth knowing. Googlebot crawls the first 2MB of a supported file type, and each resource referenced in the HTML, including your JavaScript, is fetched separately and bound by that same limit. A bundle above it gets truncated.

What does a non-rendering fetch actually see?

We have measured this. In August 2026 we fetched the homepages of 30 Tamil Nadu engineering colleges as raw HTML with JavaScript disabled, which is close to what a fetch path that does not render would receive. Five of the 30 did not come back fully readable.

What the raw fetch returnedSites
Nothing readable at all2 of 30
Fragments only3 of 30
No meta description at all12 of 30
Description present but broken or misassigned4 of 30
Kula crawlability audit. 30 Tamil Nadu engineering college homepages fetched as raw HTML with no JavaScript execution, August 2026. Kula clients excluded. The per-institution breakdown is not published. This is a finding about 30 engineering college homepages, not a rate for any wider population.

Two returned nothing. Not a thin page, not a weak headline, nothing for a non-rendering client to quote. We wrote up the full metadata picture from that sample in our piece on what Tamil Nadu college homepages get wrong.

Want to know which of these applies to your site? Here is what a free AI visibility audit covers.

See how you show up in ChatGPT, Gemini and Perplexity. Free AI visibility audit.

How do you check what a crawler sees on your page?

Three checks, in order of how much they tell you, and none of them needs a paid tool.

  • 1

    Fetch the page with curl and no JavaScript engine, then read what comes back

  • 2

    Open the rendered HTML in Search Console URL Inspection and compare it against that raw fetch

  • 3

    Disable JavaScript in Chrome DevTools, reload, and look at the page as a non-rendering client would

"If your headline, your body copy and your enquiry path do not all survive a raw fetch, you are relying on rendering that only one of four platforms documents."

Absence from an AI answer has two possible causes, and this is only one of them. The diagnostic for separating them is in our note on why a site goes missing from AI answers.

Should you stop using JavaScript?

No. The question is not whether you use JavaScript, it is whether your content depends on it. A React site that server-renders its pages is readable by every path in our count. A React site that ships an empty shell and fills it on the client is readable by one.

"The web fetch tool currently does not support websites dynamically rendered with JavaScript."

Anthropic, Web fetch tool documentation

That sentence is from Anthropic's web fetch tool documentation. It is the only unambiguous negative in our count, and it is worth more than the sixteen silences, because it tells you exactly what a reader on that platform gets when your page needs a browser. The fix is the same in every case: put the words in the HTML.

Key takeaways

  • Of 18 named fetch paths across four platforms, one documents JavaScript execution and one documents that it does not support it
  • Silence in a crawler doc is not proof of non-rendering, and it is not a reason to depend on rendering either
  • A Chrome version inside a user agent string is a label, not a capability
  • Google states rendering on its JavaScript page, not on either of its two crawler reference pages
  • Googlebot fetches the first 2MB of a file, and your JavaScript bundle is bound by the same limit
  • 5 of 30 Tamil Nadu engineering college homepages we fetched in August 2026 were not fully readable without JavaScript
  • Server-rendering the content, or pre-rendering it, removes the question entirely

Frequently asked

Does Googlebot render JavaScript?

Yes. Google's JavaScript documentation states that Google Search runs JavaScript with an evergreen version of Chromium, and that pages returning a 200 status are queued for rendering by a headless Chromium regardless of whether JavaScript is present.

Does GPTBot execute JavaScript?

OpenAI's crawler documentation does not say. It describes GPTBot's purpose, its user agent string, its robots.txt token and its published IP ranges, with no statement about rendering. Treat it as unknown rather than as either a yes or a no.

Does PerplexityBot render JavaScript?

Perplexity's crawler documentation does not state it. Both PerplexityBot and Perplexity-User are described by purpose, user agent string and IP ranges only.

Can Claude read a JavaScript-only page?

Its web fetch tool documentation states that the tool does not support websites dynamically rendered with JavaScript, and that only text, HTML and PDF content types are supported.

Is server-side rendering still necessary in 2026?

For content you need machines to quote, yes. Google itself recommends server-side or pre-rendering on the grounds that not all bots can run JavaScript, which is the whole argument in one line.

What is the fastest way to test my own page?

Disable JavaScript in Chrome DevTools and reload. If your main heading and your enquiry path disappear, a non-rendering fetch path sees the same nothing.

Sources

  1. 1.Understand the JavaScript SEO basics, Google Search Central
  2. 2.List of Google's common crawlers, Google Crawling Infrastructure
  3. 3.Overview of Google crawlers and fetchers, technical properties, Google Crawling Infrastructure
  4. 4.What Is Googlebot, Google Search Central
  5. 5.Overview of OpenAI Crawlers, OpenAI
  6. 6.Web fetch tool, Anthropic
  7. 7.Perplexity Crawlers, Perplexity
A

Adith Krishnan

Co-Founder & COO, Kula Digital

8+ years building marketing that is measured in revenue. Runs strategy, AI search visibility, and education marketing at Kula. Written from the studio in Coimbatore.

More on GEO

Related reading

All articles