Generate valid Product JSON-LD structured data for your store, with offers, price, availability, and ratings. Fill in your details and copy the markup. Free, no sign-up required.
The exact product name as it appears on the page. Required.
The canonical URL of the product page. Used as the top-level URL and inside the offer.
Your internal stock-keeping unit for this product.
The brand this product belongs to. Adds a Brand object.
The number only, no currency symbol.
The 3-letter ISO code, such as USD, EUR, or GBP.
Enter your product name and product page URL above and your JSON-LD will build here automatically.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"offers": {
"@type": "Offer",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
</script><head> section of the product page (or your product template).Structured data tells search engines what your product is. These free widgets make the page better for shoppers.
Lay out specs, prices, and features side by side so shoppers can compare products at a glance. A clear on-page comparison backs up the data in your schema.
Show real customer quotes right on the product page. Genuine social proof supports the same trust signals your review markup sends.
Display every product angle in a swipeable gallery. Rich visuals give shoppers the detail your schema image field points to.
Add urgency to a sale or launch with a live countdown. It nudges shoppers to act on the offer your markup describes.
Other free tools to help you optimize and grow.
Generate Organization, WebSite, and LocalBusiness JSON-LD structured data for your whole site.
Use Tool →Generate Article, BlogPosting, and NewsArticle JSON-LD structured data for your posts.
Use Tool →Generate valid FAQ Page JSON-LD structured data to earn FAQ rich results.
Use Tool →Generate title, description, and social meta tags for any page in seconds.
Use Tool →Create Open Graph and Twitter Card tags so your links look great when shared.
Use Tool →How It Works
No account needed, no sign-up, completely free. Fill in your product details, and valid JSON-LD structured data builds live, ready to copy into your page.
Add the product name, page URL, description, and a high-resolution image. Include the SKU and brand if you have them. The product name is the one field you must fill in.
Turn on the offer to set price, currency, and stock status, and add a price-valid-until date if you run promotions. Add an aggregate rating only when real reviews are shown on the page. Everything you type builds the markup live, with no empty fields left in.
Copy the generated JSON-LD, paste it into the head of your product page, and confirm it with the Google Rich Results Test. No sign-up, completely free.
The Basics
Search engines read your product pages, but structured data tells them exactly what they are looking at: the product name, its price, whether it is in stock, and how it is rated.
The idea
Your product details → schema.org vocabulary → JSON-LD in your <head>
Result: search engines understand your product as data, not just text
Product schema is structured data that describes a single item for sale using the shared schema.org vocabulary. Instead of hoping Google infers the name, price, and stock status from your HTML, you state them explicitly in a format built for machines to read.
The recommended format is JSON-LD: a small block of JSON placed in the head of the page. It lives separately from your visible content, so it is easy to add without touching your design. This generator builds the Product type with a nested Offer for price and availability, a Brand, and an optional AggregateRating for reviews.
Structured data does not guarantee rankings or rich results, but it makes your product unambiguous to search engines and to the AI assistants that increasingly help people shop. Clear data means your listing is easier to represent, and cite, correctly.
Product Fields
The Product type and the properties that matter most. Here is what each one does and when to use it.
| Field | What it does | When to use | Role |
|---|---|---|---|
| name | The product name, exactly as it appears on the page. The one required field. | Every product you mark up. | Required |
| offers | An Offer with price, currency, and availability. Powers price and stock status in search. | Any product a shopper can buy. | Recommended |
| image | One or more high-resolution product images that Google can show alongside the listing. | Every product page. | Recommended |
| aggregateRating | A rating score and review count summarizing real reviews shown on the page. | Products with genuine on-page reviews only. | Optional |
| brand | The brand the product belongs to, added as a Brand object. | Branded products. | Optional |
Based on the schema.org Product type and Google Search structured data guidelines, 2026.
What It Can Unlock
Structured data makes your products eligible for search features and helps machines understand your listing. Eligibility is never guaranteed, but the groundwork matters.
A valid Offer lets Google show your price directly in the listing, so shoppers see it before they click.
Stock status in your markup can surface an in-stock or out-of-stock label, setting expectations before the click.
An aggregate rating from real reviews can earn review stars in the listing, which help your result stand out.
Complete product data with offers and availability supports eligibility for Google merchant listing experiences.
A high-resolution image in your markup gives Google a clear candidate to show alongside your product.
Structured product data makes your listing easier for AI answer engines to read, compare, and cite accurately.
Avoid These
Structured data helps only when it is accurate and valid. Steer clear of these common errors, and never fake ratings or prices.
The product name in your schema must match the visible product name on the page. A mismatched or keyword-stuffed name violates Google guidelines.
Match the visible nameNever invent a rating or review count, and never show ratings that are not visible on the page. Fake review markup can trigger a manual action.
Never fake ratingsThe price in your schema must match the price on the page and stay current. A mismatched or outdated price can get your markup ignored.
Keep the price accurateLeaving out availability, or listing the wrong status, means shoppers can see stock information that does not reflect reality.
Set honest availabilityGoogle recommends high-resolution images. A tiny image, or none at all, weakens your eligibility for rich results.
Use images 1200px+ wideAlways run your markup through the Rich Results Test and Schema.org Validator. A single syntax slip can invalidate the whole block.
Validate before you shipGet More From It
Practical ways to make your schema work harder. All CommonNinja widgets mentioned are free to start.
Product schema belongs in the head of the individual product page, not your homepage. Add it to your product template so every product gets it automatically.
Product markup describes one item. Your Organization and WebSite schema describes the whole store. Use both. Our free Website Schema Generator builds the site-wide part.
Try the Website Schema Generator →When you change a price or sell out, update the markup too. Prices and availability in your schema must match what shoppers see on the page.
Only add an aggregate rating when real reviews are visible on the product page. Testimonials on the page back up the rating your schema reports.
Try the Testimonials widget →When you run a promotion, set priceValidUntil so search engines know when the sale price expires. It keeps your offer honest and current.
Re-run the Rich Results Test whenever you edit your markup or redesign the product template. It catches errors before Google does.
Glossary
A quick reference for the properties behind product markup.
| Field | Definition | Example | When It Matters |
|---|---|---|---|
| name | The product name. It must match the visible name on the page and is the one required Product field. | Executive Office Chair | Every product you mark up |
| offers | An Offer object holding price, priceCurrency, and availability. Powers the price and stock shown in search. | Offer + price | Any shoppable product |
| availability | The stock status, as a schema.org URL such as InStock or OutOfStock. Tells shoppers whether they can buy now. | schema.org/InStock | Every offer |
| aggregateRating | A summary of real reviews shown on the page, with a ratingValue and reviewCount. Never invent these numbers. | 4.6 from 128 | Products with on-page reviews |
| brand | The brand the product belongs to, added as a Brand object with a name. | Brand + name | Branded products |
From the Blog
Go deeper on product SEO and making your store easier for search engines to understand.
In this article, we are going to discuss SEO, explain why it’s important to the success of a website, and suggest ways t...
Read article →In this article, we will look at some important SEO factors to consider when building a website, for the purpose of incr...
Read article →This article delves into the pivotal role of product pages in e-commerce, emphasizing their impact on user experience a...
Read article →In this article, we discuss the importance of readability in SEO, highlighting its impact on search engine rankings, use...
Read article →In this article, we explore how SEO enhances Instagram visibility, focusing on optimizing profiles with keywords, strate...
Read article →In this article, we discuss image compression's benefits for web performance and SEO, highlighting faster load times and...
Read article →