reviewBody
reviewBody · Optional
Appears in
What is it?
The full text content of a review. reviewBody holds the actual written opinion: the sentences where the reviewer explains what they liked, disliked, and experienced. While reviewRating gives the numeric score, reviewBody provides the qualitative detail behind that number.
Why this matters for AEO
AI answer engines mine review text to answer specific questions. When a user asks "is Legal Seafood good for families?", the AI scans reviewBody content for mentions of family dining, kids menus, and atmosphere. Structured review text in reviewBody is easier for AI to parse than scraping unstructured page content, making the review more likely to surface in conversational answers.
What the specs say
Schema.org: Text. The actual body of the review. schema.org/reviewBody
Google: Not mentioned. Field not listed in Google's structured data documentation for Review. Google Review Snippet docs
How to find your value
- Review form — The text area where users write their review
- CMS collection — The rich text or plain text field storing review content
- Third party reviews — The review text from Google, Yelp, or Trustpilot
- Testimonial section — Customer quote blocks on the page
Format and code
The value is plain text. Avoid HTML markup inside reviewBody.
{
"@context": "https://schema.org",
"@type": "Review",
"itemReviewed": {
"@type": "Restaurant",
"name": "Legal Seafood"
},
"reviewBody": "The clam chowder was outstanding and the service was fast. We sat at a table by the window overlooking the harbor. Great spot for a business lunch.",
"reviewRating": {
"@type": "Rating",
"ratingValue": 4,
"bestRating": 5
},
"author": {
"@type": "Person",
"name": "Bob Smith"
}
}
Webflow implementation
Static pages
Add the review text inside reviewBody in the JSON-LD block in Page Settings > Custom Code:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Review",
"itemReviewed": {"@type": "Product", "name": "Widget Pro"},
"reviewBody": "Solid build quality and fast shipping. The widget does exactly what the description says.",
"reviewRating": {"@type": "Rating", "ratingValue": 5, "bestRating": 5},
"author": {"@type": "Person", "name": "Jane Doe"}
}
</script>
CMS template pages
Map a plain text or rich text CMS field to reviewBody in the JSON-LD embed. If using rich text, strip HTML tags before inserting into the JSON value. Webflow's plain text fields work cleanly without extra processing.
In Schema HQ
Field mapping pulls review text CMS field to reviewBody automatically, handling any special character escaping required for valid JSON-LD.
Real examples
Schema.org (restaurant review):
{
"@context": "https://schema.org/",
"@type": "Review",
"reviewBody": "The restaurant has great ambiance.",
"itemReviewed": {
"@type": "Restaurant",
"name": "Fine Dining Establishment"
},
"reviewRating": {
"@type": "Rating",
"ratingValue": 5,
"worstRating": 1,
"bestRating": 5
}
}
Schema.org (product review):
{
"@type": "Review",
"author": "Ellie",
"datePublished": "2011-04-01",
"reviewBody": "The lamp burned out and now I have to replace it.",
"name": "Not a happy camper",
"reviewRating": {
"@type": "Rating",
"bestRating": "5",
"ratingValue": "1",
"worstRating": "1"
}
}
Related fields
FAQ
Is reviewBody required for review snippets?
No. Google does not list reviewBody as required or recommended for review snippet rich results. The required fields are itemReviewed and reviewRating. However, including the review text adds context for both users and AI engines.
Can reviewBody contain HTML?
Schema.org defines it as Text, so plain text is expected. While some validators accept HTML strings, best practice is to use clean text without markup. Put formatted content in the visible page body.
How long should reviewBody be?
There is no schema.org length limit. Use the full review text. Short testimonials ("Great product!") and detailed multi paragraph reviews are both valid. Longer, specific reviews tend to perform better for AI answer extraction.