Schema Markup Generator

Generate JSON-LD schema markup for articles, FAQs, products, breadcrumbs, and more.

📐 How to Use

  1. Select the schema type from the dropdown.
  2. Fill in the fields for that schema type.
  3. Click Generate to produce the JSON-LD output.
  4. Copy the <script> block and paste it into your page's <head> or body.

🎯 When to Use This

  • Marking up an FAQ section you just wrote, where typing the nested Question and Answer objects by hand is where mistakes creep in.
  • Adding BreadcrumbList data to a category page whose on-screen breadcrumb has no machine-readable equivalent behind it.
  • Giving a developer a worked example of the JSON-LD shape for a type they have not used before, to adapt into a template.
  • Describing a single-location business once, with name, phone and address, for a contact page that has never carried structured data.

❓ Frequently Asked Questions

QWhat is schema markup?
Schema markup (structured data) is code that helps search engines understand the content and context of your page, enabling rich results like FAQ dropdowns, star ratings, and breadcrumbs in SERPs.
QWhat is JSON-LD?
JSON-LD (JavaScript Object Notation for Linked Data) is Google's preferred format for structured data. It's a <script> block placed in your HTML — no inline markup needed.
QHow do I test my schema?
Use Google's Rich Results Test (search.google.com/test/rich-results) or Schema.org Validator to check your markup for errors.

ℹ️ About This Tool

Structured data is a description of a page written for machines: a block of JSON-LD in a script tag that names a type from the schema.org vocabulary and lists its properties. Search engines read it to decide whether a page is eligible for a rich result, such as a breadcrumb trail or an expandable FAQ. Eligibility is not a guarantee, the markup has to match what the page visibly shows, and the engine still chooses what to display.

This generator builds six types: Article, FAQPage, Product, BreadcrumbList, LocalBusiness and WebSite. FAQ and breadcrumb entries are repeatable rows, product availability becomes a schema.org URL, and the WebSite type adds a SearchAction pointing at /?s={search_term_string}. The output is a complete script block with @context set to https://schema.org, printed with two-space indentation.

⚠️ Notes & Limits

  • The form covers the fields it shows and no others. Article has no image or dateModified, Product has no aggregateRating or sku, LocalBusiness has no opening hours.
  • Nothing is checked against Google's required and recommended property lists, so a block can be valid JSON-LD and still not qualify for any rich result.
  • The WebSite SearchAction assumes a WordPress-style /?s= search URL. If your search lives at /search?q=, edit the urlTemplate before using the block.
  • Text is inserted as entered, so an FAQ answer containing the characters </script> will close the block early. Strip that sequence out of pasted content.