BookStore
BookStore is a direct Store subtype for bookshops: indie booksellers, chain bookstores, used-book shops, academic bookstores. It adds no properties of its own. For events (readings, signings), use the inherited event property pointing to LiteraryEvent.
Full example of schema.org/BookStore json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BookStore",
"name": "Riverfront Books",
"description": "Independent bookshop in Dunmore with deep technical, academic, and contemporary fiction sections. Hosts weekly reading events.",
"address": { "@type": "PostalAddress", "streetAddress": "14 Riverfront Pl, Suite G2", "addressLocality": "Dunmore", "addressRegion": "PA", "postalCode": "18512", "addressCountry": "US" },
"telephone": "+1-570-555-0321",
"openingHours": "Mo-Sa 10:00-20:00, Su 12:00-17:00",
"priceRange": "$$",
"url": "https://xoocode.com/shops/riverfront-books"
}
</script>Minimal valid version
The smallest markup that still produces a valid BookStore entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BookStore",
"name": "Riverfront Books",
"address": { "@type": "PostalAddress", "streetAddress": "14 Riverfront Pl", "addressLocality": "Dunmore", "addressRegion": "PA", "postalCode": "18512", "addressCountry": "US" }
}
</script>Google rich results this unlocks
BookStore is a structural type. It does not produce a rich result on its own.
Its value comes from combining it with a primary type whose markup earns a rich result (Article, Product, Event, and so on). BookStore becomes the trunk that the primary type branches off viamainEntityorbreadcrumb. Include it on every page as the backbone of your markup.
Common BookStore mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
Listing individual books on the BookStore entity
WrongCrowding Book entries into BookStore itselfRightUse separate Book entities with offers pointing to the storeInventory belongs in Product/Book entries with their own URLs. Cramming a catalog into a single BookStore JSON-LD makes the store entry unusable.
Schema properties in this example
About the example data
"Riverfront Books", a fictional independent bookshop in Dunmore with a strong technical/structured-data section.
Comments
Loading comments...