I'm using the following JSON to produce a review snippet:
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Review",
"name": "Great service from the start.",
"author": {
"@type": "Person",
"name": "Chris Tonich"
},
"reviewBody": "Very thorough...would highly recommend!",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.9",
"bestRating": "5",
"ratingCount": "110",
"itemReviewed": {
"@type": "Product",
"image": "https://www.homeintegrity.com.au/wp-content/uploads/2020/12/hi-new-logo2.jpg",
"name": "Pre-Purchase Building Inspections",
"priceRange": "$$",
"telephone": "08 8375 8130",
"address" :{
"@type": "PostalAddress",
"streetAddress": "PO Box 163",
"addressLocality": "Scarborough",
"addressRegion": "WA",
"postalCode": "6019",
"addressCountry": "AU"
}
}
}
}
</script>
The Google Rich Snippet Test says:
Why am I receiving the error when the Review
contains aggregateRating
which contains itemReviewed
?
Why does it say I rated a Review
rather than an Item
?
Help appreciated.
Your structure is not according to the schema found on https://schema.org/
A
Review
must contain a fielditemReviewed
(or be embedded in the object, which is reviewed). (see examples at https://schema.org/Review)A
Review
on the other hand must not contain anAggregateRating
(see https://schema.org/AggregateRating), because anAggreateRating
may only be a sub-node of aBrand
,CreativeWork
,Event
,Offer
,Organization
,Place
,Product
, orService
. Note that these types may contain aReview
too.Your structure roughly is as follows:
What you probably want is something along the lines of: