AI crawlers don't run JavaScript. Can they read your product pages?
The silent killer of AI visibility: product names, prices and descriptions that only appear after JavaScript runs. How to test it in 30 seconds and what to do about it.
September 20, 2026 · 2 min read · technical SEO · JavaScript · product pages

Here's a test you can do right now. Open one of your product pages, press Ctrl+U (view source), and search for the price. If it's there — good. If the source is mostly <script> tags and a <div id="app">, you have a problem that no amount of keyword work will fix.
Why it matters more for AI than for Google
Googlebot renders JavaScript, eventually, with a delay. Most AI crawlers don't render at all — they read the raw HTML the server sends and move on. If your product name, price and description are injected client-side, the AI sees a shell: a logo, a menu, and nothing to recommend.
This is the single most common reason a beautiful, well-stocked store scores poorly on AI readiness.
How to check properly
Three quick signals:
- View source — is the product content in the HTML, or only
<script>and empty containers? - Disable JavaScript in your browser (DevTools → Settings → Disable JavaScript) and reload. What survives is what AI sees.
- Run the NIMSEO check — G3 (Readable without JavaScript) reads the raw HTML of your product pages — exactly what AI crawlers get — and flags empty shells, missing prices and missing Product JSON-LD.
What "good" looks like
Server-rendered or statically generated product pages where:
- the
<title>and<h1>contain the product name, - the price and currency are visible as text (not only in an image or a JS variable),
- the description is real sentences in the HTML,
Product+Offerstructured data (JSON-LD) is in the page source.
Platform notes
- Shopify themes are server-rendered by default — usually fine unless a custom app injects content.
- Salla and Zid themes are generally server-rendered too. Problems appear with heavily customised themes or third-party "page builder" apps that load content via JavaScript.
- Headless / custom stores (Next.js, Nuxt, React SPA) are where this bites hardest. Use server-side rendering or static generation for product and category pages.
If G3 is red on your check, fixing it will do more for AI visibility than anything else on this blog.