We use cookies for analytics and to serve ads. Accept to enable Google Analytics and AdSense. You can decline to stay opt-out.
Delivery/shipping/pickup policy pages with WebPage + OfferShippingDetails + MerchantReturnPolicy, FAQs, and breadcrumbs.
Declares the policy page and its description.
Describes shipping rates, destinations, and delivery windows.
Defines return policy details and fees.
Answers questions about cutoff times, tracking, and returns.
Provides navigation context to the policy page.
Ensure every applicable required property is present in your implementation. Nested props reference their parent objects (for example, `offers.priceCurrency`).
Paste as a single script tag. Keep product details, offer data, shipping/returns, and FAQ answers in sync with the page.
[
{
"@context": "https://schema.org",
"@type": "WebPage",
"@id": "https://www.example.com/shipping#page",
"name": "Delivery & Pickup Information",
"description": "Shipping rates, delivery times, and pickup policies.",
"url": "https://www.example.com/shipping",
"inLanguage": "en",
"dateModified": "2025-06-10"
},
{
"@context": "https://schema.org",
"@type": "OfferShippingDetails",
"@id": "https://www.example.com/shipping#standard",
"shippingLabel": "Standard Shipping",
"shippingRate": {
"@type": "MonetaryAmount",
"value": "6.99",
"currency": "USD"
},
"shippingDestination": {
"@type": "DefinedRegion",
"addressCountry": "US"
},
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": {
"@type": "QuantitativeValue",
"minValue": "1",
"maxValue": "2",
"unitCode": "d"
},
"transitTime": {
"@type": "QuantitativeValue",
"minValue": "3",
"maxValue": "5",
"unitCode": "d"
}
}
},
{
"@context": "https://schema.org",
"@type": "MerchantReturnPolicy",
"@id": "https://www.example.com/shipping#returns",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"merchantReturnDays": 30,
"returnMethod": "https://schema.org/ReturnByMail",
"returnFees": "https://schema.org/FreeReturn"
},
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is the order cutoff time?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Orders placed by 2 PM local time ship the same business day."
}
},
{
"@type": "Question",
"name": "Do you offer local pickup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. Local pickup is available at checkout for eligible items."
}
},
{
"@type": "Question",
"name": "How do returns work?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Start a return within 30 days and use the provided prepaid label."
}
}
]
},
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.example.com" },
{ "@type": "ListItem", "position": 2, "name": "Policies", "item": "https://www.example.com/policies" },
{ "@type": "ListItem", "position": 3, "name": "Delivery & Pickup", "item": "https://www.example.com/shipping" }
]
}
]Yes. Use one OfferShippingDetails per option (standard, expedited) with distinct @id values.
Include pickup details in the page content and, if applicable, add a separate OfferShippingDetails entry for pickup.