GuidesBy 6 min read

JavaScript Website: Can ChatGPT See Your Content? How to Check

ChatGPT, Claude and Perplexity don't run JavaScript. Learn 5 quick tests to see what they read on your site and which content to fix first.

Article cover: the code of a web page as read by an AI crawler, with some lines highlighted

In short

Probably not, if your text, prices or reviews are loaded with JavaScript: the crawlers behind ChatGPT, Claude and Perplexity only read the HTML the server sends. Google does run JavaScript, which is why a site can appear in AI Mode but not in ChatGPT. The fix is to put essential content in the initial HTML.

  • Crawlers from OpenAI, Anthropic and Perplexity download HTML but do not execute JavaScript.
  • Google AI Overviews and AI Mode use Google's index, which does process JavaScript.
  • Your page source (Ctrl+U) is the fastest way to see what an AI crawler reads.
  • Prices, reviews, FAQs and product pages loaded via JavaScript are the content most at risk.
  • You don't need a rebuild: serve the HTML of the pages that matter from the server.

Written by the Geosnap AI agent, reviewed and approved by Rinald Sefa.

Translated from the Italian original. Read the original

Open a page on your site, then view its source with Ctrl+U (Cmd+Opt+U on a Mac). If the text you see on the page is missing from the source, that content is loaded with JavaScript after the page opens. For Google that is often fine. For ChatGPT, Claude and Perplexity it is not: the evidence published so far says their crawlers read the HTML exactly as the server sends it and do not run the code. This guide shows you how to check in a few minutes and what to fix first.

Why can't AI crawlers see content loaded with JavaScript?

AI crawlers download the page but do not "run" it the way a browser does: they read the initial HTML and stop there. If prices, descriptions or reviews only appear after a script calls an API, that part of the page is empty to them.

The most quoted data comes from an analysis by Vercel and MERJ of real crawler traffic across Vercel's network. None of the major AI crawlers measured executes JavaScript: OpenAI's GPTBot, OAI-SearchBot and ChatGPT-User, Anthropic's ClaudeBot, PerplexityBot and others. Some download JavaScript files without running them: 11.5% of ChatGPT's requests and 23.8% of Claude's were for .js files that were never executed.

The same study measured something else worth knowing: 34.8% of ChatGPT's requests and 34.2% of Claude's ended on 404 pages, compared with 8.2% for Googlebot. Many of the errors involved outdated static assets. In short, AI crawlers are less precise than Google and easily miss what they cannot find straight away.

Vercel's analysis dates from December 2024, but more recent tests confirm it. In January 2026 Resoneo built a test page with 15 different ways of inserting text, from static HTML to delayed scripts, and asked each assistant to visit it. ChatGPT and Claude read the static HTML and the content inside the noscript tag, but nothing inserted through JavaScript.

Google yes, ChatGPT no: who reads what

The main split is between Google and everyone else. Google has rendered JavaScript for years: in March 2026 it removed a section from its documentation on JavaScript accessibility because it considered it outdated. As Search Engine Journal points out, that applies to Google: other search engines and crawlers may not process pages the same way.

AI engineRuns JavaScript?Where it gets content
Google AI Overviews and AI ModeYes, through GoogleThe Google Search index, built by Googlebot, which runs JavaScript
GeminiIt dependsUses Googlebot's infrastructure, which runs JavaScript; in Resoneo's test the live visit made at a user's request did not
ChatGPTNoInitial HTML read by OAI-SearchBot, GPTBot and ChatGPT-User
ClaudeNoInitial HTML read by ClaudeBot and Anthropic's other agents
PerplexityNoInitial HTML read by PerplexityBot
Microsoft CopilotPartlyIn Resoneo's test it ran JavaScript, but with a very short wait time

This explains a common pattern: a site that shows up in Google AI Mode and hardly ever in ChatGPT. If key content arrives through JavaScript, Google sees it and ChatGPT does not. In Resoneo's test, no assistant read content that appeared after about 2 seconds.

How to check whether AI can see your content: 5 tests

A few checks are enough to know whether you have a problem. Run them on the pages that matter most: home page, service pages, product pages, pricing.

  1. Compare source and page. Open the page source (not "Inspect", which shows the page after processing) and search with Ctrl+F for an important phrase: a service name, a price, a review. If it is not there, an AI crawler cannot see it.
  2. Turn off JavaScript in your browser. In Chrome's site settings you can block JavaScript and reload the page. What remains is close to what ChatGPT reads.
  3. Download the page like a crawler. From a terminal, curl -A "GPTBot" https://example.com/services returns the raw HTML. If the result is almost empty, with a single container and lots of scripts, the site depends on JavaScript.
  4. Test with the assistant. Ask ChatGPT to open a page and report a specific detail, such as the price of a service. Be careful: assistants sometimes reconstruct content from the URL instead of reading it, as Resoneo observed with Gemini. Pick a detail that cannot be guessed.
  5. Check your server logs. If GPTBot or ClaudeBot visit your pages but get many 404 errors on static files, your site is serving resources the crawlers cannot use.

The URL Inspection tool in Google Search Console shows the rendered HTML, but only from Google's point of view: a complete page there does not mean it is complete for ChatGPT.

Which parts of a site are most at risk?

The most exposed content is exactly what answers customers' questions. Here is where to look first.

ElementTypical problemWhat to do
Prices and rate cardsLoaded from an API after the page opensPut them in the initial HTML
ReviewsShown by a third-party widgetInclude at least a summary in the page text
FAQsAnswers loaded only when the question is clickedKeep the text in the HTML and hide it with CSS only
E-commerce product pagesDescriptions and specs generated client-sideServer-side rendering or static pages
Menus and internal linksNavigation driven by scripts instead of real linksUse <a href> links that crawlers can follow
Title and descriptionSet by JavaScriptWrite them directly in the page code

Picture a travel agency whose deals are loaded from a booking engine. Someone asking ChatGPT for "November city breaks to Lisbon" will never see those deals cited: to the crawler, the page holds only a title and a menu.

How to fix it without rebuilding your site

You do not need to get rid of JavaScript: you need the essential content to be in the HTML the server sends. Vercel sums it up this way: render main text, metadata and navigation on the server; client-side JavaScript is fine for extras such as view counters, live chat or social feeds.

  • Server-side rendering or static generation. The most popular JavaScript frameworks can generate HTML on the server or at build time. Often you only need to change the rendering mode of your most important pages.
  • Pre-rendering. If your site is a single-page application that is hard to change, a pre-rendering service can serve crawlers a ready-made HTML version. Treat it as a stopgap and check that the content matches what people see.
  • A fallback in the noscript tag. In Resoneo's test ChatGPT and Claude read content placed in noscript. It is a partial fix, useful for short text such as a description or a price.
  • No important content in Shadow DOM or iframes. In the test almost no assistant read it.

If your site runs on WordPress you usually start ahead: pages are generated on the server. Still, check plugins and page builders that load blocks of content through JavaScript, such as reviews, pricing tables and catalogs.

Rendering is only one reason AI may not see a site. The other is crawlers blocked in robots.txt or by a firewall, which we cover in our guide to AI crawlers. In Geosnap's technical analysis both checks are automatic: blocked pages, content loaded only through JavaScript and 404 errors appear in a single list. After each fix, run the five tests again: it is the quickest way to know the problem is solved.

Sources

Frequently asked questions

Do AI crawlers execute JavaScript?

OpenAI's, Anthropic's and Perplexity's do not: according to the Vercel and MERJ analysis and Resoneo's 2026 tests, they read only the HTML sent by the server. Google runs JavaScript, and Microsoft Copilot partly does, with very short wait times.

If Google indexes my site well, can ChatGPT see my content too?

Not necessarily. Google processes JavaScript before indexing, so it sees content that ChatGPT's crawlers miss. Check the page source: if the text isn't there, ChatGPT can't read it.

Does a WordPress site have this problem?

Usually less so, because WordPress generates pages on the server. The issue can appear with plugins or page builders that load reviews, catalogs or pricing tables via JavaScript, so check those sections one by one.

Do I need to rebuild my site with server-side rendering?

Not necessarily. Often it is enough to turn on server-side rendering or static generation for your main pages, or to use a pre-rendering service as a temporary fix. The goal is to have text, prices and links in the initial HTML.