WarrantyPromise
WarrantyPromise is a StructuredValue for the warranty attached to an Offer, Product, or Vehicle. It carries exactly 2 direct properties:
durationOfWarranty: a QuantitativeValue withvalueandunitCode. Common unit codes areANN(year),MON(month),DAY(day).warrantyScope: aWarrantyScopeenumeration value from the GoodRelations vocabulary:Labor-BringIn: labour-only, customer brings the product in.PartsAndLabor-BringIn: parts + labour, customer brings it in.PartsAndLabor-PickUp: parts + labour, warrantor collects the product.
Full example of schema.org/WarrantyPromise json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Offer",
"itemOffered": {
"@type": "Product",
"name": "XooScan 2D Wireless Barcode Scanner",
"sku": "XOO-SCAN-2D-WL",
"brand": { "@type": "Brand", "name": "XooStructured" }
},
"price": 189.00,
"priceCurrency": "USD",
"warranty": {
"@type": "WarrantyPromise",
"durationOfWarranty": { "@type": "QuantitativeValue", "value": 2, "unitCode": "ANN" },
"warrantyScope": "https://purl.org/goodrelations/v1#PartsAndLabor-BringIn"
}
}
</script>Where to attach it
WarrantyPromise lives on the Offer's warranty property (most common), on Vehicle.vehicleConfiguration.warranty, or on Demand.warranty when a buyer specifies required warranty terms.
Google's Product rich result does not consume WarrantyPromise directly, but it is a strong knowledge-graph signal and is used by manufacturer-portal aggregators, B2B procurement platforms, and AI shopping assistants.
Minimal valid version
The smallest markup that still produces a valid WarrantyPromise entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WarrantyPromise",
"durationOfWarranty": { "@type": "QuantitativeValue", "value": 2, "unitCode": "ANN" },
"warrantyScope": "https://purl.org/goodrelations/v1#PartsAndLabor-BringIn"
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsNo dedicated rich result (used by knowledge graphs and procurement portals)
Common WarrantyPromise mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
durationOfWarranty as plain number or ISO 8601 string
Wrong"durationOfWarranty": 2 or "durationOfWarranty": "P2Y"RightA QuantitativeValue with value and unitCode: { value: 2, unitCode: "ANN" }Plain numbers have no unit; ISO-8601 strings do not match the QuantitativeValue range schema.org expects.
- 02
warrantyScope as free text
Wrong"warrantyScope": "2 year parts and labor"RightThe GoodRelations enum URL https://purl.org/goodrelations/v1#PartsAndLabor-BringInwarrantyScope is a WarrantyScope enumeration; free text is ignored by consumers.
- 03
Attaching warranty to the Product instead of the Offer
WrongProduct.warrantyRightOffer.warranty (the warranty attaches to the sale, not the abstract product)Different Offers of the same Product can carry different warranties (retailer, refurbished, bundled). warranty belongs on the Offer.
Schema properties in this example
Also mentioned in 1 other example
WarrantyPromise also appears in SellAction. See the full WarrantyPromise schema page for every reference.
About the example data
XooStructured's branded wireless barcode scanner ships with a 2-year parts-and-labour warranty, customer ships the unit to the service centre.
Comments
Loading comments...