We've recently been trying to implement schema.org more fully on our e-commerce site (and gotten nothing but headaches). We often allow customers to place an online order for backordered products, especially if we know they'll be back in stock soon. To accommodate this we're using an availability of LimitedAvailability and the availabilityStarts property. Here's a sample from the site:

<div itemtype="http://schema.org/Offer" itemscope="" itemprop="offers">
    <p class="availability ">Availability: Backordered Until 07-07-2014</p>

    <link itemprop="availability" href="http://schema.org/LimitedAvailability">
    <meta content="2014-07-07T00:00:00+00:00" itemprop="availabilityStarts">

The problem is our Google Merchant Center is complaining of "Invalid microdata for availability information on product landing page" and flagging the LimitedAvailability value as invalid.

What are my alternatives short of just not using schema markup on these products? None of the other ItemAvailability values really fit the bill. Has anyone else dealt with this inconsistency?

  • LimitedAvailability is JSON only and not microdata and therefore cannot be used the same way. Admittedly, schema.org is a bit tricky to use. – closetnoc Jun 27 '14 at 18:54
  • @closetnoc I see that schema.org/LimitedAvailability shows only a JSON-LD example, and then only in connection to event tickets. I guess I figured that was just how they did the example and didn't reflect on the whole property. Is there a definitive way to tell what other properties aren't microdata? Also thanks for the answer. – tbernard Jun 27 '14 at 19:08
  • Strange that Merchant Center is throwing an error on markup that validates on their Structured Data Testing Tool: google.com/webmasters/tools/… – dartonw Jun 27 '14 at 19:12
  • Just one at a time. I know. It is a pain, but well worth the effort. Keep in mind, you can make stuff up too! schema.org/docs/extension.html My experience with this is somewhat limited, but experienced or not, I think we still go through the same exploration every time. The whole schema thing can be improved. For example, I really could use a negative (down) vote rating and all they have is an up-vote (aka stars). Frustrating. – closetnoc Jun 27 '14 at 19:14
  • I noticed that the Google Rich Snippets Tool did not barf on his example code. The tool does need work, but I would not have expected that. – closetnoc Jun 27 '14 at 19:16

In this case, LimitedAvailability is JSON only. I am not sure why exactly. It is easy to make mistakes when working with schema.org. The details that have to be maintained sometimes can get away from us and it is easy to miss something. What is funny is, that your example code comes up clear in the Google Rich Snippets Tool. I often warn people that while this tool is excellent, and I give credit to Google for it's excellent work on the tool, the subject matter is so detailed that sometimes errors escape the tool.

It appeared that you were following schema.org/ItemAvailability. You can try other options that seem to be near LimitedAvailability such as; Offer/availabilityStarts, Offer/validFrom, OutOfStock, InStock, or SoldOut which from your comments may not work out as well as availabilityStarts.

For some, they can use the schema.org extensions option. I will be doing this because what I want to mark up is not represented, but your fear is mine too- Google/Bing/Yahoo! may not use or understand extensions. There are a lot of people using extensions with no evidence that I have found of these extensions being picked up. I suspect that Google (at least) will begin to code an understanding of extensions soon. It was only recently that Google added compatibility for much of the schema.org entities/types and data elements so it may be too early to expect extensions to be recognized.

I am glad you found an answer for your issue! Again schema.org, as simple as it is, is rather difficult to use sometimes and can make anyone go cross-eyed. The best struggle with it sometimes. I encourage schema.org to extend the entities/types and elements to make the mark-up world more extensible out of the box. I also encourage someone to create an editor/tool that will make schema.org mark-up easier to use.


I'm not sure when this issue started for you, but my Merchant Center Account was throwing the same error for Limited Availability items also. It turns out that Google's updated their feed specification (see here) and are removing LimitedAvailability as an allowed value. I updated those items to be In Stock, and the warnings disappeared.

Another valid option, more appropriate for you in this case, is availability of Pre Order.

That said, I was under the impression that they weren't going to enforce the new feed spec until September, so it's a bit odd that it would throw an error.

  • Thanks for the answer. We've already adopted the new feed spec, but the issue is not with the feed, it's with the Schema.org markup on the product landing page. We can't use InStock because it's not. We can't use PreOrder or SoldOut as these would indicate the item is no longer available even though we're still taking orders. – tbernard Jun 30 '14 at 17:06
  • Ya, it's a sticky situation. The new spec says that "in stock" can be anything that will be delivered in a reasonable amount of time. That's pretty ambiguous, but we decided to InStock all our items that were not discontinued and available in at least one size/color variation. – nathangiesbrecht Jul 1 '14 at 2:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.