ProductGroup Schema Generator
Generate ProductGroup JSON-LD for products with options: productGroupID, variesBy, and a hasVariant array of Product entries with SKU, price and availability.
ProductGroup JSON-LD
A variant row is written out once it has a SKU or a name. Give every variant a distinct SKU and its own price and availability — that is the whole point of ProductGroup, and Google needs it to show the right option in a shopping result.
What is the ProductGroup Schema Generator?
The ProductGroup Schema Generator builds the markup search engines expect when one product page sells several variants — a sweater in five colours and six sizes, a phone in three storage tiers.
- variesBy written as schema.org property IRIs, as the documentation specifies
- Variant inputs appear only for the properties you tick
- Every variant repeats the group ID as inProductGroupWithID
- Per-variant Offer with price, currency, availability and URL
- Add and remove as many variant rows as you need
- Copy as a script block or download the JSON file
How to use the ProductGroup Schema Generator
- 1
Enter the group name, page URL, brand and your parent SKU as the product group ID.
- 2
Tick which properties vary between the options and choose the shared currency and availability.
- 3
Fill in each variant row with its SKU, name, varying values, price and page URL.
- 4
Use Add variant for every option you sell, and Remove to drop a row you do not need.
- 5
Copy the generated script tag into the product page, or download the raw JSON.
About the ProductGroup Schema Generator
The ProductGroup Schema Generator builds the markup search engines expect when one product page sells several variants — a sweater in five colours and six sizes, a phone in three storage tiers. Instead of one flat Product, you get a ProductGroup with a hasVariant array, each variant carrying its own SKU, varying properties and Offer.
You tick which properties vary — colour, size, material or pattern — and the tool writes them into variesBy as schema.org property IRIs while showing an input for exactly those properties on every variant row. Each variant also repeats the parent's productGroupID as inProductGroupWithID, which is how search engines link variants back to the group.
Everything is generated in your browser and nothing is uploaded. Add and remove variant rows freely; a row is only written into the output once it has a SKU or a name, so half-finished rows never pollute your markup.
Frequently asked questions
When should I use ProductGroup instead of Product?
Use ProductGroup when a single page sells one product in several variations that differ in price, availability or SKU. If there is only one buyable item, plain Product markup is correct and simpler.
What does variesBy do?
variesBy names the properties that actually differ between the variants, such as colour and size. It tells search engines which attributes to offer as choices, and each variant then repeats those same properties with its own values.
What should productGroupID be?
Your own parent or style code that identifies the whole family of variants, distinct from each variant's SKU. Keep it stable over time, because it is what links the variants together across pages and feeds.
Do variants need their own URLs?
Not necessarily, but they help. If each option has a distinct URL, add it to the variant row so search engines can send shoppers straight to the right colour or size rather than the generic page.
Can variants have different prices?
Yes, and that is one of the main reasons to use ProductGroup. Every variant gets its own Offer, so a large size costing more than a small one is described accurately instead of being flattened into a single misleading price.
Related tools
Product Schema Generator
Free product schema generator: build Product JSON-LD with brand, SKU, price, currency and availability, plus optional ratings for rich snippets with stars.
Restaurant Menu Schema Generator
Build nested Menu, MenuSection and MenuItem JSON-LD with prices, RestrictedDiet values and calories, ready to attach to a restaurant's hasMenu.
Vehicle Schema Generator
Build Car or Vehicle JSON-LD for dealer listings with VIN, odometer QuantitativeValue, fuel type, transmission, body type, doors and a seller offer.
JSON-LD Generator
Generate Schema.org JSON-LD structured data for WebSite, WebPage, LocalBusiness, Person, Event and Recipe types with a simple guided form.
Organization Schema Generator
Free organization schema generator: build valid Organization JSON-LD with name, logo, URL, social profiles (sameAs) and a contact point for your brand.