Short answer. availability tells Google whether the product can be bought now: in_stock, out_of_stock, preorder or backorder (build_to_order exists for vehicle ads only), spelt as Google’s specification spells them. It is required, it must match the availability on the landing page and at checkout, and Google reads any other word as invalid rather than guessing.
| Attribute | availability |
|---|---|
| Requirement | Required for each product. |
| Format |
|
Accepted values
in_stock | Can be bought and shipped now. |
out_of_stock | Not available; ads pause, listing may remain. |
preorder | Not released yet; pair with availability_date. |
backorder | Temporarily out, but orderable. |
Google’s rules for availability
- Match the availability on your landing page and checkout pages.
- Update the feed when stock changes; a stale value becomes a page-crawl mismatch.
- Do not submit translations, yes/no, quantities or store vocabulary.
Common mistakes, and the error each one becomes
- “available”, “yes”, a stock count or a translated word. → Invalid value [availability]
- The field left out entirely. → Missing value [availability]
- A feed built yesterday for a product that sold out today. → Mismatched value (page crawl) [availability]
Where the value comes from on a connected store
| Shopify | Derived from the variant’s inventory quantity and its continue-selling setting, updated on every inventory change. |
|---|---|
| WooCommerce | Mapped from the variation’s stock status (in stock, out of stock, on backorder) at the moment the feed is fetched. |
The free feed check reads this attribute from any feed file and reports the defects above; every check is listed.
Questions merchants ask
Is “in stock” with a space accepted?
Google reads it, and Meta and Microsoft document it; Google’s own specification lists in_stock. Use the underscore form for Google and let each channel have the spelling it documents.
What if I have more stock states than four?
Map them: low stock is in_stock; discontinued and sold out are out_of_stock; coming soon with a date is preorder; orderable but not in stock is backorder.
Does out_of_stock remove the product?
It stops ads for it; the product stays in the account and returns to ads when the feed says in_stock again.
Sources
- Availability [availability] — Google Merchant Center Help
- Product data specification — Google Merchant Center Help