Product schema generator, valid JSON-LD output
Price, availability and rating, in the format Google reads
Required fields still empty: Product name, Price
Markup to paste into your page
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product"
}
</script>Everything is computed in your browser. Nothing is stored.
The price and availability shown under a search result come from Product markup, not from the page as a human reads it. Without it, your listing appears like any other blue link, next to competitors showing their price and their stock. The block is short, and its only trap is the offer: with no price and no currency, nothing happens.
How to use it
How it works
Describe the product
Name, brand, SKU and image. Only the name is essential, the rest enriches the display.
Fill in the offer
Price, currency and availability. That trio conditions everything: without it, no enriched display at all.
Add the rating if it is shown
Average rating and review count, but only if they genuinely appear on the page.
Worth knowing
Four things to keep in mind
A rating must be visible on the page
Declaring an AggregateRating that appears nowhere is an explicit breach of Google policy, punished with a manual action. Markup describes the page, it does not invent it.
Rating and review count go together
One without the other makes the block ineligible. If you have no reviews yet, leave both fields empty rather than filling one.
Availability must follow the stock
A product announced in stock and missing on arrival disappoints the visitor and eventually costs you the feature. This field is maintained, not set once.
Price is declared without a symbol
The value is a number, the currency a separate three-letter field. Writing "£29.90" in the price field produces markup that nothing reads.
FAQ
Frequently asked questions
It becomes eligible, which is not a guarantee. Google shows a rich result when it judges it useful for the query, and arbitrates case by case. Correct markup is the condition, not the promise.
If each variant has its own page, yes, each carries its own. On a single page presenting several sizes or colours, you declare a range with an AggregateOffer rather than one offer per variant.
Your internal reference in sku, and the barcode in gtin if there is one. The second helps Google match your listing to the same product sold elsewhere, which is rather in your favour.
Product does not fit. A service is described with the Service type, and a local trade is better served by LocalBusiness markup, which has its own generator here.
Also
Other tools in the same family
Also
What Lokvi does for you
Now imagine all of it running without you
Review collection, replies, posts and loyalty, on your Google Business listing, automatically.
No credit card required: create your account and explore your real data.
14 days free, then 29 €/month, no commitment.