What is schema markup?
Schema markup is structured data written with the schema.org vocabulary that describes what a page is about in a machine-readable way — an event with a date and venue, a recipe with ingredients and cooking time, a company with its logo and social profiles. Google recommends adding it as JSON-LD: a <script type="application/ld+json"> block that sits alongside your HTML instead of being woven into it.
Search engines use structured data to understand pages and to decide whether they are eligible for rich results such as breadcrumbs, event listings, recipe cards, product snippets or video key moments. Eligibility is never guaranteed: Google decides whether to show a rich result based on quality, relevance and its own policies, and the markup must describe content that is visible on the page.
This generator covers ten common types. Each form marks the properties Google documents as required or recommended, the JSON-LD updates as you type, and a validation summary lists what is missing or malformed — URLs, dates, currencies, GTINs and ratings are checked before you copy anything.
How to use the Schema Markup Generator
- Choose a schema type. Click Sample to see a complete example for that type.
- Fill in the required fields first, then as many recommended fields as apply to your page.
- For events and videos, check the time zone offset so dates are output as full ISO 8601 date-times.
- Fix anything listed in the validation summary, then copy the JSON-LD as a
<script>tag or raw JSON. - Paste it into the page and test the live URL with the Rich Results Test and the Schema Markup Validator.
Example
A BreadcrumbList for a book category page:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com/" },
{ "@type": "ListItem", "position": 2, "name": "Books", "item": "https://example.com/books/" },
{ "@type": "ListItem", "position": 3, "name": "Science Fiction" }
]
}
</script>Supported types and rich result status (2026)
- Organization and WebSite — no rich result card, but help Google pick your logo, knowledge panel details and site name. Google retired the sitelinks search box in November 2024, so SearchAction is optional.
- BreadcrumbList — breadcrumb trails in results (on desktop; mobile results show the domain instead).
- Event, Recipe, VideoObject and Product — eligible for their respective rich result features when Google’s guidelines are met.
- SoftwareApplication — app rich results need a price and a rating or review.
- Course — the Course info rich result was phased out in 2025; course list markup is still documented, and the data remains useful to other consumers.
- Person — no standalone rich result; use it for authors or inside ProfilePage on profile pages.
- For FAQ, article and local business markup use the dedicated FAQ Schema Generator, Article Schema Generator and Local Business Schema Generator. WooCommerce stores can use the WooCommerce Product Schema Generator. HowTo rich results were removed by Google in 2023.
Adding JSON-LD in WordPress
Paste the script tag into a Custom HTML block on the relevant page, or print it from your theme with the wp_head hook only on the pages it describes. Most SEO plugins already output Organization, WebSite and BreadcrumbList markup — view the page source first, and avoid publishing two conflicting objects for the same entity.
Frequently Asked Questions
Does schema markup improve rankings?
Structured data is not a direct ranking factor. It helps search engines understand the page and can make it eligible for rich results, which may improve how the result looks and how often it is clicked.
Why don’t I see rich results after adding markup?
Valid markup only makes a page eligible. Google may not show a rich result because of quality, the query, the device, a manual action, or because the feature is limited or retired. Check the page in the Rich Results Test and the Enhancements reports in Search Console.
Should I use JSON-LD, Microdata or RDFa?
Google supports all three but recommends JSON-LD because it is easiest to add and maintain. All output from this tool is JSON-LD.
Can a page have several schema types?
Yes. A product page might include Product, BreadcrumbList and Organization. Add each as its own script block, or combine them in an @graph. Make sure each describes content actually on the page.
What do “required” and “recommended” mean?
They follow Google’s structured data documentation: required properties must be present for a rich result to be possible; recommended properties add information and can improve how the result appears. Schema.org itself has no required properties.