Your website can rank on Google and not exist for ChatGPT: can AI crawlers read JavaScript websites?
Your website can rank on Google and still not exist for ChatGPT. I found out on June 1, when an SEO founder ran our domains through his audit and told me we scored about 20 out of 100.
Then he said the sentence that made me rethink every site we had built that spring: "Google's the only engine. That will crawl JavaScript content. That's why they invented Chrome."
So can ChatGPT crawl JavaScript websites? The best public evidence says no. Vercel analyzed AI crawler traffic across its network and reported in December 2024 that none of the major AI crawlers it studied rendered JavaScript, OpenAI's and Anthropic's included. If your content only appears after JavaScript runs in a browser, those crawlers see an empty shell.
The audit: 20 out of 100, no structured data
The score stung less than the second finding. We had zero structured data. His words: "you have no structured data. Structured data is like, that's the number one thing that you do." He described it as how you communicate with an AI engine. We were not communicating at all.
Structured data is the machine-readable layer on a page: what this page is, who wrote it, what organization it belongs to, which questions it answers. A human reads the design. A model reads the markup. We had built beautiful pages for humans and handed the models a blank form.
Only Google renders JavaScript
The audit explained a puzzle. Our sites were built in Lovable, a tool that generates JavaScript apps fast. On June 2 our web partners pointed out that the Lovable site was getting three to five times more views than the WordPress site it replaced. Real traffic, from Google, which renders JavaScript.
So we had a site that worked for one engine and was invisible to the others. Vercel's numbers show what that costs: in the month it measured, GPTBot made 569 million requests across its network and Anthropic's crawler made 370 million. Those crawlers are visiting sites like ours constantly. On a JavaScript-only page, they leave with nothing.
On June 9 our web partner put it in a way I still repeat: "If you keep the lovable JavaScript, it'll feel like you're on a really long hike." You can get there. It just takes forever and you are carrying weight the whole way.
Why we kept the Lovable site live and rebuilt in HTML
We did not rip anything out. The working site was making us money, and a migration that tanks traffic to fix a crawler problem is a bad trade. The plan from our June 2 call was to keep the current site running, test the new version alongside it, and measure.
We picked a podcast site as the first rebuild because it had the least traffic to lose. On June 11 we planned it in detail with our web partners: rebuild in plain HTML with Claude Code, start fresh instead of copying broken metadata, and have the AI audit the old site and fix its errors in the new build. As I said on the June 9 call, we were one prompt away from rebuilding it. The hard part was deciding what the pages should say.
Headings that answer questions
That decision was the most useful part of the whole project. Every H1 and H2 got rewritten to answer a question people actually ask, not to sound like an SEO title.
A model answering a buyer's question looks for a page that answers that question clearly, near the top, in a heading that matches. "Our approach" tells it nothing. "How long does it take to raise a seed round" tells it exactly when to cite you.
Each podcast episode page got the same treatment: a clean transcript with the filler removed, a short summary written for our buyer, and a few scenarios showing how our offers would apply to that guest's situation. All of it in the HTML, readable without running a line of JavaScript.
FAQs go on product pages, not podcast pages
One rule from the June 11 session surprised me. FAQs belong on product pages, not podcast pages. The podcast content builds the soil: language, depth, backlinks, the long tail of what our guests talk about. The product pages are where buyers and models go for a direct answer, so that is where the FAQ, built from real search queries, earns its place.
Citations beat mentions
The goal of all this is not to be mentioned by an AI. On June 16 our partner put the target precisely: "citations are the winner. That means AI recommends your brand with a link that somebody can follow through."
A mention gives you a name in an answer. A citation gives you a click from a buyer who just asked a model who to hire. You only get citations from pages a crawler can read, structure a model can parse, and headings that match the question.
A checklist for a JavaScript-built site
- View your page source, not the rendered page. If your main content is not in the raw HTML, assume AI crawlers cannot see it.
- Add structured data for your organization, articles and FAQs.
- Rewrite headings as the questions your buyers ask.
- Rebuild your lowest-traffic site first in static HTML and compare.
- Keep the working site live until the new one proves itself.
If you want to see how our show transcripts and sites feed one funnel, take the tour.
Frequently asked questions
Can ChatGPT read JavaScript websites?
Vercel's December 2024 analysis found that none of the major AI crawlers it studied rendered JavaScript. If your content only appears after JavaScript runs, assume those crawlers see an empty page.
Is a Lovable site good for SEO?
It can work for Google, which renders JavaScript; ours drew three to five times the views of our old WordPress site. For AI search, we rebuilt in static HTML so other crawlers can read the content.
What is structured data and do I need it?
It is machine-readable markup that tells engines what a page is, who made it and what it answers. An audit called it the number one thing to fix when it found we had none.
How do I get my company cited in AI answers?
Make pages crawlable without JavaScript, add structured data, and write headings that answer real buyer questions. Aim for citations with a link, not just mentions.