“Invalid value [availability]”, called “Invalid product availability” on Google’s help page, means Google could not recognise the value in the availability attribute, and the product may be disapproved. Replace the value in your export with in_stock, out_of_stock, preorder or backorder, and make sure it matches what the product page shows.
| Shown in Merchant Center as | Invalid value [availability] |
|---|---|
| Attribute | availability |
| Effect | Product disapproved — Google’s page on product data quality disapprovals says a product whose data does not comply with the specification “may be disapproved” |
| Where to find it | Products → Needs attention, then filter by this issue |
| Free check | Reported by the free feed check |
What Merchant Center means by “Invalid value [availability]”
availability is required and takes one of a fixed set of values. Google’s availability specification lists them: in_stock, out_of_stock, preorder and backorder (plus build_to_order for vehicle ads only). Google’s product issues reference lists “Invalid value [availability]” as invalid_enum_value, with the detail “Use an accepted value”. Google’s help page for the issue, titled “How to fix: Invalid product availability”, says the value could not be recognised and gives an example: “in_stock” or “out_of_stock” can be submitted, “pending” cannot. The values under “Why it happens” are not on Google’s list either; the only value the help page says cannot be submitted is “pending”. A product whose data does not comply with the specification may be disapproved.
The specification gives no default value for availability; a product with no value is a different issue, Missing value [availability]. The value also has to match what your product page shows; a difference can be reported as Mismatched value (page crawl) [availability].
Why it happens
- Translated words.
disponibil,auf Lager,skladem,dostępny: the store’s language written into the feed. Google’s page on attribute values says supported values must be submitted in English, regardless of the target country or the language of the feed. - Booleans and counts.
yes,true,1, or the stock quantity itself (37). - Store vocabularies.
available,limited,low stock,sold out,discontinued,coming soon. - Other spellings.
instock,in-stock; Google’s specification listsin_stock. - One file for several channels. Meta and Microsoft document the spaced forms (“in stock”); Google’s specification lists the underscore forms; it does not say how a spaced form is reported. Heureka’s and Compari’s formats give a delivery time (on Compari, also NO for a product that cannot be ordered); moved under availability in Google’s format, that value is not one of Google’s four.
How to fix it
In Shopify
Our integration derives availability from inventory quantity and the “continue selling when out of stock” setting on every variant, and our Google feed sends it as in_stock or out_of_stock, unless a feed rule or the corrections sheet sets another of Google’s four values. A variant at zero stock with that setting on goes out as in_stock, not backorder. If you see this error on a Shopify store’s feed built by another tool, check whether that tool maps a custom field or a tag to availability. If it does, remove that mapping and derive the value from inventory.
In WooCommerce
WooCommerce’s stock status is instock, outofstock or onbackorder internally, none of which is a Google value as-is. A feed plugin has to translate; our free connector maps them to in_stock, out_of_stock and backorder, per variation, and sends backorder without availability_date. If you export with a generic tool that copies this field unchanged, add the same mapping or the raw status goes into the feed.
In a CSV or XML feed
Replace every value in the availability column with one of the four. Use a mapping table: any “available”, “yes”, “limited” or stock count above zero becomes in_stock; “sold out”, “no” or zero becomes out_of_stock; “coming soon”, for a new product you already take orders for, becomes preorder; a product out of stock that you still take orders for becomes backorder. preorder and backorder also need an availability_date. Remove a product you no longer sell from the feed. Trim whitespace and use lower case.
How long until Merchant Center clears it
Google’s help page for the issue, titled “How to fix: Invalid product availability”, says that after the requested changes are made, they may take 24–72 hours to show on the Needs attention page.
What FeedRobin does about it
In a feed file, the free feed check reads the first value under availability, stock_status, in_stock or stock, in that order. It ignores upper and lower case and the spaces around a value. In the products it reads, it reports as critical every value that is not one of Google’s four, except in stock, out of stock, available for order and discontinued, which it reports separately, as a warning. The fix preview shows examples of the translation we would apply, before and after, for the words we know (schema.org names such as InStock and SoldOut, the values yes, no, true and false, and stock words in English, Romanian, Hungarian, Czech, Slovak, Polish and German) and for a number on its own, read as a stock quantity: above zero is in stock, zero or below out of stock. Unless a feed rule or the corrections sheet changes the value, the Google feed FeedRobin builds from the file sends the same values. The fix preview shows a value we do not know, including limited, low stock, coming soon, available for order and discontinued, as out_of_stock, and that feed sends it as out_of_stock. Our Google and Custom XML feeds send backorder and preorder without availability_date, also when the file has it. In Merchant Center, a supplemental data source with the id from our feed and availability_date can add it; the supplemental sources tab needs the Advanced data source management add-on.
Questions merchants ask
Is “in stock” with a space valid?
Google’s specification lists in_stock, with the underscore. Meta and Microsoft document the spaced form. Use the underscore form for Google and let each channel have the spelling it documents.
Is “available” a valid value?
It is not on the list. Google’s specification lists in_stock, out_of_stock, preorder and backorder, and Google’s help page for the issue says each value must be valid and recognizable. Translations, “yes”, “true”, “1”, “limited” and “sold out” are not on the list either.
What if I have more stock states than four?
Map them. Low stock is in_stock; sold out is out_of_stock; coming soon, for a new product you already take orders for, is preorder; out of stock but still taking orders is backorder. Preorder and backorder also need an availability_date. Remove a product you no longer sell from the feed. Your store keeps its own vocabulary; the feed you send to Google uses Google’s.
Sources
- Availability [availability] — Google Merchant Center Help
- How to fix: Invalid product availability — Google Merchant Center Help
- Availability date [availability_date] — Google Merchant Center Help
- Submit attributes and attribute values — Google Merchant Center Help
- Product issues (Content API for Shopping, sunset on 18 August 2026): common item-level issue codes with their description and detail
- Fixing Merchant Center disapprovals for product data quality violations — Google Merchant Center Help
- Product data specification — Google Merchant Center Help
- Create a product data source — Google Merchant Center Help
- Product data specifications for catalogs in Commerce Manager — Meta Business Help Center
- What Google feed file attributes can I use? (Microsoft)
- WooCommerce REST API Documentation
- Heureka Offer Feed XML Documentation — Heureka
- Informaţii privind formatul fişierului cu datele produselor (the product data file format) — Compari.ro