Jobs to be done · Diagnose · SEO · Dev

How to audit a headless storefront for AI readiness.

You're headless, and half the AI-visibility tools on the market assume a Shopify theme and an app install. Meanwhile client-side rendering may be hiding your schema and product content from the very crawlers you are trying to win — and no app-based tool will ever tell you.

Quick answer

eCommerce Insights scans by URL, so it works on any storefront — Hydrogen, Next.js, Astro, fully custom. Paste a PDP into the free AEO Grader to see what an AI crawler actually receives; the full audit scores every SKU and ships fixes as CSV or via the API. See eCommerce Insights for headless.

The slow way: diff what's served against what renders

The core manual technique is sound and worth knowing. Fetch a PDP the way a crawler does — curl -A "GPTBot" https://yourstore.com/products/example — and compare the response to what a browser renders. If the Product JSON-LD, price, and description appear only after hydration, most AI crawlers never see them: the page passes a browser-based schema validator and still fails every bot that doesn't execute your JavaScript.

Then repeat for the rest of the surface: robots.txt plus the CDN and middleware layers (headless stacks often block bots at the edge, where the file says one thing and the WAF does another), per-template schema coverage, canonical handling on variant URLs, and policy-page discoverability. Multiply by every template and every release — the audit you ran in March is invalidated by April's deploy. It is exacting work, it requires someone who can read both markup and infrastructure, and it has no natural owner, which is why it usually doesn't happen.


The eCommerce Insights way

  1. Grade the key templates free. Run the AEO Grader on a PDP, a collection page, and the homepage. The grader fetches like a crawler, so rendering gaps show up immediately — schema in the DOM but not the document is flagged as missing, because to a bot it is.
  2. Verify crawler access at the edge. The Agentic Readiness Grader checks per-bot admittance against actual fetch behavior, catching middleware 403s that robots.txt audits miss.
  3. Scan the catalog by URL. Point eCommerce Insights at your sitemap or a URL list. Every SKU gets the two scores — citation and agent-readability — without a platform app. A Shopify backend behind a custom front end can still connect via admin API for catalog metadata.
  4. Read the headless-specific findings. Rendering issues (content absent from served HTML), schema gaps per template rather than per page, robots/CDN conflicts, and canonical drift across variant routes.
  5. Ship fixes through your pipeline. Recommendations export as CSV or arrive via the API as structured payloads, so engineering applies them in the repo where the storefront actually lives. The reviewable-diff model is unchanged; only delivery differs.

For the rendering background, Google's documentation on JavaScript SEO basics applies doubly to AI crawlers, most of which execute less JavaScript than Googlebot. The fixes themselves are standard: schema for AI search covers the field-level work.

What "good" looks like

Product JSON-LD present in served HTML (no JS required)100%
AI bots receiving 200s through CDN and middlewareverified
Price and availability parseable from first fetchyes
Re-audit cadence tied to deploysper release

The decisive test: a SKU's served HTML, fetched with an AI user agent, contains everything needed to recommend and draft-cart the product. Headless stacks that pass it routinely outscore theme-based stores — server-rendered product routes plus engineering discipline is a strong combination.

Ask AI about this job

Have your favorite AI engine apply this walkthrough to your stack.

Frequently asked questions

Why do AI crawlers struggle with headless storefronts?
Most AI crawlers fetch HTML and parse it without executing JavaScript, or execute it inconsistently. A client-side-rendered storefront serves a near-empty HTML shell and hydrates content in the browser — so the schema, price, and description exist in the React tree but not in what GPTBot or PerplexityBot receives. Server-side rendering or static generation for product routes fixes the class of problem.
Does eCommerce Insights require a Shopify app to audit my stack?
No. Scanning is URL-based: point it at a sitemap or URL list and every page is fetched, parsed, and scored exactly as a crawler sees it. Shopify, Hydrogen, Next.js commerce, Adobe Commerce with a custom front end, or fully bespoke — the audit is the same. Details on the headless solution page.
How do fixes ship when there is no platform to push to?
As structured exports. Schema recommendations, content rewrites, and metafield-equivalent values export as CSV or arrive via the API, so engineering applies them through the stack's own content pipeline. The reviewable-diff model is the same; only the delivery changes.
What is the most common headless finding?
Product JSON-LD present in the hydrated DOM but absent from the served HTML — the page passes a browser-based schema validator and still fails every AI crawler. Second most common: bot-management middleware returning 403s to AI user agents that robots.txt claims to allow.
Does server-side rendering fully solve AI readiness?
It solves the visibility of your markup, not the quality of it. After SSR, the same standards apply as to any storefront: complete Product JSON-LD, answer-coverage in the copy, review signal, crawler admittance, discoverable policies. SSR makes you auditable; it doesn't make you good.

Audit any storefront. No app required.

URL-based scanning, per-SKU scores, fixes by CSV or API.