← Toolz / SEO & Web / Schema Markup Generator

Schema Markup Generator

SEO·17

Pick a schema type, fill in the form, and copy the JSON-LD block into your page. The output updates live, is checked as valid JSON on every keystroke, and nothing you type is uploaded.

Questions & answers

Your JSON-LD

Test in Google Rich Results Test ↗

Generate valid JSON-LD schema markup for FAQ, Article, LocalBusiness, Product, HowTo, Breadcrumbs, Organization and WebSite pages.

100% free · No sign-up · No daily limits · No watermarks · Processed in your browser — files never leave your device

UNDERSTAND YOUR RESULTS

Schema Markup Generator — Valid JSON-LD Without Writing Code guide

Pick from eight schema types — FAQPage, Article, LocalBusiness, Product, HowTo, BreadcrumbList, Organization and WebSite — fill in a plain form, and copy ready-to-paste JSON-LD with live validation and required-field warnings.

How to use this tool

  1. Choose the schema type that matches your page from the dropdown. The form changes to show exactly the fields that type uses — FAQ shows repeatable question-and-answer pairs, BreadcrumbList numbers its positions automatically, Product adds price, currency and availability.
  2. Fill in the fields. Anything the type requires is flagged live under the form — for example a Product offer price must be a number, and an FAQ needs at least one complete question and answer before it is worth pasting anywhere.
  3. Watch the output update as you type: the script-block view is what you paste into your page, the raw JSON view is the same markup without the script tags, and the indicator under the form confirms the JSON parses cleanly.
  4. Copy the script block into your page (before </body> or in the <head> both work), or download the .json file. Then run the page through Google’s Rich Results Test — linked under the output — to see how Google itself reads it.

A worked example

A neighbourhood bakery adds FAQPage markup to its ordering page: “Do you deliver?” — “Yes, within 5 miles on orders over $25”, “Can I order a cake for the same day?” — “Order by 10 am…”. The generator emits a four-entity FAQPage block; pasted into the page and checked in the Rich Results Test, the questions become eligible to expand directly under the bakery’s search result, answering customers before they even click.

What you can do with this tool

How it works

The generator assembles JSON-LD exactly as schema.org defines each type — @context and @type first, nested objects (acceptedAnswer, PostalAddress, GeoCoordinates, Offer, AggregateRating) built only from fields you actually filled in, never emitted empty. Positions in BreadcrumbList and HowTo steps are numbered by the tool, repeatable groups keep their on-screen order, and every keystroke re-serialises and re-parses the result, so the block you copy is guaranteed to be valid JSON. Documented choice: a Product offers block is only emitted when the price is a valid number — an empty or non-numeric price raises a warning and leaves offers out rather than publishing markup Google would reject.

Frequently asked questions

Which schema type should I use for my page?

Match the type to what the page visibly is: a page with questions and answers takes FAQPage, a product page takes Product, a how-to article takes HowTo, a local business’s contact or home page takes LocalBusiness, and almost every site benefits from Organization and BreadcrumbList. Using a type the page does not match — Product on a blog post, say — is worse than no markup.

Where do I paste the JSON-LD block?

Anywhere in the page’s HTML — in the <head> or just before </body> are the conventional spots. In WordPress, use your SEO plugin’s custom schema field or a reusable block; in a hand-built site, paste it straight into the template. One block per type per page is fine, and several types can coexist on one page.

Why does the Product offers block disappear when I clear the price?

By design: an Offer without a valid numeric price is invalid markup that Google would flag or ignore, so the tool warns you and omits the offers block until a real price is entered. The rest of the Product (name, brand, SKU, rating) still generates normally.

Does schema markup improve my rankings?

Not directly — it is not a ranking factor. What it does is make your existing content eligible for richer presentation (stars, prices, FAQ expansions, breadcrumb trails instead of bare URLs), which can raise click-through from the position you already hold, and it removes ambiguity for search engines and AI assistants reading the page.

How do I check the markup after pasting it?

Use the “Test in Google Rich Results Test” link under the output: paste your live URL (or the code snippet) and Google reports which enhancements it detected and any errors in the values — things a JSON validator cannot judge, like an implausible date or a rating out of range.

Can I put two schema types on one page?

Yes — generate each type here separately and paste both blocks, or combine them in one script using an @graph array. Common pairings: Article + BreadcrumbList on a blog post, LocalBusiness + WebSite on a small business homepage.