Skip to main content
Back to List
geo·Author: RanketAI Editorial Team·Updated: 2026-08-20

AI Crawlers Don't Render JavaScript — Why 36% of Fintech Vanishes From ChatGPT (2026)

AI crawlers like GPTBot, ClaudeBot, and PerplexityBot don't execute JavaScript. A study found 36% of 274 fintech homepages showed under 80% of content without JS — absent from ChatGPT and Perplexity answers. Only Googlebot renders; server rendering fixes it.

AI-assisted drafting · reviewed by the RanketAI Editorial Team — Editorial policy ›

Key Takeaway

  • AI crawlers like GPTBot, ClaudeBot, and PerplexityBot do not execute JavaScript. They are not browsers — they grab the first HTML response and leave.
  • In one study, 36% of 274 fintech homepages exposed less than 80% of their content without JS, and 47 were completely blank.
  • Googlebot renders, but most AI crawlers don't. So a page with a perfectly fine SEO score can still be missing entirely from ChatGPT and Perplexity answers.
  • (Updated Aug 2026) It's not just content. In a 41-day controlled experiment, pages linked only via JavaScript had a 0% discovery rate for GPTBot and ClaudeBot — if a link is a JS event, the page's existence never reaches the crawler.
  • The fix is simple — put your core content in server-rendered or static HTML so it appears in the first response, and make primary links real <a href> links.

To be cited in AI search, a crawler first has to be able to read your content. But the crawlers feeding ChatGPT, Perplexity, and Claude see something different from what you see in a browser. Content painted in by JavaScript may simply not exist to them.

AI Crawlers Are Not Browsers

A browser receives HTML, then runs JavaScript to fill in the content. That's why single-page apps (SPAs) and client-rendered sites look fine to you. But the default behavior of an AI crawler is different.

"Most AI crawlers do not render JavaScript. They make HTTP fetches and walk away. They are not browsers." — Search Engine Journal

GPTBot, ClaudeBot, and PerplexityBot all read only the HTML in the first HTTP response. They may download JavaScript files, but they never run them, never wait for rendering, and never retry. Rendering every page in a browser at crawl scale would be enormously expensive, so the production default is a short timeout of one to five seconds and "take what's there."

The exception is Googlebot. Google runs a separate deferred rendering pipeline, and Gemini, which shares that infrastructure, can execute JavaScript too. In other words, the crawlers that render are essentially Google's — every other AI answer engine sees the pre-render HTML.

The Data: 36% of Fintech Vanishes Without JS

This gap is not an abstract worry — it's measured. One study tested 274 homepages from CNBC's global fintech list twice each: once with a full browser render (Playwright), once with a raw HTTP fetch and no JavaScript.

Of 274 fintech homepages, 36% returned less than 80% of their content without JavaScript. Of those, 20% (55 sites) returned under 30%, and 47 were completely blank. — Search Engine Journal

That's roughly one in three sites where most of the core content is invisible to an AI crawler. For 47 of them, only a title and an empty container remained — the body was gone entirely. A page that looks perfectly fine to a human was a blank sheet to the AI.

New measurements show this is not only a content-rendering problem. A 41-day controlled experiment published on Search Engine Land (Vinicius Stanula, 2026-08-19) split the 21 top-level sections of a ~2,400-page directory site into an HTML hard-coded link group (11 sections) and a JavaScript-injected link group (10 sections), disabled every alternate discovery path (sitemaps, breadcrumbs, internal panels), and logged every bot request — isolating link discovery from content.

Discovery rates over the 27-day first phase diverged sharply by bot:

Crawler HTML-linked pages JS-injected-link pages
GPTBot 100% 0%
ClaudeBot 100% 0%
Meta-ExternalAgent 537 pages crawled 0 pages
Amazonbot 735 pages crawled 0 pages
Bingbot 282 pages crawled 3 pages (likely via an alternate path)
GoogleOther 66% (495/748) 48% (142/293)
Googlebot 5% (35/748) 2% (7/293)

JavaScript pages were discovered 18–27% later than HTML counterparts at all depth levels. — Search Engine Land

Two points stand out. First, even if your content is server-rendered, pages behind JS-event links do not exist to AI crawlers. The AI-family crawlers (GPTBot, ClaudeBot, Meta, Amazon) sat at effectively 0% discovery on JS links; only the rendering Google family reached them partially. Second, recovery windows differ by bot. When the site converted to HTML links on day 27, GPTBot swept 250 previously unreachable pages within 48 hours and Bingbot added 212 within a week — but ClaudeBot stayed at 0% discovery of the newly linked pages through day 41, and Google's recovery was negligible. The later you fix it, the more likely some engines never catch up.

As a single-site experiment, the safer reading is the direction of the gap between bots rather than the absolute numbers. Still, it is the first controlled demonstration that the "real <a href> links" row in the table below is not a soft recommendation — it is the difference between 100% and 0% discovery.

Why This Is More Dangerous Than an SEO Score

Traditional SEO masked this problem, because Googlebot renders for you. It's easy to shrug it off — "we rank fine on Google, so we're fine."

The catch is that AI answers are no longer distributed across just Google. ChatGPT, Perplexity, and Claude each use data collected by their own crawlers, and those crawlers don't render. The result:

  • Visible in Google Search — Googlebot rendered and read the body
  • Missing from ChatGPT and Perplexity — the AI crawler saw only empty pre-render HTML

This is a classic point where SEO rank and AI visibility diverge. It's a blind spot you can't see from search rankings alone, so it goes unnoticed unless you measure for it.

How to Self-Diagnose Your Pages

You can check in 30 seconds without writing any code.

  1. View source. Right-click → "View Page Source." What you see here is the pre-render HTML — the same thing an AI crawler sees. If your body text isn't here, that's a red flag.
  2. Disable JavaScript and reload. Turn off JS in your browser settings and reopen the page. If only the title remains and the body, pricing, and FAQ disappear, AI crawlers see the same thing.
  3. Check whether the body is in the first response. See whether your core content is in the first HTML response or only filled in after an API call. If it's the latter, it's invisible to non-rendering crawlers.

Five Ways to Expose Content to AI

Item What to do
Server rendering Put core content in server-rendered (SSR) or static HTML (SSG) so it appears in the first response
First HTML first Don't defer high-value text — title, body, pricing, FAQ — behind client-side rendering
Keep it as text Don't trap key information inside images or canvas only — expose it as text
Real <a href> links Make primary navigation real <a href="..."> links, not JavaScript events
Supporting layer Treat llms.txt and structured data as add-ons that assume the body is already exposed

Order is everything. No matter how carefully you add llms.txt or FAQ schema, if the body itself isn't in the first HTML, the AI crawler receives a blank page. Pre-render exposure is the precondition for all AEO and GEO work.

Verify the Change by Measuring

Once you've moved to server rendering, confirm that AI crawlers actually read and cite the content. Use Site Check to verify that your core body is exposed without JavaScript so crawlers can read it, and AI Brand Visibility Analysis to measure whether ChatGPT, Perplexity, and Gemini cite your page for the same questions. Together they show, as a trend, whether rendering fixes translate into actual exposure.

FAQ

If we rank fine on Google, aren't we okay?▾

No. Googlebot renders for you, but the crawlers for ChatGPT, Perplexity, and Claude don't. Normal Google exposure can coexist with being absent from other AI answer engines, so AI visibility has to be checked separately.

Are SPAs like React or Vue always at a disadvantage?▾

The framework itself isn't the problem. The same React app can use server rendering (SSR) or static generation (SSG) to put core content in the first HTML, where crawlers can read it. The problem is a pure client-rendered setup that fills the entire body on the client.

Won't server-rendering everything slow the site down?▾

You only need to expose the core content — title, description, pricing, FAQ, and other high-value text — in the first HTML. You don't have to server-render every interactive element. The key is to include the highest-priority text in the first response.

Our content is server-rendered — is JavaScript-only navigation still a problem?▾

Yes. In the 41-day controlled experiment, pages reachable only through JavaScript links had a 0% discovery rate for GPTBot and ClaudeBot regardless of their content. If a page is never discovered, perfectly exposed content never gets read. Keep primary navigation as real <a href> links.

Does adding llms.txt solve this?▾

No. llms.txt is a signpost for your site structure, not a renderer. If the body isn't in the first HTML, there's no body for the crawler to read, llms.txt or not.

Further Reading

Execution Summary

ItemPractical guideline
Core topicAI Crawlers Don't Render JavaScript — Why 36% of Fintech Vanishes From ChatGPT (2026)
Best fitPrioritize for geo workflows
Primary actionStandardize an input contract (objective, audience, sources, output format)
Risk checkValidate unsupported claims, policy violations, and format compliance
Next stepStore failures as reusable patterns to reduce repeat issues

Data Basis

  • Fintech rendering measurement: A Web Performance Tools study reported by Search Engine Journal (measured 2026-05-25, each homepage tested twice — Playwright 1.60 full browser vs raw HTTP fetch) found that of 274 CNBC global fintech homepages, 36% returned under 80% of their content without JS, 20% (55 sites) under 30%, and 47 sites were completely blank. A single study, but with a clear dual-measurement method — used as directional evidence.
  • AI crawler non-rendering: Major AI crawlers including GPTBot, ClaudeBot, and PerplexityBot perform only raw HTTP fetches and do not execute JavaScript, confirmed across multiple analyses. Googlebot (and Gemini, which uses its infrastructure) is the exception with a deferred rendering pipeline. So client-rendered content can be visible to Google yet invisible to ChatGPT, Perplexity, and Claude.
  • Link discovery controlled experiment (updated 2026-08-20): a 41-day controlled experiment published on Search Engine Land (Vinicius Stanula, 2026-08-19) — a ~2,400-page directory site split its 21 top-level sections into 11 with hard-coded HTML links vs 10 with JavaScript-injected links, disabled alternate discovery paths (sitemaps etc.), and logged every bot request. A single-site experiment, so used as evidence for the direction of the gap between bots rather than absolute values.

Key Claims and Sources

This section maps key claims to their supporting sources one by one for fast verification. Review each claim together with its original reference link below.

External References

The links below are original sources directly used for the claims and numbers in this post. Checking source context reduces interpretation gaps and speeds up re-validation.

Is your site visible in AI search?

See for free how ChatGPT, Perplexity, and Gemini describe your brand.

Start Free Diagnosis →

Keep reading

Related Posts

These related posts are selected to help validate the same decision criteria in different contexts. Read them in order below to broaden comparison perspectives.

The AI Search Trust Paradox — Adoption Up 70%, Trust Down 28 Points (2026)

Consumers use AI search more (70% report increased use) yet trust it less: those calling AI "more helpful" fell from 82% to 54% in a year. Here's why adoption and trust are splitting, and how brands rebuild trust signals through measurement.

2026-06-18

RanketAI Guide #10: Building a ChatGPT Answer Block It Will Quote

ChatGPT lifts a citation-ready 'block' instead of reading your whole page. Learn the four-element answer block (direct answer, statistic, inline source, date) and a template to raise your ChatGPT citation odds, from RanketAI's measurement view.

2026-06-07

GEO Content Is Now Detectable — 8.9% of Web Pages Already Optimized (2026)

A detector now flags GEO-optimized content at F1 0.944. The GEO-Flag study flagged 8.9% of 10,095 real-world pages — and 16.4% of pages modified in 2026 — as GEO-optimized. We unpack the numbers and the line between mechanical and sustainable optimization.

2026-08-23

9 AI Search Myths vs 15 Million Data Points — What Fell and What Remains (2026)

llms.txt went unfetched on 97% of sites, schema moved citations by under 5%, and only 37.9% of AI-cited pages ranked top 10. We regroup nine myths debunked by an Ahrefs research roundup into shortcuts, rankings, and the new battleground of brand mentions.

2026-08-20

AI Picks Its Shortlist Before It Searches — 72 Queries Across 12 Korean Categories

AI search does not run the question you typed. It writes its own query first, and in some categories that query already contains brand names the user never entered. We captured 72 real queries across 12 Korean categories from two models.

2026-08-17