Review Content in Rich Snippets and Microformats

by Aaron Bradley on May 21, 2009

in Search Engines, Semantic Web

I've been looking for sites that either support the reviews microformats recently specified by Google, sites that support the existing hReview microformat, or simply snippets that show ratings information in Google SERPs. I finally encountered a snippet by Googling earrings plaza, and here are the results.

Earrings Plaza Google Result
And here are the components of the snippet.

Main Review Data in Snippet

Are any of these components using either review microformat? Actually, in part they are.

<div class="hReview-aggregate">
<div class="item vcard">
[. . .]
<h1 class="fn org">Earrings Plaza</h1>
<div id="bizRating">
<div class="rating"><img class="stars_4_half rating average" width="83" height="325" title="4.5 star rating" alt="4.5 star rating" src="[URL]"/></div>
<em>based on <span class="count">7</span> reviews</em>

The code in bold is microformat syntax. At first I thought Google was doing a bit of processing here in returning the description portion of the snippet, as "7 reviews for Earrings Plaza" on the page is different from the "7 reviews of Earrings Plaza" that appears in the snippet. However, it's almost certainly a case of the <meta> description being returned.

<meta name="description" content="7 Reviews of Earrings Plaza "This is one of the best kept secret of NY!!! It looks like a whole sale place, but they actually sell retail too!! Great variety of accessories ranging from earrings, necklaces, bangles, belts, rings, brooches, [. . .]">

So the rating is being pulled from the "rating" class, and the count is being pulled from the "count" class. The only thing that's baffling me a bit is the snippet-returned "Price range" attribution, since the code doesn't appear to accord with any any known microformat:

<li><strong>Price Range:</strong> <span class="pricerange">
<a id="price_tip" title="Price range [. . .]">$</a></span></li>

However, I'm no microformats expert, so this may be some sort of allowable expression based on nesting of the appropriate elements (I haven't tried to collapse the complex block elements) – if I have a eureka moment here I'll let you know.

Yes, this is Yelp, which – as a known review site – may be something that Google has learned to parse and interpret independently of whether or not, or how well, Yelp supports microformats. However, all things being equal, the promotion of the review ratings and total review count to the snippet can plausibly be attributed to the support for these attributes in the code.

The takeaway? Where you want review data to appear in snippets, it is at least worth marking up the core review fields in accordance with one of the review microformat standards with one or another standard, namely:

  • Encapsulate the review data in a supported microformats block.
  • Be sure to mark up your average rating ("rating") and review count ("count") correctly.

Are these necessary and sufficient conditions for review content in rich snippets, regardless of whether the rest of the review is marked up using microformats. I suspect so, but I'll do more digging and experimentation to see if this more definitely appears to be the case.

1 Andy Mabbett May 23, 2009 at 12:34 pm

The price rage isn’t pulled from any existing microformat.

Previous post:

Next post: