# JavaScript Navigation Can Hide Pages From AI Crawlers, 41-Day Test Finds

> Source: <https://dev.to/alifar/javascript-navigation-can-hide-pages-from-ai-crawlers-41-day-test-finds-2jb>
> Published: 2026-08-27 20:30:30+00:00

JavaScript-powered navigation can make sections of a website difficult, or impossible, for AI crawlers to find. A controlled 41-day experiment reported by Search Engine Land found that GPTBot and ClaudeBot discovered no hierarchy pages available only through JavaScript-injected links, while standard HTML navigation was crawled far more reliably.

The finding matters because internal links are not just a user interface choice. They are a primary discovery path for search engines and AI systems. If a crawler cannot see a link in the page's initial HTML, it may never reach the destination page, regardless of the quality of that page's content.

In [Search Engine Land's report on the JavaScript navigation experiment](https://searchengineland.com/javascript-links-pages-invisible-ai-search-485228), Vinicius Stanula describes a test site with roughly 2,400 pages across 21 top-level sections. The experiment isolated navigation as the variable: sitemaps, breadcrumbs, and other page-discovery routes were disabled. To reach pages in the JavaScript group, a bot had to render the parent page and process its JavaScript.

The test divided 1,062 hierarchy pages into two groups. Eleven sections used ordinary HTML links, while 10 sections used JavaScript-injected links. The HTML group contained 748 pages, and the JavaScript group contained 293 pages.

The first phase produced a clear pattern. GPTBot and ClaudeBot crawled all 748 pages in the HTML-linked group but found **zero pages** in the JavaScript-only hierarchy. Other crawlers varied in how far they progressed, but static HTML links consistently provided the more dependable discovery route.

| Crawler | HTML-linked group, 748 pages | JavaScript-linked group, 293 pages |
|---|---|---|
| Googlebot | 35 pages, 5% | 7 pages, 2% |
| GoogleOther | 495 pages, 66% | 142 pages, 48% |
| GPTBot | 748 pages | 0 pages |
| ClaudeBot | 748 pages | 0 pages |
| Bingbot | 282 pages | 3 pages |
| Meta External Agent | 537 pages | 0 pages |
| Amazonbot | 735 pages | 0 pages |

Googlebot was the only crawler in the experiment that rendered JavaScript and moved deeper into the JavaScript hierarchy. Even so, its Phase 1 coverage was limited to seven of the 348 pages tracked in the JavaScript group. Bingbot reached only three of 293 JavaScript hierarchy pages. OAI-SearchBot, ChatGPT-User, and PerplexityBot also did not progress through the JavaScript-only hierarchy in the reported results.

The GoogleOther crawler label showed substantially broader reach, finding 66% of the HTML group and 48% of the JavaScript group. However, crawling a URL is not the same as indexing it or using it in a search result. The experiment measures discovery and crawl reach, not rankings, traffic, or final index inclusion.

For Phase 2, the JavaScript links were converted to standard HTML links. Several crawlers responded rapidly. GPTBot reswept the converted sections in about 48 hours and found approximately 250 new pages. Bingbot discovered roughly 212 new pages, while Meta External Agent added about 41.

Googlebot's recovery was much slower. By day 41 after the conversion, it had rediscovered only one page in the converted sections. That contrast is a useful reminder that fixing discoverability does not guarantee immediate recrawling by every system. Still, the fast response from several bots shows that link presentation can directly affect whether AI-oriented crawlers can map a site's content at all.

[JavaScript-powered navigation](https://scalevise.com/resources/javascript-links-ai-crawlers-41-day-test/) is not inherently incompatible with SEO. It can support interactive menus, client-side applications, and richer interfaces. The risk arises when a site relies on JavaScript as the **only way** to expose important internal paths. A navigation menu that looks functional in a browser may not provide usable links to every crawler.

For important category pages, service pages, product collections, documentation hubs, and other hierarchy pages, website owners should prioritize a crawlable baseline:

`<a href="...">`

links for essential internal navigation.The practical distinction is simple. A crawler that fetches the initial response should be able to identify the URLs that matter without needing to execute scripts, wait for client-side rendering, or reproduce a browser session. Semantic anchor links also help communicate the structure and relationship of pages in a way that scripts, buttons, and event handlers may not.

This is particularly relevant for sites that have migrated to a JavaScript framework, redesigned a menu, or adopted a headless content setup. Teams can unintentionally replace crawlable anchors with clickable elements that depend on JavaScript. The result may be an invisible layer of category and supporting content, even when individual pages load correctly for human visitors.

A technical audit should therefore inspect the server response rather than relying only on what appears in a rendered browser. If core navigation URLs are absent from the delivered HTML, the site has a discoverability dependency that the reported experiment suggests many AI crawlers will not overcome.

For businesses trying to appear accurately in [AI-assisted search](https://scalevise.com/resources/scalevise-geo-framework-measuring-ai-visibility/), a crawlable site architecture is a practical foundation. Scalevise can help identify whether important pages and brand information are visible across AI search experiences, then turn gaps into a focused improvement plan. Use the [AI Visibility and GEO Checker](https://scalevise.com/ai-visibility-geo-checker) to see where your business is appearing and where technical visibility issues may be limiting discovery. **Start an AI Visibility scan.**

**Can GPTBot and ClaudeBot crawl JavaScript-generated links?**

In this experiment, GPTBot and ClaudeBot discovered zero hierarchy pages that were reachable only through JavaScript-injected links. Both crawled the HTML-linked group extensively.

**Does JavaScript navigation prevent Google from finding pages?**

Not necessarily. Googlebot rendered JavaScript and found some JavaScript-linked pages in the experiment, but its coverage was limited. Standard HTML links remain a more dependable discovery path.

**Does crawler discovery guarantee that a page will be indexed?**

No. Discovery and crawling do not guarantee indexing, rankings, or inclusion in AI-generated answers. The experiment measured whether crawlers could reach pages through the tested navigation paths.

**What is the safest way to expose important internal links?**

Use standard HTML anchor links with `href`

attributes in the server-delivered HTML. Server-side rendering or prerendering can help when a site uses a JavaScript framework.

The experiment shows that JavaScript-only navigation can create a meaningful discovery gap, especially for AI crawlers. Websites do not need to abandon JavaScript, but their most important internal routes should be available through static HTML anchors. That approach gives search and AI systems a clearer path to the pages a business wants found.
