JavaScript-only internal links on top 1M homepages by platform
| Platform | Share of links JS-only | Homepages with all links JS-only | Homepages |
|---|---|---|---|
| WordPress | 7.8% | 1.0% | 111,642 |
| Shopify | 9.0% | 0.2% | 46,514 |
| Webflow | 6.5% | 1.3% | 2,486 |
| Wix | 3.9% | 0.8% | 876 |
| Squarespace | 19.1% | 0.6% | 497 |
| Other or custom | 16.0% | 10.9% | 492,708 |
| All homepages | 13.8% | 8.3% | 654,723 |
Source: PageSpeed Matters, Sept 2026. Link shares compare raw and rendered link totals per page.
Summary
Internal links are how crawlers find the rest of a site. When those links are in the HTML the server sends, any crawler can read them straight away. When they only appear after JavaScript runs, a crawler has to render the page first, and not every crawler does.
We compared raw and rendered HTML on 654,723 homepages in the top 1M sites by Chrome traffic. 13.8% of the 103,799,125 same-site links on those homepages are missing from the raw HTML and only appear after JavaScript runs. The share is far higher on custom builds than on the big site platforms.
What we measured
We used the September 2026 HTTP Archive mobile crawl of the top 1M sites by Chrome traffic. For each homepage we counted same-site anchor links in the raw HTML the server sends and in the rendered page after JavaScript runs. The links missing from the raw HTML are what we call JavaScript-only links.
The comparison is between raw and rendered link totals per page, not a match of individual links, so it measures how many links JavaScript adds rather than which ones. For speed, we used Chrome UX Report (CrUX) field data for the same homepages. The Core Web Vitals gap below is a correlation, not proof that JavaScript links cause slow pages.
About one in seven internal links needs JavaScript
Across 654,723 homepages, 13.8% of 103,799,125 rendered same-site links are missing from the raw HTML. Put another way, about one in seven internal links across these homepages only exists once JavaScript has run.
For some sites the dependence is total. On 54,479 homepages (8.3%) every internal link is JavaScript-only, so the raw HTML contains no path to the rest of the site. Another 25,690 homepages (3.9%) have more than half, but not all, of their internal links added by JavaScript. Together that is 12.2% of homepages (80,169) where most or all internal links depend on JavaScript.
Google can render JavaScript and follow links it finds there, as long as they are real anchor elements with an href. But rendering can happen later than the first crawl, and other crawlers may only read the raw HTML.
13.8%
Share of the 103,799,125 same-site links on 654,723 top 1M homepages that are missing from the raw HTML and only appear after JavaScript runs.
Custom builds lean on JavaScript links the most
Homepages built on the main site platforms put far more of their links in the raw HTML. 7.8% of internal links are JavaScript-only on 111,642 WordPress homepages, 9.0% on 46,514 Shopify homepages, 6.5% on 2,486 Webflow homepages and 3.9% on 876 Wix homepages. On 492,708 other or custom homepages the share is 16.0%. Squarespace is the exception among platforms at 19.1%, though on a small base of 497 homepages.
The gap is starker for homepages where every link needs JavaScript. These are almost all custom builds: 10.9% of other or custom homepages fall in this group, against 1.0% of WordPress, 1.3% of Webflow and 0.2% of Shopify homepages.
That fits how these sites are usually built. Platform themes render navigation on the server, while custom single-page apps often send a near-empty HTML shell and build the whole page, menus included, in the browser.
All-JavaScript homepages pass Core Web Vitals far less often
Homepages that rely entirely on JavaScript for their links also tend to be slower for real users. Of 38,476 homepages with only JavaScript links and CrUX data, 16.9% pass Core Web Vitals. Of 459,659 homepages where at least half the links are in the raw HTML, 49.1% pass.
This is an association, not cause and effect. Links themselves are not what slows a page. Homepages that build every link in the browser usually run heavy JavaScript frameworks, and that same JavaScript is likely what holds back loading and responsiveness.
The Top 10K hides the most links behind JavaScript
Popularity changes the picture only a little. Top 10K homepages hide the largest share of links behind JavaScript: 17.0% of links on 6,027 homepages. The Top 1K sits lower at 12.1%, the Top 100K tier (ranks 10K to 100K) at 14.9% and the Top 1M tier (ranks 100K to 1M) at 13.6%.
The spread between tiers is small next to the platform gap above. How a site is built matters far more than how popular it is.
What this means for your site
Check what your homepage looks like before JavaScript runs. View the page source, not the inspector, or fetch the page with a tool that does not render, and search for your main navigation links. If they are missing, crawlers that skip rendering cannot find the rest of your site from that page.
- Render navigation, category links and footer links on the server, or prerender them, so they exist in the first HTML response.
- Use real anchor elements with an href for every internal link. Click handlers on buttons or divs are not links to a crawler.
- Keep JavaScript for what needs it, such as personalised or interactive parts of the page.
- Test key pages with Search Console's URL Inspection tool and compare the rendered HTML with the source.
If you run a single-page app, server-side rendering or static generation for public pages usually fixes the link problem and tends to help loading speed too.
Sources
- HTTP Archive crawl, September 2026, mobile, top 1M sites by Chrome traffic, with Chrome UX Report (CrUX) field data
- Google Search Central, making links crawlable: https://developers.google.com/search/docs/crawling-indexing/links-crawlable
- Google Search Central, JavaScript SEO basics: https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
Embed this research
Paste this on your site to embed the chart. It links back to the source automatically.
<iframe id="psm-javascript-only-links" src="https://www.pagespeedmatters.com/embed/data-studies/javascript-only-links" width="100%" height="600" style="width:100%;border:1px solid #E2E3E1;border-radius:12px" loading="lazy" title="JavaScript-Only Links 2026: 13.8% of Internal Links - PageSpeed Matters"></iframe>
<script>window.addEventListener("message",function(e){if(e&&e.data&&e.data.psmEmbed==="javascript-only-links"&&e.data.height){var f=document.getElementById("psm-javascript-only-links");if(f){f.style.height=e.data.height+"px";}}});</script>
<p style="font:14px/1.5 system-ui,sans-serif">Source: <a href="https://www.pagespeedmatters.com/resources/data-studies/javascript-only-links">JavaScript-Only Links 2026: 13.8% of Internal Links - PageSpeed Matters</a></p>
Frequently asked questions
What percentage of internal links depend on JavaScript?
On 654,723 homepages in the top 1M sites by Chrome traffic, 13.8% of 103,799,125 same-site links are missing from the raw HTML and only appear after JavaScript runs.
How common are homepages with only JavaScript links?
On 54,479 homepages (8.3%) every internal link is JavaScript-only. They are mostly custom builds: 10.9% of other or custom homepages fall in this group, against 1.0% of WordPress and 0.2% of Shopify homepages.
Do JavaScript-only links hurt Core Web Vitals?
They go with weaker results. 16.9% of homepages with only JavaScript links pass Core Web Vitals, against 49.1% of homepages where at least half the links are in the raw HTML. That is a correlation, likely driven by heavy JavaScript stacks, not proof that the links cause slow pages.
How do I check if my links are in the raw HTML?
View the page source rather than the browser inspector, or fetch the page with a tool that does not run JavaScript, and look for your navigation links. Search Console's URL Inspection tool lets you compare that with the rendered HTML.
Moving key navigation into the server-rendered HTML is usually a contained change, and it gives every crawler a direct path into the rest of the site. Need help with this? See our technical SEO services.