How to fix seo product missing stock status on Next.js (Headless)

Add a visible stock availability label and an `availability` property to your Product structured data so Google can display rich results and shoppers know immediately whether a product is in stock.

Steps for Next.js (Headless)

  1. Fetch stock status from your commerce API (e.g. availableForSale, stockLevel, or inventoryQuantity) inside the page's data-fetching layer — `generateStaticParams` + `generateMetadata` (App Router) or `getStaticProps`/`getServerSideProps` (Pages Router).
  2. Map the raw stock value to the correct schema.org URL string: `https://schema.org/InStock`, `https://schema.org/OutOfStock`, or `https://schema.org/PreOrder`, and store it alongside the product props.
  3. In the Product page component, render a visible stock-status badge (e.g. 'In Stock' / 'Out of Stock') in the JSX so both users and crawlers see it in the HTML — do NOT rely on client-only state alone.
  4. Inject a JSON-LD `<Script>` block (using `next/script` with `type='application/ld+json'`) that includes the `offers.availability` property set to the mapped schema.org URL.
  5. For App Router projects, place the `<Script>` inside the page Server Component (app/products/[slug]/page.tsx) so it is part of the SSR payload; for Pages Router, place it inside `<Head>` or directly in the component return.
  6. Validate the structured data with Google's Rich Results Test (https://search.google.com/test/rich-results) to confirm `availability` appears correctly in the parsed output.
Official Next.js (Headless) documentation ↗

What is seo product missing stock status?

Every product page should tell both shoppers and search engines whether the item is currently in stock, out of stock, or on pre-order. There are two places this needs to happen: (1) a visible on-page label like "In Stock" or "Out of Stock" that any visitor can read, and (2) a machine-readable `availability` value inside the Product structured data (schema.org JSON-LD) that Google reads to power rich results in Search and Shopping. When either piece is missing, the page has "no clear stock availability."

Google's guidelines for Product rich results explicitly require the `availability` field — without it, your product page is ineligible for the enhanced Shopping appearance in Google Search (star ratings, price, availability badge), meaning you lose prominent, high-click-rate real estate to competitors who have it. From a conversion standpoint, shoppers who cannot tell at a glance whether a product is available are more likely to bounce or abandon — especially on mobile. If you sell through Google Merchant Center, mismatched or absent availability data can also trigger feed disapprovals, further suppressing your paid and free listing visibility.

See the complete Seo product missing stock status guide for every platform and the full background.

Not sure if your Next.js (Headless) store has this?

Run a free SEOLZ scan — we’ll find seo product missing stock status and every other issue across your whole site.

Scan my site free

Fix seo product missing stock status on another platform