Google has updated the product rich results support page to add details around how these rich results can be used for product variants where each product variant has a distinct URL.
The old page wrote:
Use markup for a specific product, not a category or list of products. For example, "shoes in our shop" is not a specific product. Currently, product rich results only support pages that focus on a single product. We recommend focusing on adding markup to product pages instead of pages that list products or a category of products.
And now the new page writes:
Use markup for a specific product, not a category or list of products. For example, "shoes in our shop" is not a specific product. Currently, product rich results only support pages that focus on a single product. This includes product variants where each product variant has a distinct URL. We recommend focusing on adding markup to product pages instead of pages that list products or a category of products.
The new line Google added specifically was "This includes product variants where each product variant has a distinct URL."
That documentation then digs deeper and says:
A common consideration on ecommerce sites is how to structure URLs when a product is available in multiple sizes or colors. Each combination of product attributes is referred to as a product variant. Google supports a wide range of URL structures for product variants.
If you choose to include multiple product variants on a single page (meaning, the variants share the same URL), be aware of the following limitations:
- The page may be ineligible for Product rich results in search results because the experience is only supported for pages holding a single product (and product variants may be treated as distinct products by Google Search).
- Experiences such as Google Shopping cannot take a user to a specific variant of a product on your site, leading to the user needing to select the variant they wish to purchase on your site before checkout. This can lead to a poor user experience if the shopper already selected the variant they wanted in Google Shopping.
- A path segment, such as /t-shirt/green
- A query parameter, such as /t-shirt?color=green
If you use optional query parameters to identify variants, use the URL with the query parameter omitted as the canonical URL. This can help Google better understand the relationship between product variants. For example, if the default value of the color query parameter for a T-shirt is blue, then
- Use /t-shirt as the canonical URL for all T-shirt variants
- For a blue shirt, use /t-shirt (and not /t-shirt?color=blue)
- For a green shirt, use /t-shirt?color=green
Forum discussion at Twitter.