How to fix lifecycle oos schema not updated on Adobe Commerce (Magento)
Update the `offers.availability` value in your Product structured data from `InStock` to `OutOfStock` (or `PreOrder`) whenever a product sells out, so Google's records always match your actual inventory.
Steps for Adobe Commerce (Magento)
- Adobe Commerce (Magento 2) generates Product schema via the `Magento_ProductAlert` and structured-data modules. The availability is read from the product's `is_saleable` / `isSalable()` method.
- Check whether a third-party SEO extension (e.g. Mageplaza SEO, Mageworx SEO, Amasty SEO) is overriding the schema output. Go to the extension's admin configuration (Stores → Configuration → [Extension Vendor] → SEO) and ensure availability is set to 'Dynamic' rather than a hardcoded value.
- If using a custom theme, locate the schema template — typically in `app/design/frontend/<Vendor>/<theme>/Magento_Catalog/templates/product/structured-data/` or similar. Find the availability condition and ensure it calls `$product->isSalable()` (Magento 2) to output the correct schema.org URL.
- Clear full-page cache after changes: in the admin go to System → Cache Management → Flush Magento Cache.
- Run a crawl or spot-check with Google's Rich Results Test on several out-of-stock product URLs to verify `OutOfStock` is now output.
What is lifecycle oos schema not updated?
Every product page on your store can include hidden structured data (called "Product schema" or "JSON-LD") that tells Google key facts about your item — its price, currency, and whether it is in stock. One field in that data, `offers.availability`, uses a standard vocabulary to signal stock status: `https://schema.org/InStock`, `https://schema.org/OutOfStock`, or `https://schema.org/PreOrder`. When a product sells out but this field is never updated, the schema keeps saying "InStock" even though the real page says "Sold Out." Google sees the contradiction and flags it as misleading data.
Google uses Product schema to power free Shopping listings and rich results. If Google detects that your structured data claims a product is "InStock" when it is actually sold out, it will disapprove those listings — meaning you lose free traffic from Google Shopping for every affected product. Repeated or widespread mismatches can also reduce Google's overall trust in your site's structured data, dragging down the rich-result eligibility of products that genuinely are in stock. Fixing stale availability data keeps your Shopping listings live, protects your click-through rates, and ensures customers who land on a product page aren't misled — reducing bounce rate and potential complaints.
See the complete Lifecycle oos schema not updated guide for every platform and the full background.
Not sure if your Adobe Commerce (Magento) store has this?
Run a free SEOLZ scan — we’ll find lifecycle oos schema not updated and every other issue across your whole site.
Scan my site free