- Home
- Free tools
- Product Schema Generator
Free tool · No signup
Product Schema Generator
Build valid Product JSON-LD with the price, availability and review data Google needs for a product rich result.
Comma-separated.
Product JSON-LD
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Alto Merino Crew Jumper",
"description": "Mid-weight 100% merino crew-neck jumper, machine washable, knitted in Portugal.",
"image": [
"https://altoknit.example.com/img/crew-charcoal.jpg"
],
"sku": "ALT-CRW-CHR-M",
"brand": {
"@type": "Brand",
"name": "Alto Knitwear"
},
"offers": {
"@type": "Offer",
"url": "https://altoknit.example.com/products/merino-crew",
"price": "129",
"priceCurrency": "GBP",
"availability": "https://schema.org/InStock",
"priceValidUntil": "2026-12-31"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 4.6,
"reviewCount": 218
}
}
</script>Paste this block into the <head> or anywhere in the <body> of the page it describes, then confirm it parses with the JSON-LD schema validator.
In short
A product schema generator builds Product JSON-LD, which requires a name and image plus a nested offers object containing price, priceCurrency and availability drawn from schema.org's fixed list such as InStock or OutOfStock. Adding an aggregateRating with ratingValue and reviewCount makes the listing eligible for star ratings and price in Google's product rich results and Merchant listing experience, though Google also requires the data to match what a shopper actually sees on the page.
Worked example
What the output looks like
- Input
- Trailhead 35L Hiking Backpack, $89.99 USD, in stock, 4.6 stars from 212 reviews
- Output
- { "@context": "https://schema.org", "@type": "Product", "name": "Trailhead 35L Hiking Backpack", "image": "https://example.com/images/trailhead-35l.jpg", "description": "A 35-litre hiking backpack with adjustable torso fit and rain cover.", "offers": { "@type": "Offer", "priceCurrency": "USD", "price": "89.99", "availability": "https://schema.org/InStock", "url": "https://example.com/products/trailhead-35l" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.6", "reviewCount": "212" } }
- How to read it
- Availability uses the full schema.org URL form rather than the bare word InStock, which is the format Google's parser expects. Price is a plain decimal string, not a formatted currency string like $89.99, and priceCurrency carries the currency separately.
How it works
Enter the product name, image and description
Use the exact product title as displayed on the page and a direct image URL. Google crawls the image URL separately, so it must be publicly accessible and not behind a login.
Add price, currency and stock status
Enter the current price, an ISO 4217 currency code like USD, and pick availability from schema.org's fixed values (InStock, OutOfStock, PreOrder). These must match the live checkout state exactly.
Add aggregate rating if you display reviews
Only include aggregateRating if the page shows real customer reviews with a visible rating and count. Google removes rich results for ratings that can't be verified against on-page content.
What this tool does
- Generates Product JSON-LD with nested Offer and AggregateRating
- Validates required fields: name, image, offers.price, offers.availability
- Uses schema.org's controlled ItemAvailability and priceCurrency values
- Supports multiple offers for size or colour variants
Questions
Frequently asked
More free SEO tools
- Review Schema Generator/free-tools/review-schema-generator
- Breadcrumb Schema Generator/free-tools/breadcrumb-schema-generator
- JSON-LD Schema Validator/free-tools/schema-validator
Learn the concept
Monitor product rich result eligibility at scale
LemRank tracks rankings, backlinks, and AI-search visibility in one dashboard. 14-day free Pro trial. No credit card.