Resources / Structured data / Template
Offer and AggregateOffer JSON-LD Templates
Describe one set of transaction terms or summarize multiple offers for the same item without merging unrelated products.
Choose the correct offer type
Use Offer for one seller’s current terms for a product, service, ticket, or other item. Use AggregateOffer for a page that truthfully summarizes multiple offers for the same item. It is not a substitute for variant markup and must not combine unrelated products.
Offer template
{
"@context": "https://schema.org",
"@type": "Offer",
"@id": "https://www.example.com/products/example-product/#offer",
"url": "https://www.example.com/products/example-product/",
"priceCurrency": "USD",
"price": "49.00",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {
"@id": "https://www.example.com/#organization"
},
"itemOffered": {
"@id": "https://www.example.com/products/example-product/#product"
}
}
AggregateOffer template
{
"@context": "https://schema.org",
"@type": "AggregateOffer",
"@id": "https://www.example.com/products/example-product/#offers",
"url": "https://www.example.com/products/example-product/",
"priceCurrency": "USD",
"lowPrice": "39.00",
"highPrice": "59.00",
"offerCount": 4,
"availability": "https://schema.org/InStock",
"itemOffered": {
"@id": "https://www.example.com/products/example-product/#product"
}
}
Customize and validate
Use ISO 4217 currency codes and documented Schema.org enumeration URLs. Confirm that all represented offers concern the same item, that the range covers the visible offers, and that offerCount is current. The itemOffered node should identify the Product or represented variant. Then use the live-page JSON-LD validation tutorial, Schema.org Validator, and any feature-specific validator for the item being offered.
Official references
Completion check
- Match price, currency, availability, condition, and seller to visible terms.
- Use AggregateOffer only for multiple offers of the same item.
- Revalidate whenever transactional terms change.