Skip to main content

Stock status on product pages: what Merchant Center expects

Every product page you send Google shoppers to should say plainly whether the item can be bought, and that answer has to match your product data. Sold out means a sold-out label or a disabled button; a preorder needs its ship date. Get it wrong and you are paying for clicks that end at a dead button.

Major4 min read

Why this matters

Google's “Availability [availability]” page puts this among the minimum requirements for showing a product at all: “Indicate the product availability on your landing page”. It spells out what that means. An item you sell needs a working buy or add-to-basket button. A sold-out item needs clear wording such as “sold out”, or a disabled button, and sold-out variants can be greyed out in the selector. For preorder and backorder items, “the page must display the expected shipping date”.

The page and the product data have to tell the same story. The same page asks you to “Show a consistent availability across the landing page, structured data (if available), checkout page, and your data source”, and it is blunt about the usual failure: “If we find that a product is out of stock on your landing page or during checkout, but the availability attribute is set to in_stock in your product data, we disapprove the product.”

The markup counts as part of the page. Google's landing page requirements recommend you “Use schema.org structured data to indicate price, availability, and unique product identifiers such as GTIN, brand, and MPN”, and add: “If your website uses structured data, the requirements about price, availability, currency and condition apply to your site as well.” Markup that says InStock under a “Sold out” label is a mismatch on your own page.

Product Experts on Google's Merchant Center Community put the habit in one line: update stock as soon as it changes and “show if an item is in or out of stock on the product landing page”.

The free scan compares the stock status in your product markup with what the page shows and reports a contradiction as a failure. It flags product markup that states no availability at all, puts a product in the basket to catch a checkout that refuses an item the page offers as in stock, and samples your catalogue to report one that is mostly out of stock. Your product data sits outside the scan; availability in Merchant Center covers that side, and low-stock messages covers the numbers beside the button. The misrepresentation checker lists every stock and product-page check.

Typical evidence

What the shopper sees must match what you submit

A public scan can capture the availability wording and button state on a page. If you use a feed, compare that captured evidence with the submitted availability yourself. Do not send a shopper to a “Currently unavailable” page for a product advertised as in stock.

GMC feed
in stock
≠
Product page
Currently unavailable
A shopper clicks an ad for a product they can’t buy. Drive the page and the feed from one stock source — and check it as a stranger would, in a clean incognito window.

The public signals this check looks for:

  1. The page says “In stock” while the product data says out of stock, or the other way round

    The page says “In stock” while the product data says out of stock, or the other way round.

  2. The add-to-cart button is greyed out or says “Notify me”, but the product data still sends…

    The add-to-cart button is greyed out or says “Notify me”, but the product data still sends in_stock.

  3. No availability wording at all, so the only clue is a button that may or may not work

    No availability wording at all, so the only clue is a button that may or may not work.

  4. The product markup says InStock on a page that shows “Sold out”

    The product markup says InStock on a page that shows “Sold out”.

  5. A preorder or backorder item with no expected ship date anywhere on the page

    A preorder or backorder item with no expected ship date anywhere on the page.

  6. The page offers the item, but the cart refuses it with an “insufficient stock” message

    The page offers the item, but the cart refuses it with an “insufficient stock” message.

What it looks like once it is right

“In stock, dispatched within 1 working day” beside the price, an active add-to-cart button, markup saying InStock, and product data saying in_stock. When the last unit sells, all four switch to sold out together.

Common mistakes

Common mistake

Product data: in stock. Product page: a price, no stock wording, and an add-to-cart button that answers “This item is currently unavailable” at the cart. The markup says InStock.

Fix checklist

One source of truth, three surfaces

Page copy, structured data and the feed all read from one stock source — and you confirm it in a clean incognito session.

Inventory system
the one stock number
Page copy
“In Stock”
Structured data
schema availability
GMC feed
availability attr
Incognito check: all three read “in stock” for the same SKU — no mismatch to flag.

Questions merchants ask

Do I have to show stock status on product pages for Google Shopping?

Yes. Google's availability page lists it among the minimum requirements: indicate the product availability on your landing page. An item you sell needs a working buy or add-to-basket button, a sold-out item needs clear wording or a disabled button, and a preorder or backorder item needs its expected shipping date.

What happens if my product page says sold out but Merchant Center says in stock?

Google's availability page says that when a product is out of stock on the landing page or during checkout while the product data says in_stock, it disapproves the product. Update the product data, or fix the page, so the two agree.

Does my product page structured data need to show availability?

Google's landing page requirements recommend schema.org structured data for price and availability, and say that if your website uses structured data, the requirements about price, availability, currency and condition apply to your site as well. Markup saying InStock on a sold-out page is a mismatch like any other.

Remediation

Risk signal

A shopper who clicks an ad for something they cannot buy has wasted their time and your money. Say the stock status in words, make the button, the markup and the product data agree, and test the path to the basket after every stock change. The free scan shows you which pages disagree, so start there.
PriorityAddress and document this finding as part of the store’s remediation work.
EvidenceRecord the current state before each change, apply the fix, then capture the corrected state so every change is evidenced.

Similar cases

Sources

  1. Availability [availability] — in stock, out of stock, preorder, backorderGoogle Merchant Center Help — support.google.com
  2. About landing page requirementsGoogle Merchant Center Help — support.google.com
  3. Allow Merchant Center to update product information automaticallyGoogle Merchant Center Help — support.google.com

Community guidance

Written by Product Experts, the users Google recognises for their answers on its Merchant Center Community forum. Often stricter than Google’s help pages, and not Google policy.

  1. How to fix Google Merchant Center suspensions (plain-language walkthrough)Merchant Center Community · Product Expert guide — support.google.com

Last reviewed 23 Sep 2026.

That is one issue. The library documents 134.

The free scan lists what it finds on your store. The paid report adds the affected pages, captured evidence and step-by-step fixes. Start free, with no account needed.