Google has announced a new carousel rich search result that can be used for local businesses, products and events, displaying a scrolling horizontal carousel with all the items in the list. It is very flexible and can even be used to create a list of top things to do in a city combining hotels, restaurants and events. This new feature is in beta, meaning it is being tested.
The new Carousel Rich Result is designed to display lists in carousel format. According to the announcement, rich results are limited to the following types:
“LocalBusiness and its subtypes, for example:
– Restaurant
– Hotel
– Holiday rentalsproduct
Event”
An example of subtypes is Lodgings, a subset of LocalBusiness.
Here is the hierarchical structure from Schema.org showing the LodgingBusiness type as a subset of the LocalBusiness type.
- Thing > Organization > LocalBusiness > LodgingBusiness
- Thing > Place > LocalBusiness > LodgingBusiness
Structured ItemList data
The carousel displays “tiles” that contain information from the website about price, reviews, and images. The order of the data contained in the ItemList structured data corresponds to the order in which it appears in the carousel.
Publishers must use the ItemList structured data to be eligible for the new rich result
All information in the ItemList structured data must be present on the web page. As with any other structured data, you cannot clutter the structured data with information that is not visible on the web page itself.
When using this structured data, two important rules apply:
- The ItemList type must be the top-level container for the structured data.
- All URLs in the list must point to different websites on the same domain.
The part that the ItemList is the top-level container means that the structured data cannot be merged with other structured data where the top-level container is something other than ItemList.
For example, the structured data must begin like this:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1,
Mix and match
A useful feature of this new carousel rich result is that publishers can mix and match the different entities as long as they are of the appropriate structured data types.
Appropriate structured data types
- LocalBusiness and its subtypes
- product
- Event
Google’s announcement explains how to combine and customize the different structured data types:
“You can mix and match different types of units (e.g. hotels, restaurants) if required for your scenario. For example, if you have a page that lists both local events and local businesses.”
Here is an example of ListItem structured data that can be used on a webpage about things to do in Paris.
The following structured data relates to two events and one local business (the Eiffel Tower):
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@type": "Event", "name": "Paris Seine River Dinner Cruise", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "offers": { "@type": "Offer", "price": 45.00, "priceCurrency": "EUR" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.2, "reviewCount": 690 }, "url": "https://www.example.com/event-location1" } }, { "@type": "ListItem", "position": 2, "item": { "@type": "LocalBusiness", "name": "Notre-Dame Cathedral", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "priceRange": "$", "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.8, "reviewCount": 4220 }, "url": "https://www.example.com/localbusiness-location" } }, { "@type": "ListItem", "position": 3, "item": { "@type": "Event", "name": "Eiffel Tower With Host Summit Tour", "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ], "offers": { "@type": "Offer", "price": 59.00, "priceCurrency": "EUR" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.9, "reviewCount": 652 }, "url": "https://www.example.com/event-location2" } } ] } </script>
Be as specific as possible
Google’s guidelines recommend being as specific as possible. However, if there is no structured data type that exactly fits the type of business, it is fine to use the more general LocalBusiness structured data type.
“Depending on your scenario, you can choose the best type. For example, if you have a list of hotels and vacation rentals on your site, use both Hotel and VacationRental types. While it is ideal to use the type that is closest to your scenario, you can choose to use a more general type (e.g. LocalBusiness).”
Can be used for products
An extremely interesting use case for this structured data is displaying a product list in a carousel rich result.
The structured data for this starts as a structured data type “ItemList” as follows:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@type": "Product",
The structured data can list images, ratings, number of reviews, and currency like any other product listing, but doing it this way will make the site eligible for the carousel’s rich results.
Google has a list of recommended properties that can be used with the product version, such as: B. Offers, Offers.HighPrice and Offers.LowPrice.
Good for local businesses and traders
This new structured data is a great opportunity for local businesses and publishers that list events, restaurants and accommodations to participate in a new type of rich search results.
Using this structured data does not guarantee that it will appear as a rich result, it simply makes it suitable for doing so.
This new feature is in beta, which means it is a test.
Read the new developer page for this new rich result type:
Structured Data Carousels (Beta)
Featured image by Shutterstock/RYO Alexandre