Schema Generator
Select a schema.org type, fill in the fields, and get a copy-paste-ready JSON-LD block for your page's <head>. Covers the structured data types Google uses most often for rich results.
Last updated: July 10, 2026
Find this tool useful? Support the project to keep it free!
Buy me a coffeeWhat is Schema Generator?
Schema markup (also called structured data) is a standardized vocabulary, defined at schema.org, that describes the content on a page in a way search engines can parse unambiguously. Google, Bing, and other engines use it to power rich results — star ratings under a product link, an expandable FAQ dropdown directly in search results, a recipe card with cook time and calories, or a breadcrumb trail instead of a raw URL.
JSON-LD is the recommended format for implementing schema markup: a single <script type="application/ld+json"> block placed anywhere in the page, containing a JSON object that describes the entity (an Article, a Product, a LocalBusiness, and so on) using schema.org's shared property names. Unlike microdata or RDFa, JSON-LD doesn't require annotating your visible HTML, so it can be added or changed without touching page layout.
This tool builds that JSON-LD block for 15 of the most common schema.org types directly in your browser — no data leaves your machine.
How to Use Schema Generator
Choose the schema type that matches your content (Article, FAQPage, Product, LocalBusiness, etc.)
Fill in the fields shown — required fields vary by type, but leaving a field blank simply omits it from the output
For FAQ, HowTo, Recipe steps, and Breadcrumb, use "Add" to create as many repeating items as you need
Copy the generated <script type="application/ld+json"> block
Paste it into your page's <head>, or anywhere in the <body> — search engines parse it regardless of position
Validate the result with Google's Rich Results Test before publishing
Common Use Cases
- Adding FAQPage markup to a support or pricing page so questions appear as expandable rich results
- Marking up blog posts with Article schema for author, publish date, and featured image eligibility
- Adding Product schema with price and rating so listings show stars and price directly in search results
- Generating LocalBusiness markup with address and hours for local pack and Maps visibility
- Building HowTo markup for tutorial content to enable step-by-step rich results
- Adding BreadcrumbList markup so search results show a navigation path instead of a raw URL
- Marking up Recipe pages with cook time, ingredients, and ratings for recipe rich results
- Adding Event schema for a concert, webinar, or conference listing with date, venue, and ticket info
Example Input and Output
FAQPage JSON-LD generated from two questions — copy this block into your HTML <head>:
Q: What is schema markup?
A: Schema markup is structured data that helps search engines understand page content.
Q: Does schema markup improve rankings?
A: Not directly, but it makes pages eligible for rich results, which can improve click-through rate.<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is schema markup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Schema markup is structured data that helps search engines understand page content."
}
},
{
"@type": "Question",
"name": "Does schema markup improve rankings?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Not directly, but it makes pages eligible for rich results, which can improve click-through rate."
}
}
]
}
</script>How This Tool Works
Each schema.org type is modeled as a list of form fields mapped to schema.org properties. Filling the form builds a plain JavaScript object matching the JSON-LD spec for that type, then JSON.stringify serializes it into the final <script type="application/ld+json"> block. Repeatable sections (FAQ questions, HowTo/Recipe steps, breadcrumb items) are stored as arrays and rendered into the corresponding schema.org array properties (mainEntity, step, itemListElement). All generation happens in the browser.
Technical Stack
Client-Side Only
All JSON-LD is generated locally in your browser from the fields you type. Nothing is sent to our servers.
Blank Fields Are Omitted
Leaving a field empty simply removes that property from the JSON-LD output rather than emitting an empty string — this keeps the markup valid and avoids Rich Results Test warnings about empty values.
ISO 8601 for Durations and Dates
Fields like totalTime, prepTime, and duration expect ISO 8601 duration format (e.g. PT30M for 30 minutes, PT1H15M for 1 hour 15 minutes). Date fields expect ISO 8601 date or date-time strings (e.g. 2026-07-10 or 2026-07-10T19:00).

