Skip to main content

Availability in Merchant Center: keeping stock status true

The availability in your product data has to match the product page, its structured data and checkout, or the product is disapproved. Update product data as often as stock changes, make a sold-out product look sold out, and never leave a listing pointing at something shoppers cannot buy. That is paying to disappoint people.

Critical4 min read

You run this check yourself

Our scanner can’t see inside your Google accounts, so this one’s on you. Work through the checklist below without running a scan.

Why this matters

Google's “Availability [availability]” page asks you to “Show a consistent availability across the landing page, structured data (if available), checkout page, and your data source”, and says the availability of every product “needs to match across all three”; a mismatch in any of them means the product is disapproved. Its best practices are specific: if a product is out of stock on your landing page or during checkout while your product data says in_stock, “we disapprove the product.” The page itself has to show the state: an active “Buy” button for in-stock offers, clear text such as “sold out” or a disabled button for out-of-stock ones, and the expected shipping date for preorders and backorders.

Two things on the same page save merchants grief. To stop selling for a while, set the item to out_of_stock or use [pause] rather than deleting it: “Adding an offer back after deletion will take a significant amount of time before it can show again.” And preorder and backorder items need the [availability_date] attribute, with the date visible on the product page.

Automatic item updates are not the answer on their own. Google says “Automations aren't a replacement for regular updates of your product data”, that they may not work for products whose price or availability changes more than once a day, and that “The product may be disapproved instead of updated if we detect a mismatch.” The Misrepresentation policy covers the shopper's side: promoting products that aren't stocked is an unavailable offer.

Manual check: StoreVerifier cannot see your product data or inventory, so compare those with Merchant Center yourself. The free scan covers the page side in one pass: structured data that contradicts the stock state, an out-of-stock product offered for sale, and a catalogue that is mostly out of stock. For the page side in detail, see stock status on product pages and variant stock status. See every stock and pricing check on the misrepresentation checker.

Typical evidence

A stock change between updates

This example shows a stock change after a daily feed run. The next update may leave a period to compare the submitted availability with the public product page; timing varies by setup.

Mon 09:00
Feed regenerated — correct
Feed: in_stock · Page: in stock
Mon 15:00
Flash sale sells out
Feed: in_stock (stale) · Page: sold out
Mon 20:00
Manual spot-check finds the difference
Feed: in_stock (stale) · Page: sold out
Tue 09:00
Feed regenerates — mismatch closes
Feed: out_of_stock · Page: sold out
A faster inventory update may shorten a stale-data period, but verify the actual feed and storefront behaviour in your setup. StoreVerifier does not read either system.

The public signals this check looks for:

  1. A limited item sells out between feed runs, and the listing keeps sending shoppers to it

    A limited item sells out between feed runs, and the listing keeps sending shoppers to it.

  2. Your platform's “continue selling when out of stock” option is on, so the page offers prod…

    Your platform's “continue selling when out of stock” option is on, so the page offers products you cannot ship.

  3. Product data updates weekly while stock on fast-moving items changes daily

    Product data updates weekly while stock on fast-moving items changes daily.

  4. A discontinued product was removed from the site but not from the product data, and its li…

    A discontinued product was removed from the site but not from the product data, and its listing now lands on a 404 or a category page.

  5. The product page says “sold out” while its structured data still declares InStock

    The product page says “sold out” while its structured data still declares InStock.

What it looks like once it is right

The same store sends stock changes through its platform integration within the hour, shows “Ships from 14 October” on backordered items with [availability_date] set, and keeps automatic item updates on as a backstop.

Common mistakes

Common mistake

A limited run sells out on Friday. The product page switches to “sold out”, but the feed runs on Mondays and the structured data still says InStock, so all weekend the listing sends shoppers to a product they cannot buy.

Self-check steps

Webhook or schedule: test the path you use

For fast-changing stock, a prompt update path may reduce stale data. Confirm the actual submitted and public values after a change; no fixed interval is a universal Merchant Center rule.

Daily scheduled feedUp to 23h mismatch
Trigger: 9am every morning
Hourly fetchUp to 59 min mismatch
Trigger: Every 60 minutes
Inventory webhook2–8 min mismatch
Trigger: Stock = 0 event
Most Shopify/WooCommerce GMC apps support webhook triggers. Check your integration settings for 'Real-time sync' or 'Trigger on inventory change'.
An inventory webhook can be a useful integration pattern. Confirm its timing and submitted-data results in your own account; StoreVerifier does not observe those private updates.

Questions merchants ask

What happens if a product is out of stock on my site but in stock in Merchant Center?

Google's availability page says that if a product is out of stock on your landing page or during checkout while your product data says in_stock, it disapproves the product. Update the product data so the page and the data agree before the listing sends shoppers to something they cannot buy.

Should I delete sold-out products from my product data?

Not if they are coming back. Google advises against deleting an item you only want to stop showing for a while, because adding a deleted offer back takes a significant amount of time. Set availability to out_of_stock or use the [pause] attribute, and remove products only when they are discontinued.

Do automatic item updates keep my availability correct?

They help with occasional mismatches, but Google says they aren't a replacement for regular product data updates and may not work for products whose availability changes more than once a day. Keep your own updates frequent and treat automations as a backstop.

Remediation

Risk signal

Stock changes faster than most feeds do. The fix is an update schedule that keeps up, a product page that tells the truth the moment stock hits zero, and structured data that says the same thing as the page.
PriorityTreat this and any other highest-severity findings as first-priority work, then document each fix.
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. Allow Merchant Center to update product information automaticallyGoogle Merchant Center Help — support.google.com
  3. Checkout requirements and best practicesGoogle Merchant Center Help — 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.