The Ultimate Demand
Schema Generator
A demand entity represents the public, not necessarily binding, not necessarily exclusive, announcement by an organization or person to seek a certain type of goods or services. For describing demand using this type, the very same properties used for Offer apply.
Magic Build
Paste your URL below and our AI will automatically fill the Demand fields for you.
Configuration
Live GeneratorWhy use Demand?
Output Panel
Want to automate this?
Connect your site to SchemaGen and our AI will automatically extract and deploy schemas for you. No manual coding required.
Launch AI GeneratorWhat is Demand Schema?
A demand entity represents the public, not necessarily binding, not necessarily exclusive, announcement by an organization or person to seek a certain type of goods or services. For describing demand using this type, the very same properties used for Offer apply.
Google uses Demand structured data to understand the content and context of your pages. When correctly implemented, this schema can unlock rich results in Google Search — enhancing your listing with additional information that dramatically improves visibility and click-through rates.
Why Add Demand Structured Data?
Appear in Rich Results
Structured data helps Google show enhanced results for your pages in search — including stars, prices, FAQs, and more.
Boost Click-Through Rate
Rich snippets can increase CTR by up to 30% compared to plain search results — more clicks with the same ranking.
Feed AI Search Engines
AI answer engines like Perplexity and Google SGE use structured data to verify and cite facts from your content.
How to Implement Demand JSON-LD
Generate
Use the form above to fill in your details and generate valid Demand JSON-LD markup in seconds.
Copy
Copy the generated JSON-LD output code with one click — it's already formatted and ready to deploy.
Deploy
Paste the code into your <head> tag, or use SchemaGen's SDK to deploy without touching code.
Want to skip steps 2 & 3? Connect SchemaGen's SDK to deploy directly from the dashboard.
Properties You Can Include
Demand schema supports the following schema.org properties. Required fields are the minimum Google needs to consider your markup valid; recommended fields unlock richer search result appearances.
| Property | Description | Expected Type | Status |
|---|---|---|---|
| acceptedPaymentMethod | The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. | LoanOrCredit, PaymentMethod, Text | Optional |
| additionalType | An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. Typically the value is a URI-identified RDF class, and in this case corresponds to the use of rdf:type in RDF. Text values can be used sparingly, for cases where useful information can be added without their being an appropriate schema to reference. In the case of text values, the class label should follow the schema.org style guide. | Text, URL | Optional |
| advanceBookingRequirement | The amount of time that is required between accepting the offer and the actual usage of the resource or service. | QuantitativeValue | Optional |
| alternateName | An alias for the item. | Text | Optional |
| areaServed | The geographic area where a service or offered item is provided. | AdministrativeArea, GeoShape, Place, Text | Optional |
| asin | An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. | Text, URL | Optional |
| availability | The availability of this item—for example In stock, Out of stock, Pre-order, etc. | ItemAvailability | Optional |
| availabilityEnds | The end of the availability of the product or service included in the offer. | Date, DateTime, Time | Optional |
| availabilityStarts | The beginning of the availability of the product or service included in the offer. | Date, DateTime, Time | Optional |
| availableAtOrFrom | The place(s) from which the offer can be obtained (e.g. store locations). | Place | Optional |
| availableDeliveryMethod | The delivery method(s) available for this offer. | DeliveryMethod | Optional |
| businessFunction | The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. | BusinessFunction | Optional |
| deliveryLeadTime | The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. | QuantitativeValue | Optional |
| description | A description of the item. | Text, TextObject | Optional |
| disambiguatingDescription | A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation. | Text | Optional |
| eligibleCustomerType | The type(s) of customers for which the given offer is valid. | BusinessEntityType | Optional |
| eligibleDuration | The duration for which the given offer is valid. | QuantitativeValue | Optional |
| eligibleQuantity | The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. | QuantitativeValue | Optional |
| eligibleRegion | The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.\n\nSee also ineligibleRegion. | GeoShape, Place, Text | Optional |
| eligibleTransactionVolume | The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. | PriceSpecification | Optional |
Example Demand JSON-LD
Here's what valid Demand structured data looks like with sample values filled in. Use the generator above to replace these with your own data.
{
"@context": "https://schema.org",
"@type": "Demand",
"name": "Example Demand",
"image": "https://example.com/images/example.jpg",
"url": "https://example.com/page",
"acceptedPaymentMethod": {
"@type": "LoanOrCredit",
"name": "Example LoanOrCredit",
"image": "https://example.com/images/example.jpg",
"url": "https://example.com/page"
},
"additionalType": "Example additionalType",
"advanceBookingRequirement": {
"@type": "QuantitativeValue",
"name": "Example QuantitativeValue",
"image": "https://example.com/images/example.jpg",
"url": "https://example.com/page"
},
"alternateName": "Example alternateName",
"areaServed": {
"@type": "AdministrativeArea",
"name": "Example AdministrativeArea",
"image": "https://example.com/images/example.jpg",
"url": "https://example.com/page"
}
}Validate Your Demand Schema
Once deployed, validate your schema is working correctly with our free audit tool. Paste your URL and we'll check for errors, missing properties, and Google Rich Result eligibility.
Check your Demand schema for errors and Rich Result eligibility