Do AI crawlers render JavaScript?
The short version
AI crawlers fetch your HTML and parse it. They do not run a browser engine, they do not execute your bundle, and they do not wait for hydration. Whatever is in the raw response is everything they will ever see.
Googlebot does render JavaScript, and has for years. This creates a specific and easily missed failure: your Google rankings look healthy, Search Console reports no problems, and you are still functionally invisible in ChatGPT, Claude and Perplexity.
How to check in ten seconds
Request your page without a browser and look at what comes back. If your headline, product description and body copy are not in that output, AI crawlers do not have them either.
curl -s https://yoursite.com | wc -w # then look for actual content, not just markup curl -s https://yoursite.com | grep -i "your headline text"
What a broken page looks like
A client-side rendered page typically ships a near-empty document with a mount point and a script tag. The word count of visible text sits somewhere between zero and a few dozen — navigation labels and a footer, nothing else.
<div id="root"></div> <script src="/static/js/main.8f3a2b.js"></script>
How to fix it
Serve your primary content in the initial HTML response. Which mechanism you use matters less than the outcome.
Server-side rendering (Next.js App Router, Nuxt, SvelteKit, Remix) renders on the server per request. Static generation pre-builds HTML at deploy time and is the cheapest option for marketing pages that do not change per visitor. Prerendering services return a rendered snapshot specifically to crawler user-agents.
Whichever you choose, verify with curl afterwards. A framework being "SSR-capable" is not the same as a given route actually being server-rendered — a component that fetches on mount will still be missing from the HTML.
The partial case
Full client-side rendering is the obvious failure. The more common one is partial: the hero and nav are server-rendered, but pricing tables, FAQs, reviews and tabbed content load client-side.
That pattern is worse than it looks, because the sections that load client-side tend to be exactly the ones an assistant would want to quote when someone asks what you charge or how you compare.
Frequently asked
Does Googlebot render JavaScript?
Yes. Googlebot renders JavaScript, which is why client-side rendered sites can rank in Google search while remaining invisible to AI assistants that do not render.
Will AI crawlers start rendering JavaScript?
Rendering is far more expensive than fetching, so there is no guarantee. Serving content in the initial HTML is the durable approach regardless.
Does dynamic rendering count as cloaking?
Serving crawlers a prerendered version of the same content is an accepted practice. Serving crawlers different content from what users see is cloaking and carries risk.
Last updated 2026-07-26.
Check your own site
Runs every check in this guide against fourteen AI crawlers. Free, no account.
No signup. No credit card. Results are a shareable link.